一、tomcat安装
1、tomcat6.0下载,官方下载地址:http://tomcat.apache.org/download-60.cgi
2、下载解压后得到apache-tomcat-6.0.29目录,可删除其中的webapps文件夹下的所有内容。
二、创建web工程
1、用Eclipse3.6新建一个动态web工程:File->New->Dynamic Web Project,假设工程名为test;
2、配置tomcat和工程映射,在tomcat的conf目录下新建catalina/localhost目录,在localhost目录下新建test.xml配置文件,文件内容:
<?xml version='1.0' encoding='utf-8'?>
<Context path="/test" docBase="E:/soft/test/WebContent" debug="0" reloadable="true" crossContext="true">
</Context>
三、struts2集成
1、下载struts2,最新版本struts2.2.1,官方下载地址:http://struts.apache.org/download.cgi#struts221,
struts-2.2.1-lib.zip中少了一个javassist-3.7.ga.jar的jar包,所以最好直接下struts-2.2.1-apps.zip
2、获取struts2-blank-2.2.1.war包WEB-INF/lib目录下的jar包,拷贝到test工程的WEB-INF/lib目录下,
共7个jar包,都是必不可少的:commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar、freemarker-2.3.16.jar、javassist-3.7.ga.jar、ognl-3.0.jar、struts2-core-2.2.1.jar、xwork-core-2.2.1.jar。
3、在test工程的web.xml文件中配置struts2过滤器:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
4、在src目录下新建struts.xml配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="demo" extends="struts-default">
<action name="listDemo" class="demoAction">
<result>/demo.jsp</result>
</action>
</package>
</struts>
四、Spring集成
1、下载Spring2.5.6的jar包,官方下载地址:http://www.springsource.org/download,下载spring-framework-2.5.6.zip;
2、解压获取spring-framework-2.5.6/dist目录下的spring.jar,拷贝到test工程的WEB-INF/lib目录下;
3、在test工程的web.xml文件中配置Spring监听器、servlet及spring配置文件路径:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>context</servlet-name>
<servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:applicationContext*.xml</param-value>
</context-param>
4、配置spring配置文件applicationContext.xml,文件内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="demoAction" class="DemoAction">
</bean>
</beans>
五、mysql驱动配置
1、下载mysql驱动jar包,官方下载地址:http://www.mysql.com/downloads/connector/j/
下载mysql-connector-java-5.1.13.zip;
2、解压缩得到mysql-connector-java-5.1.13-bin.jar,将该jar包拷贝到test工程的WEB-INF/lib目录下;
3、tomcat数据源配置,在tomcat的conf目录server.xml配置文件中配置数据源,文件中GlobalNamingResources元素添加子元素配置:
<Resource name="mysqlDBConPool" type="javax.sql.DataSource" username="dbuser" password="dbpass" driverClassName="org.gjt.mm.mysql.Driver" url="jdbc:mysql://127.0.0.1:3306/test"/>
4、在tomcat的conf/catalina/localhost/test.xml中Context元素添加子元素配置:
<ResourceLink name="mysqlDBConPool" global="mysqlDBConPool" type="javax.sql.DataSource"/>
六、iBATIS集成
1、下载iBATIS的jar包,官方下载地址:http://mybatis.googlecode.com/files/ibatis-2.3.4.726.zip
2、下载后解压缩在lib目录下获取ibatis-2.3.4.726.jar,拷贝到test工程的WEB-INF/lib目录下;
3、在工程applicationContext.xml配置文件中添加配置:
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:comp/env/mysqlDBConPool" />
</bean>
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation">
<value>classpath:SqlMapConfig.xml</value>
</property>
</bean>
4、在工程src目录下新建SqlMapConfig.xml配置文件,文件内容配置:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<settings cacheModelsEnabled="true" lazyLoadingEnabled="true"
enhancementEnabled="true" errorTracingEnabled="true" maxRequests="32"
maxSessions="10" maxTransactions="5" useStatementNamespaces="true" />
<sqlMap resource="demo.xml" />
</sqlMapConfig>
七、Demo样例开发
1、新建实体类User,包含两个属性name和id:
public class User{
private String name;
private String id;
public void setName(String name)
{
this.name = name;
}
public String getName()
{
return name;
}
public void setId(String id)
{
this.id = id;
}
public String getId()
{
return id;
}
}
2、新建demo.xml配置文件,配置一条查询sql:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="User">
<typeAlias alias="User" type="User" />
<select id="queryById" resultClass="User">select * from user where id=#id#</select>
</sqlMap>
3、新建DemoDao接口:
public interface DemoDao
{
User queryUser(User user);
}
4、新建DemoDaoImpl实现类:
public class DemoDaoImpl extends SqlMapClientDaoSupport implements DemoDao
{
public User queryUser(User user)
{
return (User)getSqlMapClientTemplate().queryForObject("User.queryById",user);
}
}
5、新建DemoAction类:
public class DemoAction extends ActionSupport
{
private User user = null;
private DemoDao demoDao = null;
public String execute()
{
user = new User();
user.setId("10001");
user = demoDao.queryUser(user);
return SUCCESS;
}
public void setUser(User user)
{
this.user = user;
}
public User getUser()
{
return user;
}
public void setDemoDao(DemoDao demoDao)
{
this.demoDao = demoDao;
}
public DemoDao getDemoDao()
{
return demoDao;
}
}
6、 在工程applicationContext.xml配置文件中添加demoDao配置,修改demoAction配置:
<bean id="demoDao" class="DemoDaoImpl">
<property name="dataSource" ref="dataSource" />
<property name="sqlMapClient">
<ref local="sqlMapClient" />
</property>
</bean>
<bean id="demoAction" class="DemoAction">
<property name="demoDao" ref="demoDao" />
</bean>
7、在工程WebContent目录下新建demo.jsp,文件中通过struts2标签读取后台查询得到的User对象属性值并展示到前台页面,文件内容:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib uri="/struts-tags" prefix="s" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Demo Test</title>
</head>
<body>
<div>name:<s:property value="user.name"/></div>
<div>id:<s:property value="user.id"/></div>
</body>
</html>
八、验证测试
1、在MySQL数据库中新建test库,新建数据库用户dbuser,密码dbpss,新建表User,表字段id和name,手工添加数据。
2、启动tomcat,在浏览器地址栏输入:http://127.0.0.1:8080/test/listDemo