Advertisement
Guest User

huju

a guest
Apr 3rd, 2017
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.00 KB | None | 0 0
  1. ///my servlet
  2. /*
  3. * To change this license header, choose License Headers in Project Properties.
  4. * To change this template file, choose Tools | Templates
  5. * and open the template in the editor.
  6. */
  7.  
  8. import java.io.IOException;
  9. import java.io.PrintWriter;
  10. import javax.servlet.ServletException;
  11. import javax.servlet.http.Cookie;
  12. import javax.servlet.http.HttpServlet;
  13. import javax.servlet.http.HttpServletRequest;
  14. import javax.servlet.http.HttpServletResponse;
  15. import javax.servlet.http.HttpSession;
  16.  
  17. /**
  18. *
  19. * @author student_5
  20. */
  21.  
  22. public class MyServlet extends HttpServlet {
  23.  
  24. /**
  25. * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
  26. * methods.
  27. *
  28. * @param request servlet request
  29. * @param response servlet response
  30. * @throws ServletException if a servlet-specific error occurs
  31. * @throws IOException if an I/O error occurs
  32. */
  33. protected void processRequest(HttpServletRequest request, HttpServletResponse response)
  34. throws ServletException, IOException {
  35. response.setContentType("text/html;charset=UTF-8");
  36. try (PrintWriter out = response.getWriter()) {
  37. /* TODO output your page here. You may use following sample code. */
  38. Cookie[] cookies = request.getCookies();
  39. Cookie licznik=null;
  40.  
  41. if (cookies!=null) {
  42. for (int i=0; i<cookies.length;i++) {
  43. if (cookies[i].getName().equals("licznik")) {
  44. licznik=cookies[i];
  45. break;
  46. }
  47. }
  48. }
  49. if (licznik==null) {
  50. licznik = new Cookie("licznik","0");
  51. } else {
  52. Integer v = Integer.parseInt(licznik.getValue());
  53. v++;
  54. licznik.setValue(v+"");
  55. }
  56.  
  57. licznik.setMaxAge(-1);
  58. response.addCookie(licznik);
  59. out.println(licznik.getValue());
  60.  
  61. out.println("<!DOCTYPE html>");
  62. out.println("<html>");
  63. out.println("<head>");
  64. out.println("<title>Servlet MyServlet</title>");
  65. out.println("</head>");
  66. out.println("<body>");
  67. //Pobierz obiekt sesji,bad zutworz jesli go nie ma
  68. HttpSession session = request.getSession(true);
  69. // Pobierz z sesji obiekt oznaczony etykieta zalogowany
  70. Boolean loggedIn = (Boolean)session.getAttribute("log");
  71.  
  72. String action = request.getParameter("akcja");
  73.  
  74. if (action != null){
  75. if(action.equals("Wyloguj")){
  76. Boolean war = false;
  77. session.setAttribute("log", war);
  78. }
  79. }
  80.  
  81. //Jezeli w sesji nie bylo informacji o tym ze ktos
  82. // zostal zalgowoany
  83. if (loggedIn == null)
  84. loggedIn = false;
  85.  
  86. if (loggedIn == true){
  87. out.println("<h1>ZALOGOWANO</h1>");
  88. out.println("<form method=\"post\">");
  89. out.println("<input type=\"hidden\" name=\"akcja\" value=\"Wyloguj\" \\>");
  90. out.println("<input type=\"submit\" value=\"Wyloguj\" \\>");
  91. out.println("</form>");
  92. }
  93. else
  94. { // uzytkownik nie zostal zalogowany
  95. out.println("<form method=\"post\">");
  96. out.println("Login: <input type=\"text\" name=\"user\">");
  97. out.println("Password: <input type=\"password\" name=\"pass\">");
  98. out.println("<input type=\"submit\" value=\"zaloguj\">");
  99. out.println("</form>");
  100.  
  101. String user;
  102. String pass;
  103. user = request.getParameter("user");
  104. pass = request.getParameter("pass");
  105.  
  106. if (user != null && pass != null){
  107. // uzytkownik probuje sie zalogowac
  108. if (user.equals("123") && pass.equals("123")){
  109. loggedIn = true;
  110. session.setAttribute("log", loggedIn);
  111. }
  112. }
  113.  
  114. }
  115. out.println("</body>");
  116. out.println("</html>");
  117. }
  118. }
  119.  
  120. // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
  121. /**
  122. * Handles the HTTP <code>GET</code> method.
  123. *
  124. * @param request servlet request
  125. * @param response servlet response
  126. * @throws ServletException if a servlet-specific error occurs
  127. * @throws IOException if an I/O error occurs
  128. */
  129. @Override
  130. protected void doGet(HttpServletRequest request, HttpServletResponse response)
  131. throws ServletException, IOException {
  132. processRequest(request, response);
  133. }
  134.  
  135. /**
  136. * Handles the HTTP <code>POST</code> method.
  137. *
  138. * @param request servlet request
  139. * @param response servlet response
  140. * @throws ServletException if a servlet-specific error occurs
  141. * @throws IOException if an I/O error occurs
  142. */
  143. @Override
  144. protected void doPost(HttpServletRequest request, HttpServletResponse response)
  145. throws ServletException, IOException {
  146. processRequest(request, response);
  147. }
  148.  
  149. /**
  150. * Returns a short description of the servlet.
  151. *
  152. * @return a String containing servlet description
  153. */
  154. @Override
  155. public String getServletInfo() {
  156. return "Short description";
  157. }// </editor-fold>
  158.  
  159. }
  160. ////////////index.html
  161. <!DOCTYPE html>
  162. <!--
  163. To change this license header, choose License Headers in Project Properties.
  164. To change this template file, choose Tools | Templates
  165. and open the template in the editor.
  166. -->
  167. <html>
  168. <head>
  169. <title>TODO supply a title</title>
  170. <meta charset="UTF-8">
  171. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  172. </head>
  173. <body>
  174. <h4>Click here to go to <a href="hello">MyServlet Page</a></h4>
  175. </body>
  176. </html>
  177. /////web.xml
  178. <?xml version="1.0" encoding="UTF-8"?>
  179. <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
  180. <servlet>
  181. <servlet-name>hello</servlet-name>
  182. <servlet-class>MyServlet</servlet-class>
  183. </servlet>
  184. <servlet-mapping>
  185. <servlet-name>hello</servlet-name>
  186. <url-pattern>/hello</url-pattern>
  187. </servlet-mapping>
  188. <welcome-file-list>
  189. <welcome-file>
  190. index.html
  191. </welcome-file>
  192. </welcome-file-list>
  193. <session-config>
  194. <session-timeout>
  195. 30
  196. </session-timeout>
  197. </session-config>
  198. </web-app>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement