Strut2 Spring hibernate的优缺点

     最近在京东一次电面时,被问到Strust2,Spring,Hibernate的区别时,才返现对Strust2和Spring的优缺点理解的不是很透彻,于是赶紧复习了一下。

首先是Struts2的优缺点大概有如下几条:
   
     优点:①.Struts2实现了MVC思想,是代码的整体层次结构更加明显
                
               ②.Struts2具有很大的灵活性,在Struts-default.xml文件中定义了大量的默认拦截器,而这些默认的大量拦
                   截器可以为用户定制特定需求的拦截器栈,从而实现用户的需求
               
               ③.Struts2具有丰富的标签库,可以为开发提供便利
   
               ④.Struts2也实现了AOP思想

               ⑤.通过Struts.xml配置文件来方便控制前端与后台数据的交互行为

    缺点:①.Struts2在后台获取前端数据比较繁琐实现方法通常有两种(setter()getter() 方法,实现modelDrivern                           口,重写getModel()方法)

               ②.校验比较繁琐

               ③.Struts2有漏洞,一个是使用缩写的导航参数前缀时的远程代码执行漏洞,另一个是使用缩写的重定向参
                   数前缀时的开放式重定向漏洞(这一条是百度的,如有侵犯,请联系博主


  接下来是是Spring的优缺点:
  
  优点:①.Spring最大一个优点是DI(依赖注入)或者说是IOC(控制反转),通过这种方式将控制权交给用户,用户只需要
                 将相关参数注入进去即可,实现了非侵入性编程
    
             ②.另外一大优点是Spring实现的AOP(面前切面编程)思想

             ③.Spring实现了事务管理,使得事务管理不再需要我们手动实现,例如与hibernate整合后,hibernate的事务
                 管理交给Spring来管理,是开发变得更加简单

   缺点:①.由于Spring使用了大量的反射,使得项目运行速度较Servlet慢一些

  

  最后是Hibernate的优缺点:

 优点:①.由于Hibernate采用ORM(对象关系映射)思想,使用Hibernate与数据库交互变得更加简单
  
            ②.Hibernate提供了大量的方法,例如查询一个结果集,将相关属性自动装配置至对象上,从而避免了用户自
                己手动来对对象的属性进行赋值

            ③.Hibernate自己实现了事务管理的功能,是开发更加简单


  缺点:①.由于Hibernate是自己来产生CRUD语句,而不是由用户来管理,导致查询数据库数据的效率比较底下

              ②.个人觉得Hibernate的配置文件比较复杂,特别是自己实现多对多的映射功能,由于需求不同,导致配置
                   的相关属性不同
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值