互联网金融项目——工作日志(一)

1.session的使用

取值:

CustUseruser = (CustUser)session.getAttribute(Constants.USER);

赋值:

//存储的信息被全局共享,从Tomcat启动的时候开始记录,从Tomcat结束的时候终止。

session.getServletContext().setAttribute(custUser.getUserName(),loginTime);

//简单Session的增删改查

session.setAttribute(Constants.USER,custUser);

 

查找的资料:

上下文即ServletContext,是一个全局的储存信息的空间,服务器启动,其就存在,服务器关闭,其才释放。所有用户共用一个ServletContext。所以,为了节省空间,提高效率,ServletContext中,要放必须的、重要的、所有用户需要共享的线程又是安全的 一些信息。

所谓上下文,它是用来存储系统的一些初始化信息。


2.ModelMaprequest.setAttribute

作用:用于传递控制方法处理数据到结果页面,用于一个请求过程中传递处理的数据。

区别优先级:Model和ModelMap是同一个东西,谁最后赋值的就取谁的,然后是request,最后是从session中获取

 

3.forwardredirect的区别

Servlet:

forward方式:request.getRequestDispatcher("/somePage.jsp").forward(request,response);

redirect方式:response.sendRedirect("/somePage.jsp");

 

SpringMVC

return "redirect:/hello";

 return "forward:/hello"

forward

浏览器地址栏中不会显示出转向后的地址,不会改变Request的值,如果需要再下一个页面中能获取新的信息,可以通过Reuqest.setAttribute()放置一些信息,从下一个页面获取。

个人理解:服务器内部重定向,页面去一个别的地方了,但是却显示给你的地址没有变。共享上一个页面数据。

优势:效率高,发一次request,隐藏真实地址

redirect

浏览器会跳转到相应的地址,并重写发送请求连接。

个人理解:重写开启一个新页面,表里如一。不能共享数据。

优势:Redirect能够防止某些情况下客户端Refresh造成的一些未知后果(未验证)


你可能感兴趣的:(项目经验)