2.0.SpringMVC

一.SpringMVC常用注释

1.http://swengineer.iteye.com/blog/1103748

2.http://blog.csdn.net/truong/article/details/17298249


二.spring mvc与struts的区别

1.http://blog.csdn.net/generalyy0/article/details/7003974

2.Spring 中默认设置Bean为单例,Struts2本身action类是多例,此设计的原因在于本身action担任了数据载体,如果做成单例,则会便多用户数据受到影响但是当Struts2 与Spring整合时,Struts2的Action交由spring来管理时,spring默认将struts2的action以单例管理,此时必须手工设置为多例,否则,后果将会很严重。
a.因为一般我们在一个Action中接受一个实体bean,这个实体是成员实例变量,它的值会根据页面传值发生改变,就有问题了
(http://tenbamboo.aliapp.com/blogContent.jsp?blogId=b6f90b3c-8f3e-4336-a151-0df32e41531e&anchor=false)
b.解决方法(多实例对象):
(http://zfwdl2005.iteye.com/blog/1788873)或者
(http://blog.163.com/tonylee@188/blog/static/2679124520077162374435/,http://flysnow.iteye.com/blog/733785)

3.SpringMVC较ssh就不会有这种问题,因为虽然Controller是单例,但是实体bean在每个方法中,为局部变量,所以不会有a问题了,此时虽然service是成员实例变量,但是它只承担读取的作用,并没有改变它的值,所以也是相对安全的。
a.但是不管ssh和SpringMVC,我们不得不考虑另一个问题,是否多线程安全(包括共享变量安全和方法同步安全),这也和上边问题相连接,当多个用户同时操作某个页面,这多线程安全怎么考虑:如下都可以解决(http://www.xuebuyuan.com/1628190.html,http://www.open-open.com/bbs/view/1320130410702),但是,如springMVC的方法中可能还存在线程同步问题,虽然用上边的也能解决,但是我们也可以使用同步块来解决。

4.


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值