Advertisement
Guest User

Untitled

a guest
Dec 19th, 2016
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.57 KB | None | 0 0
  1. import javax.servlet.*;
  2. import javax.servlet.http.HttpServletRequest;
  3. import javax.servlet.http.HttpServletResponse;
  4. import javax.servlet.http.HttpSession;
  5. import java.io.IOException;
  6. import java.util.Arrays;
  7. import java.util.List;
  8.  
  9. /**
  10. * Created by Artur on 11.12.2016.
  11. */
  12. public class AuthFilter implements Filter {
  13. private List<String> pathFilter= Arrays.asList(new String[]{"add","welcome"});
  14. public AuthFilter(){}
  15. public void init(FilterConfig filterConfig) throws ServletException {
  16.  
  17. }
  18.  
  19. public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) throws IOException, ServletException {
  20. String uri=((HttpServletRequest)request).getRequestURI();
  21. String path=uri.substring(uri.lastIndexOf("/"));
  22. if (pathFilter.contains(path)){filterChain.doFilter(request,response);
  23. return;
  24. }
  25. HttpSession session=((HttpServletRequest)request).getSession();
  26. User user=(User)session.getAttribute("PRINCIPAL");
  27. if (user!=null){filterChain.doFilter(request,response);
  28. return;
  29. }
  30. ((HttpServletResponse)response).sendRedirect("login.jsp?login=invalid");
  31.  
  32. }
  33.  
  34. public void destroy() {
  35.  
  36. }
  37. }
  38.  
  39. <?xml version="1.0" encoding="UTF-8"?>
  40. <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
  41. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  42. xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
  43. version="3.1">
  44. <servlet>
  45. <servlet-name>welcome</servlet-name>
  46. <servlet-class>HomeServlet</servlet-class>
  47. </servlet>
  48. <servlet-mapping>
  49. <servlet-name>welcome</servlet-name>
  50. <url-pattern>/welcome</url-pattern>
  51. </servlet-mapping>
  52. <servlet>
  53. <servlet-name>login</servlet-name>
  54. <servlet-class>LoginServlet</servlet-class>
  55. </servlet>
  56. <servlet-mapping>
  57. <servlet-name>login</servlet-name>
  58. <url-pattern>/login</url-pattern>
  59. </servlet-mapping>
  60. <servlet>
  61. <servlet-name>sign-up</servlet-name>
  62. <servlet-class>checkin</servlet-class>
  63. </servlet>
  64. <servlet-mapping>
  65. <servlet-name>sign-up</servlet-name>
  66. <url-pattern>/sign-up</url-pattern>
  67. </servlet-mapping>
  68. <servlet>
  69. <servlet-name>logout</servlet-name>
  70. <servlet-class>LogoutServlet</servlet-class>
  71. </servlet>
  72. <servlet-mapping>
  73. <servlet-name>logout</servlet-name>
  74. <url-pattern>/logout</url-pattern>
  75. </servlet-mapping>
  76. <filter>
  77. <filter-name>authFilter</filter-name>
  78. <filter-class>AuthFilter</filter-class>
  79. </filter>
  80. <filter-mapping>
  81. <filter-name>authFilter</filter-name>
  82. <url-pattern>/**</url-pattern>
  83. </filter-mapping>
  84. </web-app>
  85.  
  86.  
  87. <%--
  88. Created by IntelliJ IDEA.
  89. User: Artur
  90. Date: 11.12.2016
  91. Time: 14:33
  92. To change this template use File | Settings | File Templates.
  93. --%>
  94. <%@ page contentType="text/html;charset=UTF-8" language="java" %>
  95. <html>
  96. <head>
  97. <title>Title</title>
  98. </head>
  99. <body>
  100. ${day} ${user}
  101.  
  102. <button>выйти</button>
  103. </body>
  104. </html>
  105.  
  106. </body>
  107. </html>
  108.  
  109. import javax.servlet.RequestDispatcher;
  110. import javax.servlet.ServletException;
  111. import javax.servlet.http.HttpServlet;
  112. import javax.servlet.http.HttpServletRequest;
  113. import javax.servlet.http.HttpServletResponse;
  114. import javax.servlet.http.HttpSession;
  115. import java.io.IOException;
  116.  
  117. /**
  118. * Created by Artur on 11.12.2016.
  119. */
  120. public class LoginServlet extends HttpServlet {
  121. private Datasource userDatasource;
  122. public LoginServlet(){
  123. userDatasource=new Datasource();
  124. }
  125. @Override
  126. protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  127. HttpSession session=req.getSession();
  128. String username = req.getParameter("username");
  129. String password = req.getParameter("password");
  130.  
  131. if(username!=null&&password!=null) {
  132. User user = userDatasource.getByUsernameAndPassword(username, password);
  133. System.out.println(user.getUsername());
  134. System.out.println(user.getPassword());
  135. if (user != null) {
  136. session.setAttribute("PRINCIPAL", user);
  137. resp.sendRedirect("/welcome");
  138. return;
  139. }
  140. }
  141. resp.sendRedirect("login.jsp?loginopassword=invalid");
  142. }
  143. }
  144.  
  145. import javax.servlet.RequestDispatcher;
  146. import javax.servlet.ServletException;
  147. import javax.servlet.http.HttpServlet;
  148. import javax.servlet.http.HttpServletRequest;
  149. import javax.servlet.http.HttpServletResponse;
  150. import javax.servlet.http.HttpSession;
  151. import java.io.IOException;
  152. /**
  153. * Created by Artur on 11.12.2016.
  154. */
  155. public class HomeServlet extends HttpServlet {
  156.  
  157. @Override
  158. protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  159. HttpSession session=req.getSession();
  160. session.setAttribute("",2345);
  161. TimeDay objectTime=new TimeDay();
  162. String time=objectTime.getTime();
  163. req.setAttribute("day",time);
  164. Object userObject=session.getAttribute("PRINCIPAL");
  165. User user=(User)userObject;
  166.  
  167. System.out.println(user.getFirstname());
  168. req.setAttribute("user",user.getFirstname());
  169. RequestDispatcher requestDispatcher=getServletContext().getRequestDispatcher("/home.jsp");
  170. requestDispatcher.forward(req,resp);
  171. }
  172.  
  173. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement