配置web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>s1_s2_i2</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>action</servlet-name> <servlet-class> org.apache.struts.action.ActionServlet </servlet-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <load-on-startup>2</load-on-startup> </servlet> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app>
配置applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd"> <beans> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost:3306/root" /> <property name="username" value="root" /> <property name="password" value="root" /> </bean> <bean id="jdbcTemplete" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource" /> </bean> <bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="configLocation" value="classpath:SqlMapConfig.xml" /> </bean> <bean id="abstractDao" abstract="true"> <property name="sqlMapClient" ref="sqlMapClient" /> </bean> <!-- 定义Struts配置 --> <bean name="/test" class="com.action.TestAction"> <property name="service" ref="service" /> </bean> <bean name="service" class="com.service.TestService"> <property name="dao" ref="dao" /> </bean> <bean name="dao" class="com.dao.UserDaoImpl" parent="abstractDao"></bean> </beans>
配置sqlmap.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"> <sqlMap namespace="system"> <typeAlias alias="User" type="com.action.TestForm"/> <select id="select_user_list" parameterClass="hashmap" resultClass="hashmap"> select * from user </select> </sqlMap>
配置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> <settings cacheModelsEnabled="true" enhancementEnabled="true" lazyLoadingEnabled="true" errorTracingEnabled="true" maxRequests="32" maxSessions="10" maxTransactions="5" useStatementNamespaces="true" /> <sqlMap resource="sqlmap.xml"/> </sqlMapConfig>
配置struts-config.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd"> <struts-config> <form-beans> <form-bean name="testForm" type="com.action.TestForm"></form-bean> </form-beans> <action-mappings> <action path="/test" name="testForm" scope="request" type="org.springframework.web.struts.DelegatingActionProxy"> <forward name="success" path="/success.jsp" /> </action> </action-mappings> <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"> <set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml" /> </plug-in> </struts-config>
javabean类
TestForm.java
package com.action; import org.apache.struts.action.ActionForm; public class TestForm extends ActionForm { /** * javabean类,也就是实体类。 */ private static final long serialVersionUID = 1L; protected String str1 = null; protected String str2 = null; public String getStr1() { return str1; } public void setStr1(String str1) { this.str1 = str1; } public String getStr2() { return str2; } public void setStr2(String str2) { this.str2 = str2; } }
dao类
UserDaoImpl.java
package com.dao; import java.util.HashMap; import java.util.List; import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport; public class UserDaoImpl extends SqlMapClientDaoSupport { /* dao层,也就是持久层。 */ @SuppressWarnings("rawtypes") public List select(HashMap input) { System.out.println("-------dao-------"); List list = getSqlMapClientTemplate().queryForList("system.select_user_list", input); System.out.println("list="+list); return list; } }
service类
TestService.java
package com.service; import java.util.HashMap; import org.apache.struts.actions.DispatchAction; import com.dao.UserDaoImpl; public class TestService extends DispatchAction { /* 业务层,也就是service层。 */ private UserDaoImpl dao; public UserDaoImpl getDao() { return dao; } public void setDao(UserDaoImpl dao) { this.dao = dao; } @SuppressWarnings("rawtypes") public void service() { System.out.println("--------service-------"); dao.select(new HashMap()); } }
action类
TestAction.java
package com.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.actions.DispatchAction; import com.service.TestService; public class TestAction extends DispatchAction { private TestService service; public TestService getService() { return service; } public void setService(TestService service) { this.service = service; } public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { System.out.println("----------进入action了--------------"); service.service(); ActionForward forward = mapping.findForward("success"); return forward; } }