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

request.getSession().setAttribute("regUser", u); <jsp:useBean id="regUser" class="entity.Users" scope="session"/>两者关系

request.getSession().setAttribute("regUser", u);
<jsp:useBean id="regUser" class="entity.Users" scope="session"/>
这两者之间有什么关系吗?
为什么在<jsp:useBean>中实例的regUser就是session中的实例regUser。而且就能直接调用。
<jsp:useBean>中实例的regUser里面的内容不应该直接为空吗?

正在回答

2 回答

request.getSession().setAttribute("regUser", u);

向session 域 中存放一个user对象 这个对象代号为regUser  重点理解"域"这个字的含义

<jsp:useBean id="regUser" class="entity.Users" scope="session"/>等价于request.get

实例化一个Users对象 从作用范围scope="session"中寻找代号为id="regUser"这个的对象

class="entity.Users"是user这个bean的地址   通过这样的方式就可以拿到user的对象u了 

简化了操作(以往拿到对象 还要在jsp页面写java脚本 通过导包 new user() 的方式)

这两者之间有什么关系吗?

关系就是你往域里存东西  我从域里拿东西


为什么在<jsp:useBean>中实例的regUser就是session中的实例regUser。而且就能直接调用。
<jsp:useBean>中实例的regUser里面的内容不应该直接为空吗?

 因为我们session里存的就是user对象 这样就可以找到啊

不理解的话可以百度看看servlet的四大作用域 page request session application 作用域范围依次递增

1 回复 有任何疑惑可以回复我~
#1

0110号建筑师

这个页面不是又用<jsp:useBean>中实例化了一个对象regUser吗?可以去掉userinfo页面的这个<jsp:useBean>动作吗?既然已经在session里存了reguser对象?直接用<jsp:getproperty>来获得各个属性?
2017-05-15 回复 有任何疑惑可以回复我~

<jsp:useBean> 指的是创建一个Bean实例并指定它的名字和作用范围;<jsp:useBean>用于定位或示例一个JavaBeans组件。<jsp:useBean>首先会试图定位一个Bean实例,如果这个Bean不存在,那么<jsp:useBean>就会从一个class或模版中进行示例;因为指定作用范围是session;

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

request.getSession().setAttribute("regUser", u); <jsp:useBean id="regUser" class="entity.Users" scope="session"/>两者关系

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信