SSI框架为struts、spring、ibatis,在该框架中,使用ibatis作为数据持久层,其中ibatis使用最新版本mybatis3。

注:本文使用版本:struts-2.3.4、spring-3.2.1、mybatis-3.2.1  

   一、框架下载   1、Struts2:http://struts.apache.org/download    2、Spring:http://www.springsource.org/download/community   3、mybatis:https://code.google.com/p/mybatis/downloads/detail?name=mybatis-3.2.1.zip   mybatis-spring: https://code.google.com/p/mybatis/downloads/list?q=label:Product-Spring

二、创建项目,添加jar包  
1、创建java web项目testSSI.  
2、添加struts包:  

01.aopalliance-1.0.jar、    
02.freemarker-2.3.19.jar,    
03.ognl-3.0.5.jar,    
04.struts2-core-2.3.4.jar,    
05.struts2-spring-plugin-2.3.4.jar,    
06.xwork-core-2.3.4.jar,    
07.commons-fileupload-1.2.2.jar、    
08.commons-logging-api-1.1.jar、    
09.commons-io-2.0.1.jar、    
10.commons-lang-2.4.jar、    
11.commons-lang3-3.1.jar、    
12.commons-logging-api-1.1.jar。

3、添加spring包:

 

view plain copy 
01.spring-aop-3.2.1.RELEASE.jar、    
02.spring-aspects-3.2.1.RELEASE.jar、    
03.spring-beans-3.2.1.RELEASE.jar、    
04.spring-context-3.2.1.RELEASE.jar、    
05.spring-context-support-3.2.1.RELEASE.jar、    
06.spring-core-3.2.1.RELEASE.jar、    
07.spring-expression-3.2.1.RELEASE.jar、    
08.spring-jdbc-3.2.1.RELEASE.jar、    
09.spring-orm-3.2.1.RELEASE.jar、    
10.spring-test-3.2.1.RELEASE.jar、    
11.spring-tx-3.2.1.RELEASE.jar、    
12.spring-web-3.2.1.RELEASE.jar。

 

4、添加ibatis包:

 

01.mybatis-3.2.1.jar    
02.mybatis-spring-1.2.0.jar

 

5、添加其他包:

 

01.ojdbc14.jar 【下载地址 http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-10201-088211.html 】    
02.aspectjweaver.jar 【下载地址 http://search.maven.org/remotecontent?filepath=org/aspectj/aspectjweaver/1.6.12/aspectjweaver-1.6.12.jar 】    
03.javassist-3.15.0-GA.jar    
04.c3p0-0.9.1.jar  【下载地址:https://code.google.com/p/aicms/downloads/detail?name=c3p0-0.9.1.jar&can=2&q=】

 

 三、配置struts  
1、配置struts核心过滤器。  
打开web.xml,配置struts核心过滤器和过滤器映射。  
web.xml文件代码如下:

01.<?xml version="1.0" encoding="UTF-8"?>    
02.<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"    
03.    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
04.    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee     
05.    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">    
06.    <display-name></display-name>    
07.        
08.    <!-- 定义Struts 2的核心控制器 -->     
09.    <filter>    
10.        <filter-name>struts2</filter-name>    
11.        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>    
12.    </filter>    
13.    <filter-mapping>    
14.        <filter-name>struts2</filter-name>    
15.        <url-pattern>*.action</url-pattern>    
16.    </filter-mapping>    
17.    
18.    <listener>    
19.        <listener-class>org.apache.struts2.dispatcher.ng.listener.StrutsListener</listener-class>    
20.    </listener>    
21.    
22.    <welcome-file-list>    
23.        <welcome-file>index.html</welcome-file>    
24.        <welcome-file>index.htm</welcome-file>    
25.        <welcome-file>index.jsp</welcome-file>    
26.        <welcome-file>default.html</welcome-file>    
27.        <welcome-file>default.htm</welcome-file>    
28.        <welcome-file>default.jsp</welcome-file>    
29.    </welcome-file-list>    
30.    
31.</web-app>

 2、建立BaseAction。  
