为了账号安全,请及时绑定邮箱和手机立即绑定

Java Web开发技术应用——过滤器

难度初级
时长 1小时40分
学习人数
综合评分9.53
339人评价 查看评价
9.8 内容实用
9.5 简洁易懂
9.3 逻辑清晰
  • 004
    查看全部
  • 003
    查看全部
  • 002
    查看全部
  • 001
    查看全部
  • 4种过滤器
    查看全部
  • 案例部分,等等学完annotation之后再来学
    查看全部
    0 采集 收起 来源:编码转换案例

    2016-06-14

  • 过滤器的分类
    查看全部
    0 采集 收起 来源:总结

    2016-06-11

  • Filter
    查看全部
    0 采集 收起 来源:总结

    2016-06-11

  • 过滤器的工作原理
    查看全部
    0 采集 收起 来源:总结

    2016-06-11

  • @login.jsp <form action="<%=request.getContextPath()%>/servlet/LoginServlet" method="post"> 用户名:<input type="text" name="username" /> 密码:<input type="password" name="password" /> <input type="submit" value="提交" /> </form> @编码设置,LoginFilter.java ...String noLoginPaths = config.getInitParameter("noLoginPaths"); String charset=config.getInitParameter("charset"); if(charset==null){//如果不设置,默认UTF-8 charset="UTF-8"; } request.setCharacterEncoding(charset); if (noLoginPaths != null) {... @LoginServlet.java public void doPost(HttpServletRequest request, HttpServletResponse response) { String username=request.getParameter("username"); String password=request.getParameter("password"); if("admin".equals(username)&&".".equals(password)){ //校验成功 HttpSession session=request.getSession(); session.setAttribute("username", username); response.sendRedirect(request.getContextPath()+"/success.jsp"); }else{ //校验失败 //同上..."/fail.jsp"; } }
    查看全部
    0 采集 收起 来源:编码转换案例

    2018-03-22

  • @登录校验 @LoginFilter.java public class LoginFilter implements Filter { private FilterConfig config; public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) { HttpServletRequest request = (HttpServletRequest) arg0; //response同理 HttpSession session = request.getSession(); String noLoginPaths = config.getInitParameter("noLoginPaths"); if (noLoginPaths != null) { String[] strArray = noLoginPaths.split(";"); for (int i = 0; i < strArray.length; i++) { if (strArray[i] == null || "".equals(strArray[i])) { continue; } if (request.getRequestURI().indexOf(strArray[i]) != -1) { arg2.doFilter(arg0, arg1); return; } } } if(session.getAttribute("username")!=null){ arg2.doFilter(arg0, arg1); }else{ response.sendRedirect("login.jsp"); } } public void init(FilterConfig arg0){ config = arg0; } }
    查看全部
    0 采集 收起 来源:编码转换案例

    2018-03-22

  • 在web.xml中配置charset 为 UTF8,然后在过滤文件中设置类型为UTF-8 @web.xml <servlet> <servlet-name>LoginServlet</servlet-name> <servlet-class>com.imooc.servlet.LoginServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>LoginServlet</servlet-name> <url-pattern>/servlet/LoginServlet</url-pattern> </servlet-mapping> <filter> <filter-name>LoginFilter</filter-name> <filter-class>com.imooc.filter.LoginFilter</filter-class> <init-param> <param-name>noLoginPaths</param-name> <param-value>fail.jsp;login.jsp;LoginServlet</param-value> </init-param> <init-param> <param-name>charset</param-name> <param-value>utf-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>LoginFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
    查看全部
    0 采集 收起 来源:编码转换案例

    2018-03-22

  • 过滤器实现对用户统一认证<br><br> 1:创建一个Web项目——创建对应的目录结构,导入对应的依赖<br> 2:创建登录的页面<br> 3:创建一个处理登录的Servlet——处理登录页面的登录请求,比对一下用户输入的用户名和密码是否一致,并作对应的处理<br> 4:部署项目、启动应用、结合浏览器调试、测试,发现通过URL地址就能访问对应的页面,这样是不合适不安全的,所以,就需要过滤器了<br> 5:创建过滤器——统一认证用户是否已经登录,其中经过分析实验,发现不过滤的请求路径还是挺多的,所以,就引出了FilterConfig这个类的使用,统一配置不过滤的请求路径,采用集合的方式也是一样的道理,实际开发中中我就曾经使用过数据的方式来实现<br> 6:继续结合浏览器,进行调试、测试、完善等工作。
    查看全部
    1 采集 收起 来源:登录案例

    2018-03-22

  • 过滤器实际使用场景
    查看全部
    0 采集 收起 来源:登录案例

    2016-06-11

  • @AsyncServlet.java public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("Servlet执行开始时间:"+new Date()); AsyncContext context = request.getAsyncContext(); new Thread(new Executor(context)).start(); System.out.println("Servlet执行结束时间:"+new Date()); } public class Executor implements Runnable { private AsyncContext context; public Executor(AsyncContext context) { this.context = context; } public void run() { // 执行相关复杂业务 try { Thread.sleep(1000 * 10); // context.getRequest(); // context.getResponse(); System.out.println("业务执行完成时间:" + new Date()); } catch (InterruptedException e) { e.printStackTrace(); } } } @输出结果: Start——AsyncFilter Servlet执行开始时间:Sat Mar 12 15:40:26 CST 2016 Servlet执行结束时间:Sat Mar 12 15:40:26 CST 2016 End——AsyncFilter 业务执行完成时间:Sat Mar 12 15:40:36 CST 2016
    查看全部

举报

0/150
提交
取消
课程须知
童鞋们,过滤器是Java Web开发的内容。学习前需要掌握Java基础知识、并熟悉JSP和Servlet。如未学习上述知识,可移步网站相关课程。
老师告诉你能学到什么?
通过本课程的学习,你可以了解过滤器的基础知识,并可以自己动手编写过滤器。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!