就我最近学习的关于三大框架的东西提一些问题并解答
SSH全称是?三大框架各是什么及各自的优缺点又是什么?hibernate工作原理是什么?
SSH指struts+spring+hibernate。
struts是系统的整体基础架构,负责MVC的分离,控制业务跳转。
spring是J2EE应用程序框架,是轻量级IOC和AOP的容器框架。
hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的封装,使JAVA程序员可以随心所欲的对象编程思想来操纵数据库(这一点也是我最喜欢的)。
spring优点:1,有效地组织中间层对象。2,消除了单态模式。3,是非侵入式的,不需要过多依赖spring框架。4,使用spring构建的程序更加容易进行单元测试
缺点:频繁的使用配置过多的配置文件
hibernate优点:1,支持各种数据库。2,支持各种关联关系(如一对多,多对多等)。3,使用了反射机制,性能好。
缺点:限制了使用的对象,一个持久类对象只能映射一张表。
struts优点:1,是开源的。2,有页面导航。3,具有丰富的标签。
缺点:将系统分为mvc模式,在获得清晰的结构的同时也增加了系统的复杂性。actionform使用不变,不能进行单元测试。
hibernate工作原理:1,读取并解析配置文件。2,读取并解析映射信息,创建sessionFactory。3,打开session。4,创建事务transtion。5,持久化操作。6,提交事务。
7,关闭session。8,关闭sessionFactory。