新建包com.hsinghsu.testSSI.action,在其中建立类BaseAction,继承ActionSupport类。  
BaseAction.java文件代码如下:

01.package com.hsinghsu.testSSI.action;    
02.    
03.import com.opensymphony.xwork2.ActionSupport;    
04.    
05.public class BaseAction  extends ActionSupport{    
06.    
07.    /**   
08.     *    
09.     */    
10.    private static final long serialVersionUID = 4565394360208096613L;    
11.    
12.}

 3、编写测试struts的Action。  
在包com.hsinghsu.testSSI.action中建立LoginAction类,继承BaseAction,作为简单的struts测试。  
LoginAction.java文件代码如下:

01.package com.hsinghsu.testSSI.action;    
02.    
03.public class LoginAction extends BaseAction {    
04.    
05.    /**   
06.     *    
07.     */    
08.    private static final long serialVersionUID = -6144396976094110475L;    
09.        
10.    public String execute() throws Exception     
11.    {      
12.        return "success";      
13.    }      
14.    
15.}

 4、配置action。  
在struts.xml文件中,添加对LoginAction的配置。  
struts.xml文件代码如下:

01.<?xml version="1.0" encoding="UTF-8" ?>    
02.    
03.<!DOCTYPE struts PUBLIC    
04.    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"    
05.    "http://struts.apache.org/dtds/struts-2.3.dtd">    
06.    
07.<struts>    
08.    <constant name="struts.objectFactory" value="spring" />    
09.    <constant name="struts.i18n.encoding" value="UTF-8" />    
10.    <constant name="struts.i18n.reload" value="false" />    
11.    <constant name="struts.configuration.xml.reload" value="false" />    
12.    <constant name="struts.custom.i18n.resources" value="globalMessages" />    
13.    <constant name="struts.action.extension" value="action,," />    
14.    
15.    <constant name="struts.convention.package.locators.basePackage"    
16.              value="com.hsinghsu.testSSI.action" />    
17.    <constant name="struts.convention.result.path" value="/" />    
18.    <constant name="struts.serve.static" value="true" />    
19.    <constant name="struts.serve.static.browserCache" value="false" />    
20.        
21.        
22.    <package name="com.hsinghsu.testSSI.action.test" extends="struts-default">    
23.        <action name="login" class="com.hsinghsu.testSSI.action.LoginAction">    
24.            <result name="success">/jsp/welcome.jsp</result>    
25.        </action>    
26.    </package>    
27.        
28.</struts>

 5、建立测试jsp页面  
新建测试jsp页面welcome.jsp。  
welcome.jsp文件代码如下:

01.<%@ page language="java" pageEncoding="UTF-8"%>    
02.<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">    
03.<html>    
04.<head>    
05.<title>IWelcome</title>    
06.</head>    
07.<body>    
08.Welcome HsingHsu    
09.</body>    
10.</html>

 6、配置spring  
打开applicationContext.xml文件,配置spring,添加action bean。  
applicationContext.xml文件代码如下:

01.<?xml version="1.0" encoding="UTF-8"?>    
02.<beans xmlns="http://www.springframework.org/schema/beans"    
03.    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"    
04.    xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"    
05.    xmlns:context="http://www.springframework.org/schema/context"    
06.    xsi:schemaLocation="    
07.       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd    
08.       http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd    
09.       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd    
10.       http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd    
11.       ">    
12.           
13.    <bean id="loginAction" class="com.hsinghsu.testSSI.action.LoginAction"/>     
14.         
15.</beans>

 7、配置Spring监听器  
打开web.xml,添加Spring监听器。  
web.xml文件代码如下:

