1.如果页面时jsp就非常简单了,直至用EL表达式从session中取值
jsp页面直接${user.login_name}的方式取值就可以了
2.如何设计的页面是html静态页面,不是jsp动态页面,那么EL表达式就会失效。
方法一:这个时候可以在前端把登录成功的登录名存入session中,这样可以跨页面取值
在login.html页面前端设置session的值,在登录成功后的首页index.html中,去出session中的登录名即可。
方法二:你也可以通过链接拼接参数的get请求方式,向指定的页面传值
这样在index.html页面中用字符串分割的方法取出传入的参数值。但是这种通过拼接参数形式的get请求方式,如果传入的参数是中文会造成了乱码现象。其次可能会造成用户地址栏的非法访问。可以如下解决
安全问题主要是判断手动在地址栏中修改的用户名是否与登录成功后存入session中的用户名一致,如果不一致则表明非法访问,返回安全退出登录页,销毁session。
造成非法访问的原因: 登录成功后,把登录成功的用户存入session中,session中的user对象不为空。在已经进入首页后,因为session存在值,在springmvc拦截器中就拦截不到。用户可以直接在登录成功后的地址栏中修改用户名,去访问其他用户的主页面。所以需要判断修改的用户名是否与原本登录成功存入session中的用户名一样