struts+spring+hibernate

为了方便自己在以后开发的时候查询资料,把自己下午搭的一个简单的平台写出来.
还在继续完善中.
一.spring+struts整合


1.采用委托的方式:
步骤:
<1>在web.xml中配置(方便服务器启动的时候加载配置文件,在这里没有采用插件的形式)
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/config/spring/*.xml</param-value>
</context-param>
ps:固定写法(如果在spring下面有文件可以写成/spring/**/*.xml)

<2>在struts-config.xml中配置代理类
<struts-config>
<action-mappings >
<action path="/test" type="org.springframework.web.struts.DelegatingActionProxy" >
<forward name="index" path="/index.jsp"></forward>
</action>
</action-mappings>
</struts-config>

ps:其中type指定的是spring的代理类

<3>在spring中配置
<bean name="/test" class="com.yourcompany.struts.action.TestAction"></bean>
ps:name的名称和path是一致的,class表示具体的action所在位置

二.spring+struts+hibernate整合.
1.在applicationContext.xml中加上
<bean id="datasource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="oracle.jdbc.driver.OracleDriver">
</property>
<property name="url"
value="jdbc:oracle:thin:@192.168.1.120:1521:empolder">
</property>
<property name="username" value="sa"></property>
<property name="password" value="sa"></property>
</bean>
<bean id="sessionfactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="datasource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.Oracle9Dialect
</prop>
</props>
</property>
<property name="mappingLocations">
<list>
<value>classpath*:com/persistence/*.hbm.xml</value>
</list>
</property>
</bean>
<bean id="TestDAO" class="com.persistence.TestDAO">
<property name="sessionFactory">
<ref bean="sessionfactory" />
</property>
</bean>
<bean name="/test" class="com.yourcompany.struts.action.TestAction">
<property name="td">
<ref bean="TestDAO"/>
</property>
</bean>

2.配置相关的实体类和hbm配置文件,并建立dao层com.persistence.TestDAO

3.把dao的相关实例注入action中,并在action中调用dao中相关数据库操作方法
<1>set方法注入(需要在TestAction中有相关的set方法)
<bean name="/test" class="com.yourcompany.struts.action.TestAction">
<!--
<property name="td">
<ref bean="TestDAO"/>
</property>
-->
</bean>
<2>构造器注入(需求有相关的构造方法)
<bean name="/test" class="com.yourcompany.struts.action.TestAction">
<constructor-arg index="0">
<ref bean="TestDAO"/>
</constructor-arg>
</bean>

注:在项目中遇到org/apache/commons/pool/impl/GenericObjectPool异常
解决办法:
解决:
到这里http://commons.apache.org/downloads/download_pool.cgi下载包,然后,把里面的commons-pool-x.jar复制到myEclipse的Referenced Libraries下.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值