01.<?xml version="1.0" encoding="UTF-8"?>    
02.<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"    
03.    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
04.    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee     
05.    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">    
06.    <display-name></display-name>    
07.        
08.    <context-param>    
09.        <param-name>contextConfigLocation</param-name>    
10.        <param-value>    
11.        classpath:applicationContext.xml    
12.        </param-value>    
13.    </context-param>    
14.    
15.    <!-- ssh 中文过滤 -->    
16.    <filter>    
17.        <filter-name>characterEncoding</filter-name>    
18.        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>    
19.        <init-param>    
20.            <param-name>encoding</param-name>    
21.            <param-value>utf-8</param-value>    
22.        </init-param>    
23.        <init-param>    
24.            <param-name>forceEncoding</param-name>    
25.            <param-value>true</param-value>    
26.        </init-param>    
27.    </filter>    
28.    <filter-mapping>    
29.        <filter-name>characterEncoding</filter-name>    
30.        <url-pattern>/*</url-pattern>    
31.    </filter-mapping>    
32.    
33.    <!-- 定义Struts 2的核心控制器 -->     
34.    <filter>    
35.        <filter-name>struts2</filter-name>    
36.        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>    
37.    </filter>    
38.    <filter-mapping>    
39.        <filter-name>struts2</filter-name>    
40.        <url-pattern>*.action</url-pattern>    
41.    </filter-mapping>    
42.    
43.    <!-- 对Spring 容器进行实例化 -->    
44.    <listener>    
45.        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>    
46.    </listener>    
47.    <listener>    
48.        <listener-class>org.apache.struts2.dispatcher.ng.listener.StrutsListener</listener-class>    
49.    </listener>    
50.    
51.    <welcome-file-list>    
52.        <welcome-file>index.html</welcome-file>    
53.        <welcome-file>index.htm</welcome-file>    
54.        <welcome-file>index.jsp</welcome-file>    
55.        <welcome-file>default.html</welcome-file>    
56.        <welcome-file>default.htm</welcome-file>    
57.        <welcome-file>default.jsp</welcome-file>    
58.    </welcome-file-list>    
59.    
60.</web-app>

 8、配置tomcat并启动,在浏览器中输入http://localhost:8686/testSSI/login.action   

   则页面会显示Welcome HsingHsu。

 

四、配置ibatis  

1、建立数据库与数据表   本文采用oracle数据库,建立T_TEST_USER表,新建列ID,NAME,PWD,AGE,SEX。插入一条数据,如id:1,name:hsing,pwd:hsu。   2、配置ibatis数据库连接等配置。新建jdbc.oracle.properties文件。   jdbc.oracle.properties文件代码如下:

 

01.ibatis.connection.driver_class oracle.jdbc.driver.OracleDriver    
02.ibatis.connection.url jdbc:oracle:thin:@10.127.58.1:1521:ora11g    
03.ibatis.connection.username adm    
04.ibatis.connection.password adm    
05.    
06.c3p0.acquireIncrement=3    
07.c3p0.idleConnectionTextPeriod=900    
08.c3p0.minPoolSize=2    
09.c3p0.maxPoolSize=50    
10.c3p0.maxStatements=100    
11.c3p0.numHelperThreads=10    
12.c3p0.maxIdleTime=600    
13.c3p0.initialPoolSize=3

 

 3、配置spring,添加ibatis支持。  
修改applicationContext.xml文件,添加ibatis支持。  
applicationContext.xml文件代码如下:

 

01.<?xml version="1.0" encoding="UTF-8"?>    
02.<beans xmlns="http://www.springframework.org/schema/beans"    
03.    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"    
04.    xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"    
05.    xmlns:context="http://www.springframework.org/schema/context"    
06.    xsi:schemaLocation="    
07.       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd    
08.       http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd    
09.       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd    
10.       http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd    
11.       ">    
12.    
13.    <bean id="placeholderConfig"    
14.        class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">    
15.        <property name="location">    
16.            <value>classpath:jdbc.oracle.properties</value>    
17.        </property>    
18.    </bean>    
19.    
20.    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"    
21.        destroy-method="close">    
22.        <property name="jdbcUrl" value="${ibatis.connection.url}" />    
23.        <property name="driverClass" value="${ibatis.connection.driver_class}" />    
24.        <property name="user" value="${ibatis.connection.username}" />    
25.        <property name="password" value="${ibatis.connection.password}" />    
26.        <property name="acquireIncrement" value="${c3p0.acquireIncrement}" />    
27.        <property name="initialPoolSize" value="${c3p0.initialPoolSize}" />    
28.        <property name="minPoolSize" value="${c3p0.minPoolSize}" />    
29.        <property name="maxPoolSize" value="${c3p0.maxPoolSize}" />    
30.        <property name="maxStatements" value="${c3p0.maxStatements}" />    
31.        <property name="numHelperThreads" value="${c3p0.numHelperThreads}" />    
32.        <property name="maxIdleTime" value="${c3p0.maxIdleTime}" />    
33.    </bean>    
34.    
35.    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">    
36.        <property name="configLocation" value="classpath:sqlMapConfigMybatis.xml" />    
37.        <property name="dataSource" ref="dataSource" />    
38.    </bean>    
39.    
40.    <bean id="abstractDao" abstract="true">    
41.        <property name="sqlSessionFactory" ref="sqlSessionFactory" />    
42.    </bean>    
43.        
44.    <bean id="userDao"    
45.        class="com.hsinghsu.testSSI.dao.impl.UserDaoImpl"    
46.        parent="abstractDao" />    
47.    
48.    <context:component-scan base-package="com.hsinghsu.testSSI">    
49.        <context:exclude-filter type="annotation"    
50.            expression="org.springframework.stereotype.Controller" />    
51.    </context:component-scan>    
52.    
53.</beans>

 

 4、配置ibatis映射文件  
新建sqlMapConfigMybatis.xml,添加ibatis映射文件  
代码如下:

01.<?xml version="1.0" encoding="UTF-8"?>      
02.<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"      
03.    "http://mybatis.org/dtd/mybatis-3-config.dtd">    
04.    
05.<configuration>    
06.    <mappers>    
07.        <!-- 配置sql语句文件 -->    
08.        <mapper resource="com/hsinghsu/testSSI/data/User.xml" />    
09.    </mappers>    
10.</configuration>

 5、创建持久层实体类。  
创建包com.hsinghsu.testSSI.model,创建User类,添加5个私有成员,对应数据表中5个属性,并一定要添加set和get方法。  
User.java文件代码如下:

01.package com.hsinghsu.testSSI.model;    
02.    
03.public class User {    
04.    
05.    private Long id;    
06.    private String name;    
07.    private String pwd;    
08.    private Long age;    
09.    private Long sex;    
10.    
11.    public Long getId() {    
12.        return id;    
13.    }    
14.    
15.    public void setId(Long id) {    
16.        this.id = id;    
17.    }    
18.    
19.    public String getName() {    
20.        return name;    
21.    }    
22.    
23.    public void setName(String name) {    
24.        this.name = name;    
25.    }    
26.    
27.    public String getPwd() {    
28.        return pwd;    
29.    }    
30.    
31.    public void setPwd(String pwd) {    
32.        this.pwd = pwd;    
33.    }    
34.    
35.    public Long getAge() {    
36.        return age;    
37.    }    
38.    
39.    public void setAge(Long age) {    
40.        this.age = age;    
41.    }    
42.    
43.    public Long getSex() {    
44.        return sex;    
45.    }    
46.    
47.    public void setSex(Long sex) {    
48.        this.sex = sex;    
49.    }       
50.    
51.}

 6、配置User映射文件  
创建包com.hsinghsu.testSSI.data。该包主要放置对应类的映射文件。  
新建User.xml,添加其sql的映射  
代码如下:

01.<?xml version="1.0" encoding="UTF-8"?>      
02.<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"      
03.     "http://mybatis.org/dtd/mybatis-3-mapper.dtd">    
04.    
05.<mapper namespace="UserMapper">    
06.    
07.    <!-- select 语句,传参一个,返回User对象 。注:select id as id,name as name,pwd as pwd     
08.        的as后面的名称要与User类中属性名称要一一对应 -->    
09.    <select id="getUserByName" parameterType="String"    
10.        resultType="com.hsinghsu.testSSI.model.User">    
11.        select    
12.        id as id,name as name,pwd as pwd    
13.        from T_TEST_USER    
14.        WHERE NAME = #{name}    
15.    </select>    
16.    
17.    <insert id="insertUser" parameterType="com.hsinghsu.testSSI.model.User">    
18.        insert into    
19.        T_TEST_USER(ID,NAME,PWD,AGE,SEX)    
20.        values(#{id},#{name},#{pwd},#{age},#{sex})    
21.    </insert>    
22.    
23.</mapper>

 五、编写java代码  
1、编写DAO接口  
新建包com.hsinghsu.testSSI.dao,创建接口UserDao。  
UserDao.java文件代码如下:

01.package com.hsinghsu.testSSI.dao;    
02.    
03.import com.hsinghsu.testSSI.model.User;    
04.    
05.public interface UserDao {    
06.        
07.    public User getUserByName(String name);    
08.    
09.}

 2、编写DAO实现  
新建包com.hsinghsu.testSSI.dao.impl,创建实现类UserDaoImpl。  
UserDaoImpl.java文件代码如下:

01.package com.hsinghsu.testSSI.dao.impl;    
02.    
03.import java.util.ArrayList;    
04.import java.util.HashMap;    
05.import java.util.List;    
06.import java.util.Map;    
07.    
08.import org.mybatis.spring.support.SqlSessionDaoSupport;    
09.import org.springframework.stereotype.Repository;    
10.    
11.import com.hsinghsu.testSSI.dao.UserDao;    
12.import com.hsinghsu.testSSI.model.User;    
13.    
14.@Repository(value = "userDao")    
15.public class UserDaoImpl extends SqlSessionDaoSupport implements UserDao {    
16.    
17.    @Override    
18.    public User getUserByName(String name) {    
19.    
20.        User user = new User();    
21.    
22.        // select语句,传入一个参数,返回User对象  -------------------------------------------------------------------------    
23.        user = getSqlSession().selectOne("UserMapper.getUserByName", name);// select语句,传入一个参数,返回User对象    
24.    
25.        //insert语句,传入一个对象  -------------------------------------------------------------------------------------    
26.        User oneUser = new User();    
27.        oneUser.setId(Long.parseLong("6"));    
28.        oneUser.setName("go07");    
29.        oneUser.setPwd("pesd07");    
30.        oneUser.setAge(Long.parseLong("25"));    
31.        oneUser.setSex(Long.parseLong("1"));    
32.        //int result = getSqlSession().insert("UserMapper.insertUser",oneUser);//insert语句,传入一个对象    
33.        //System.out.println("insert result:"+result);    
34.            
35.    
36.        return user;    
37.    }    
38.    
39.}

 3、修改action类  
编辑修改LoginAction类。  
LoginAction.java文件代码如下:

01.package com.hsinghsu.testSSI.action;    
02.    
03.import org.springframework.beans.factory.annotation.Autowired;    
04.    
05.import com.hsinghsu.testSSI.dao.UserDao;    
06.import com.hsinghsu.testSSI.model.User;    
07.    
08.public class LoginAction extends BaseAction {    
09.    
10.    /**   
11.     *    
12.     */    
13.    private static final long serialVersionUID = -439437585357651788L;    
14.    
15.    @Autowired    
16.    private UserDao userDao;    
17.    
18.    private User user;    
19.    
20.    private String username;    
21.    private String password;    
22.    
23.    public String execute() throws Exception {    
24.        user = userDao.getUserByName(username);    
25.        if (user != null) {    
26.            if (user.getPwd().equals(password)) {    
27.                return SUCCESS;    
28.            }    
29.        }    
30.        return ERROR;    
31.    }    
32.    
33.    public String getUsername() {    
34.        return username;    
35.    }    
36.    
37.    public void setUsername(String username) {    
38.        this.username = username;    
39.    }    
40.    
41.    public String getPassword() {    
42.        return password;    
43.    }    
44.    
45.    public void setPassword(String password) {    
46.        this.password = password;    
47.    }    
48.    
49.}

 4、新建用户登录页面。  
