知识大全 Struts 2, spring 2, hibernate
Posted 知
篇首语:不是我不会,只是我没学。个人因学习而强大。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Struts 2, spring 2, hibernate相关的知识,希望对你有一定的参考价值。
Struts 2, spring 2, hibernate 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
一 struts 与 spring struts 本身就采用了类似于spring的IOC容器机制 可以利用struts 官方提供的插件struts spring plugin jar 直接与spring进行整合 配置文件中只需要设置 struts objectFactory=spring 这样 就将struts 的对象管理交给了spring 的IOC容器 在struts xml中配置的action <package name= maintaince extends= struts default > <action name= serverInfoList class= serverInfoService method= getAllServersInfo > <result name= list >/jsp/server_info/server_info_list jsp</result> </action>
在spring的配置文件中配置的bean <bean id= serverInfoService class= wod service impl ServerInfoServiceImpl > <property name= serverInfoDao ref= serverInfoDao /> <property name= sib ref= serverInfoBean /> </bean> 可以看出 struts 可以直接只用在spring 中配置的bean 引用过来作为action 这样struts 就可以跑在spring 里面了
另外 在web xml中还有这些内容 <context param> <param name>contextConfigLocation</param name> <param value>classpath:properties/work assistant* xml</param value> </context param> 加载spring的配置文件 <listener> <listener class> sprntext ContextLoaderListener</listener class> </listener> 设置spring的context listener <filter> <filter name>struts </filter name> <filter class> apache struts dispatcher FilterDispatcher</filter class> </filter> <filter mapping> <filter name>struts </filter name> <url pattern>/*</url pattern> </filter mapping> 设置struts 的dispatcher
二 hibernate 与 spring
Spring 与 hibernate结合的时候 配置文件修改比较多 首先是hibernate的自身的配置被集成到了spring的配置文件中了
配置datasource: <bean id= dataSource class= springframework jdbc datasource DriverManagerDataSource p:driverClassName= $nnection driver_class p:url= $nnection url p:username= $nnection username p:password= $nnection password />
.配置sessionFactory <bean id= sessionFactory class= springframework orm hibernate annotation AnnotationSessionFactoryBean scope= prototype > <property name= dataSource ref= dataSource /> <property name= annotatedClasses ><! or use <property name= annotatedPackages > > <list> <value> wod bean Application</value> </list> </property> <property name= hibernateProperties > <props> <prop key= hibernate hbm ddl auto >create</prop> <prop key= hibernate dialect >$hibernate dialect</prop> <prop key= hibernate show_sql >$hibernate show_sql</prop> <prop key= hibernate generate_statistics >$hibernate generate_statistics</prop> </props> </property> <property name= eventListeners > <map> <entry key= merge > <bean class= springframework orm hibernate support IdTransferringMergeEventListener /> </entry> </map> </property> </bean> 这两个bean是spring结合hibernate的最主要的两个bean 当这两个bean设置好了之后 就可以直接使用spring提供的 HibernateDaoSupport 直接使用封装好的hibernate特性 非常方便 <bean id= serverInfoDao class= wod db hibernate ServerInfoDAO > <property name= sessionFactory ref= sessionFactory /> </bean> 初始化一个DAO public List<ServerInfoBean> getAllServersInfo() List<ServerInfoBean> find = getHibernateTemplate() loadAll(ServerInfoBean class); return find; 直接调用getHibernateTemplate()访问数据库 三.Spring 事务的设置.设置transactionManager <bean id= transactionManager class= springframework orm hibernate HibernateTransactionManager p:sessionFactory ref= sessionFactory /> 设置advice <tx:advice id= txAdvice transaction manager= transactionManager > <tx:attributes> <tx:method name= find* read only= true /> <tx:method name= get* read only= true /> <tx:method name= list* read only= true /> <tx:method name= * rollback for= Exception /> </tx:attributes> </tx:advice> .接下来设置AOP <aop:config> <aop:pointcut id= businessService expression= execution(* hisoft db hibernate impl * *( )) /> <aop:advisor advice ref= txAdvice pointcut ref= businessService /> <aop:aspect id= businessAspect ref= AOPTest > <aop:before pointcut ref= businessService method= before /> <aop:after returning pointcut ref= businessService method= after /> </aop:aspect> </aop:config> 这个的意思是说 当执行到 hisoft db hibernate impl这个包下面的任何类的任何方法 而且不管参数是什么 也就是说这个包下面的所有方法调用了 都要接受前面的transactionManager的管理
AOP设置 <bean id= AOPTest class= mon LogHandler AOPTest /> <aop:config> <aop:pointcut id= businessService expression= execution(* hisoft db hibernate impl * *( )) /> <aop:advisor advice ref= txAdvice pointcut ref= businessService /> <aop:aspect id= businessAspect ref= AOPTest > <aop:before pointcut ref= businessService method= before /> <aop:after returning pointcut ref= businessService method= after /> </aop:aspect> </aop:config>
cha138/Article/program/Java/ky/201311/28174相关参考
知识大全 对于Struts和Spring两种MVC框架的比较[2]
对于Struts和Spring两种MVC框架的比较[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 spring struts2 ibatis框架整合开发
这里主要介绍一下spring+struts+ibatis所需要的jar包文件spring所需包 以上包为spring配置基本包ibatis所需包 有解决方法的朋友们希望能回复 与struts整合
知识大全 struts2 + spring + hibernate&
struts释出已经很久了虽然自己现在作GUI开发不过有时间还是学习下web开发现在就将我使用myeclipse工具应用struts+spring+hibernat
Struts整合spring方法(三) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Sprin
Spring和Struts的区别? 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lishixinz
知识大全 Struts+Spring+Hibernate快速入门
Struts+Spring+Hibernate快速入门 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧
知识大全 Struts&Spring&Hibernate面试总结
Struts&Spring&Hibernate面试总结 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧
cha138/Article/program/Java/ky/201404/30504
Spring与Struts的结合运用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Jakart
使用Spring更好地处理Struts动作 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 您肯定