struts2与springMVC区别、mybatis和hibernate的区别

 
 

Struts VS springMVC

       1、 Struts2是一个请求一个Action,SpringMVC是单例模式的

        2、Struts2是基于类的横切,SpringMVC基于方法(可以和上条结合起来思考)粒度更细

        3、Struts2入口是Filter,springMVC入口是Servlet。则两者实现机制不同

        4、SpringMVC开发速度和性能较优于Struts2,流程更容易理解
        5、spring mvc处理ajax请求,直接通过返回数据,方法中使用注解@ResponseBody,spring mvc自动帮我们对象转换为JSON数据。

mybatis和hibernate

         1、hibernate 是一个标准的ORM框架(对象关系映射框架),不需要程序写sql,sql语句自动生成,对sql语句进行优化、修改比较困难。全自动的、完全面向对象的持久层框架

         2、mybatis专注于sql本身,需要程序员自己编写sql语句,sql修改、优化比较方便。是一个不完全的ORM框架,虽然程序员自己写sql,mybatis也可以实现映射(输入映射,输出映射)半自动化的持久层框架。

            3、Hibernate的DAO层开发比MyBatis简单,Mybatis需要维护SQL和结果映射。

            4、Hibernate对对象的维护和缓存要比MyBatis好,对增删改查的对象的维护要方便。

            5、Hibernate数据库移植性很好,MyBatis的数据库移植性不好,不同的数据库需要写不同SQL。

            6、 Hibernate有更好的二级缓存机制,可以使用第三方缓存。MyBatis本身提供的缓存机制不佳。

            7、MyBatis可以进行更为细致的SQL优化,可以减少查询字段。

比如:一个项目中用到的复杂查询基本没有,就是简单的增删改查,这样选择hibernate效率就很快了,因为基本的sql语句已经被封装好了,根本不需要你去写sql语句,这就节省了大量的时间,但是对于一个大型项目,复杂语句较多,这样再去选择hibernate就不是一个太好的选择,选择mybatis就会加快许多,而且语句的管理也比较方便。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值