请问这段代码是什么意思?完全没听懂,一直在敲自己的代码
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
User user=(User)((HttpServletRequest)servletRequest).getSession().getAttribute("user");
servletRequest.setAttribute("user",user);
filterChain.doFilter(servletRequest,servletResponse);
}
原谅我,我是新手,在项目讲解的时候应该详尽的说一下为什么,重复强调一下过去的知识点,才好让人理解。
不然我们得自己花很长时间去摸索。如果是这样的话,看这些课程的意义也荡然无存!
正在回答 回答被采纳积分+1
你好!这个是过滤器的常用知识点,所以再这里老师没有重点强调。
User user=(User)((HttpServletRequest)servletRequest).getSession().getAttribute("user");这行代码是从session中获取user对象
servletRequest.setAttribute("user",user);这段代码是将获取到的user对象存储到request中,便于后面进行转发
filterChain.doFilter(servletRequest, servletResponse);这行代码相当于过滤器放行,继续执行后面的代码。比如过滤器对所有.do的路径进行过滤,那么执行.do路径对应的代码前,会先执行Filter中的代码,如果不符合要求就会进行各种跳转,如果执行到当前这行代码就会继续执行.do对应的内容。
建议同学再巩固一下过滤器的相关知识。
祝学习愉快!
- 参与学习 人
- 提交作业 277 份
- 解答问题 4297 个
Java数据库开发的必备技能,从流行的MySQL数据库开始,到Java原生的数据库管理接口JDBC的使用,再到常用的数据持久化框架MyBatis,让你向Java工程师的目标又迈进了一步!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星