添加login.jsp。  
login.jsp文件代码如下:

01.<%@ page language="java" pageEncoding="UTF-8"%>    
02.<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">    
03.<html>    
04.<head>    
05.<title>Insert title here</title>    
06.</head>    
07.<body>    
08.    <form action="mylogin.action" method="post">      
09.        Username:<input type="text" name="username"/><br/>      
10.        Password:<input type="password" name="password"/><br/>      
11.        <input type="submit" value="Submit"/>       
12.    </form>    
13.</body>    
14.</html>

 5、修改struts.xml配置文件  
struts.xml文件代码如下:

01.<?xml version="1.0" encoding="UTF-8" ?>    
02.    
03.<!DOCTYPE struts PUBLIC    
04.    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"    
05.    "http://struts.apache.org/dtds/struts-2.3.dtd">    
06.    
07.<struts>    
08.    <constant name="struts.objectFactory" value="spring" />    
09.    <constant name="struts.i18n.encoding" value="UTF-8" />    
10.    <constant name="struts.i18n.reload" value="false" />    
11.    <constant name="struts.configuration.xml.reload" value="false" />    
12.    <constant name="struts.custom.i18n.resources" value="globalMessages" />    
13.    <constant name="struts.action.extension" value="action,," />    
14.    
15.    <constant name="struts.convention.package.locators.basePackage"    
16.              value="com.hsinghsu.testSSI.action" />    
17.    <constant name="struts.convention.result.path" value="/" />    
18.    <constant name="struts.serve.static" value="true" />    
19.    <constant name="struts.serve.static.browserCache" value="false" />    
20.        
21.        
22.    <package name="com.hsinghsu.testSSI.action.test" extends="struts-default">    
23.        <action name="login" class="com.hsinghsu.testSSI.action.LoginAction">    
24.            <result name="success">/jsp/welcome.jsp</result>    
25.        </action>    
26.            
27.        <action name="mylogin" class="com.hsinghsu.testSSI.action.LoginAction">     
28.            <result name="success">/jsp/welcome.jsp</result>    
29.            <result name="error">/jsp/login.jsp</result>    
30.        </action>    
31.    </package>    
32.        
33.</struts>

 6、运行tomcat,在浏览器中输入http://localhost:8686/testSSI/jsp/login.jsp 会显示登录页面,如果成功会显示welcome 。失败则会继续要求登录。  
  
注:i.文件结构为:/src/main/resources,src/main/java,并将其添加到build path中。【Java Build Path - Add Folder】  
ii./src/main/resources下文件有:struts.xml、applicationContext.xml、jdbc.oracle.properties、sqlMapConfigMybatis.xml  
src/main/java下包结构为:com.hsinghsu.testSSI.model、com.hsinghsu.testSSI.dao、com.hsinghsu.testSSI.dao.impl、com.hsinghsu.testSSI.data、com.hsinghsu.testSSI.action。  
iii.修改web的输出目录,Java Build Path - Default output folder:testSSI/WebContent/WEB-INF/classes。  
iv.添加jar包时将jar包放在WebContent/WEB-INF/lib文件夹下。