spring+webwork+ibatis

下面我们介绍一下我学习spring+webwork+ibatis整和的一个例子.如有错误,还请高手指点.:)
配置文件.
applicationContext.xml


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"
default-autowire="autodetect">

<bean id="configurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations" value="classpath:/config/jdbc.properties"></property>
</bean>
<bean id="ProxyTemplate" abstract="true"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager">
<ref bean="transactionManager"/>
</property>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="delete*">PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>

</beans>

applicationContext-ibatis.xml


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"
default-autowire="autodetect">
<!-- <bean id="lazyDataSource" class="org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy">
<property name="targetDataSource">
<ref bean="dataSource"/>
</property>
</bean>-->
<bean id="dataSource"
class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="${jdbc.driverClass}" />
<property name="jdbcUrl" value="${jdbc.url}" />
<property name="user" value="${jdbc.user}" />
<property name="password" value="${jdbc.password}" />
<property name="initialPoolSize" value="2" />
<property name="minPoolSize" value="2" />
<property name="maxPoolSize" value="10" />
<property name="acquireIncrement" value="2" />
<property name="maxIdleTime" value="2" />
<property name="maxStatements" value="10" />
<property name="autoCommitOnClose" value="false" />
</bean>
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource">
<ref local="dataSource"></ref>
</property>
</bean>
<bean id="sqlMapClient"
class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation">
<value>classpath:/config/SqlMapConfig.xml</value>
</property>
</bean>
<bean id="userDao" class="com.wwsi.dao.impl.UserDao">
<property name="dataSource">
<ref local="dataSource"/>
</property>
<property name="sqlMapClient">
<ref local="sqlMapClient"/>
</property>
</bean>
<!--
<bean id="UserProxy"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager">
<ref bean="transactionManager"/>
</property>
<property name="target">
<ref local="UserDAO"/>
</property>
<property name="transactionAttributes">
<props>
<prop key="select*">PROPAGATION_REQUIRED, readOnly</prop>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
<prop key="delete*">PROPAGATION_REQUIRED</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean> -->
</beans>


application-service.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans default-lazy-init="false">
<!-- <bean id="userService" parent="ProxyTemplate">
<property name="target">
<bean class="com.wwsi.service.impl.UserService">
<property name="userDao" ref="userDao">
</property>
</bean>
</property>
</bean> -->
<bean id="userService" class="com.wwsi.service.impl.UserService">
<property name="userDao" ref="userDao">
</property>
</bean>
</beans>




application-web.xml


<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans default-lazy-init="false">
<bean id="dispatchAction"
class="com.opensymphony.xwork.ActionSupport" singleton="false">
</bean>
<bean id="userAction" class="com.wwsi.action.UserAction"
singleton="false">
<property name="userService" ref="userService"/>
</bean>
</beans>



jdbc.properties

#JDBC Config
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8
jdbc.user=root
jdbc.password=root


SqlMapConfig.xml


<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">

<sqlMapConfig>
<sqlMap resource="com/wwsi/domain/User.xml"/>
</sqlMapConfig>



xwork.xml


<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.1.1//EN" "http://www.opensymphony.com/xwork/xwork-1.1.1.dtd">

<!-- START SNIPPET: xworkSample -->

<xwork>

<include file="webwork-default.xml" />

<package name="default" extends="webwork-default" namespace="/user">
<interceptors>
<!--
externalReferenceResolver="com.atlassian.xwork.ext.SpringServletContextReferenceResolver"
<interceptor name="reference-resolver"
class="com.opensymphony.xwork.interceptor.ExternalReferencesInterceptor">
</interceptor>-->
<interceptor-stack name="crudStack">
<interceptor-ref name="logger"/>
<interceptor-ref name="component"/>
<interceptor-ref name="servlet-config"/>
<interceptor-ref name="static-params"/>
<interceptor-ref name="params"/>
<interceptor-ref name="conversionError"/>
<interceptor-ref name="validation"/>
<interceptor-ref name="workflow"/>
<interceptor-ref name="model-driven"/>
<!-- <interceptor-ref name="reference-resolver"/>-->
</interceptor-stack>
</interceptors>

<!-- <default-action-ref name="home"/>

<action name="home">
<result>home.jsp</result>
</action>-->
<action name="login" class="dispatchAction">
<result name="success" type="dispatcher">/WEB-INF/user.jsp</result>
</action>
<action name="users" class="userAction" method="select">

<result name="success" type="dispatcher">
<param name="location">/WEB-INF/user.jsp</param>
</result>
<result name="error" type="dispatcher">
<param name="location">/WEB-INF/error.jsp</param>
</result>
</action>
<!-- <external-ref name="userDAO">UserDAOProxy</external-ref> -->
</package>
</xwork>

<!-- END SNIPPET: xworkSample -->




太累了,不贴了,代码放在下载里了。
另有jar包的截图.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值