最近整合了ssm框架并做了简单的运用,一套增删改查下来,对比之前的SSH框架,感受是居然没SSH好用,怎么形容那种感觉呢,如果说不用框架单纯使用servlet+jdbc开发像是踩单车,那么spring+mybaits+Mvc 就是手动挡的汽车,spring+struts+hibernat就是自动驾驶的汽车。
由于都用了spring,所以抛开这个大佬不谈,具体差别在于hibernat-mybaits跟struts-springmvc:
1.Hibernat根据映射自动生成表结构,自动生成主外键及各种映射关系,在操作数据库时使用模板可以做到全自动,根本不用写sql语句,也可以自己写原生sql语句,功能太多了……想怎么玩就怎么玩,并且最绝的是跟struts完美配合,值可以直接存在struts的model,jsp也可以直接在model里取值,爽的飞起。mybaits则是面向接口编程,sql直接写在xml里,调用接口执行,传值用new map等方法用花括号取,使用感受是单纯只是提供了一个sqlsessionFactory工厂及sqlSession来连接数据库更加方便一点而已,感觉上只是一个连接数据库的工具,并没太多的功能。
2.struts用于控制页面跳转,与页面间的数据传输,只需提供一个string方法并返回字符串,xml根据字符串自动跳转相关页面,与springmvc视图解析器差不多。它最实用的是实现modeldriver这个方法可以自动连接模型类并通过hibernat关联数据表,前端无论是post还是get方法,只要名字一致,那么就能获取到值,另外一个特点是它还在前端提供了s标签。springmvc使用感觉像是加强版的servlet(实际上就是封装后的servlet),传递值一般用model或request,modelview等,用起来感觉还是ssh香呀,不过ssh配置起来属实麻烦,要导入几十个包,而mybaits十个包左右就能快速搭建起来,快速轻巧多了。