admin 管理员组

文章数量: 887021


2023年12月23日发(作者:matcher方法)

Struts2+Spring3+Hibernate3 集成  

目 录 

1.

Struts2集成 ..................................................... 1

把Struts提供的jar包拷贝到/WEB-INF/lib/目录下 ........................................... 1

在中配置Struts的过滤器 .................................................................. 2

2.

Struts2开发 ..................................................... 2

2.1 编写Struts Action程序,需要继承ActionSupport ............................................. 2

2.2 创建的Action映射文件................................................................... 3

1.1.

1.2.

3.

Struts2+Spring集成 .............................................. 3

3.1

3.2

3.3

3.4

3.5

4.1

4.2

4.3

4.4

4.5

4.6

5.1

5.2

5.3

5.4

5.5

按第1步“Struts2集成”方法集成 3

再把Struts的Spring插件把拷贝到/WEB-INF/lib/目录下 .................................. 3

把Spring提供的jar拷贝到/WEB-INF/lib/目录下 ............................................. 3

配置Spring的过滤器 ......................................................................... 3

创建配置文件 .............................................................. 4

先按照“Struts2+Spring集成”方法执行.......................................................... 5

导入Apache Commons几个jar包 ................................................................... 5

导入Hibernate几个jar包................................................................................ 5

数据库的JDBC驱动 ....................................................................................... 5

在中加入如下的配置 .................................................... 5

创建文件.............................................................................. 6

编写Model类................................................................................................. 6

编写Model类的HBM映射文件 ..................................................................... 7

在中指定HBM映射文件路径....................................... 8

编写DAO接口和实现类程序,并继承HibernateDaoSupport ............................ 8

在中配置DAO Bean ................................................... 10

4.

Struts2+Spring+Hibernate集成 ..................................... 5

5.

Struts2+Spring+Hibernate开发 ..................................... 6

6.

注意事项 ....................................................... 10

1. Struts2集成

1.1. 把Struts提供的jar包拷贝到/WEB-INF/lib/目录下

Struts需要如下几个包:

解压:

需要:

和所有以“commons-”开头的包。

其它包根据需要再导入,否则系统启动会出错。

1.2. 在中配置Struts的过滤器

放在/WEB-INF/目录下。

"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

"/dtd/web-app_2_">

struts2

Dispatcher

struts2

/*

ter-class>

2. Struts2开发

2.1 编写Struts Action程序,需要继承ActionSupport

import Support;

public class StudentAction extends ActionSupport {

}

public String addUserDoPost() throws Exception {

}

return "input";

2.2 创建的Action映射文件

应放在/WEB-INF/classes/目录下,如果在Eclipse工程中,可放在/src/目录下,Eclipse编译程序时会自动把拷贝到/WEB-INF/classes/目录下。

"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"

"/dtds/">

/student/

class="tAction" method="addUserDoGet">

3. Struts2+Spring集成

3.1 按第1步“Struts2集成”方法集成Struts2

3.2 再把Struts的Spring插件把拷贝到/WEB-INF/lib/目录下

插件包:

3.3 把Spring提供的jar拷贝到/WEB-INF/lib/目录下

解压:

需要:

/dist/目录下所有jar包。

3.4 配置Spring的过滤器

"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

"/dtd/web-app_2_">

contextConfigLocation

classpath*:

struts2

tLoaderListener

Dispatcher

struts2

/*

ter-class>

3.5 创建配置文件

应放在/WEB-INF/classes/目录下,如果在Eclipse工程中,可放在/src/目录下,Eclipse编译程序时会自动把其拷贝到/WEB-INF/classes/目录下。可以先创建一个空文件,如下:

xmlns="/schema/beans"

xmlns:xsi="/2001/XMLSchema-instance"

xsi:schemaLocation="/schema/beans

/schema/beans/">

4. Struts2+Spring+Hibernate集成

4.1 先按照“Struts2+Spring集成”方法执行

4.2 导入Apache Commons几个jar包

Struts包中没有提供如下两个包,需要到Apache网站下载:

把以上jar都拷贝到/WEB-INF/lib/目录下。

4.3 导入Hibernate几个jar包

解压:

需要:

/ lib/required/目录下的所有包。

/lib/jpa/目录下的JPA包。

把以上jar都拷贝到/WEB-INF/lib/目录下。

4.4 数据库的JDBC驱动

根据使用的数据库下载相应的JDBC驱动。并拷贝到/WEB-INF/lib/目录下。

4.5 在中加入如下的配置

class="ataSource">

=""/>

="jdbc:mysql://localhost:3306/ncase?characterEncoding=gbk"/>

class="essionFactoryBean">

classpath:

hbm/

4.6 创建文件

应放在/WEB-INF/classes/目录下,如果在Eclipse工程中,可放在/src/目录下,Eclipse编译程序时会自动把其拷贝到/WEB-INF/classes/目录下。可参考如下配置,如下:

"-//Hibernate/Hibernate Configuration DTD 3.0//EN"

"/">

true

name="dialect">ialect

5. Struts2+Spring+Hibernate开发

5.1 编写Model类

可参见:

public class Student implements Serializable {

public Integer studentId;

public String name;

public Integer age;

}

public String province;

public String remark;

public Integer getStudentId() {

}

public void setStudentId(Integer studentId) {

}

public String getName() {

}

public void setName(String name) {

}

public Integer getAge() {

}

public void setAge(Integer age) {

}

public String getProvince() {

}

public void setProvince(String province) {

}

public String getRemark() {

}

public void setRemark(String remark) {

}

= remark;

return remark;

ce = province;

return province;

= age;

return age;

= name;

return name;

tId = studentId;

return studentId;

5.2 编写Model类的HBM映射文件

可参见,放在项目工程中/src/hbm/目录下。

"-//Hibernate/Hibernate Mapping DTD 3.0//EN"

"/" >

type="r" >

type="" />

type="" />

5.3 在中指定HBM映射文件路径

请参见4.5“在中加入如下的配置”一节中“设置Model的映射文件”注释部分。

5.4 编写DAO接口和实现类程序,并继承HibernateDaoSupport

DAO接口类可参见如下:

public interface StudentDao {

}

public void add(Student student);

public List getAll();

public List getListByObject();

public List getListBySql(String sql);

public Student getById(Integer id);

public Student getByObject(Student student);

public void delete(Integer id);

public void update(Student student);

DAO实现类可参见如下:

import ;

import .*;

import .*;

import

ateDaoSupport;

public class StudentDaoImpl extends HibernateDaoSupport implements

StudentDao {

public void add(Student student) {

}

ernateTemplate().save(student);

public List getAll() {

}

public List getListByObject() {

}

public List getListBySql(String sql) {

}

public Student getById(Integer id) {

}

public Student getByObject(Student student) {

}

public void delete(Integer id) {

Student student = new Student();

dentId(id);

ernateTemplate().delete(student);

List list = ernateTemplate().find("from Student s

new Object[] { new Integer(dentId()),

List list = ernateTemplate().find("from Student s

if (list != null && () > 0) {

}

else {

}

return null;

return (Student) (0);

return null;

return null;

return ernateTemplate().loadAll();

where tId=?", id);

where tId=? and =?",

e() });

if (list != null && () > 0) {

}

else {

}

return null;

return (Student) (0);

}

}

public void update(Student student) {

}

ernateTemplate().update(student);

5.5 在中配置DAO Bean

6. 注意事项

Hibernate的“”配置文件中的DOCTYPE申明的Hibernate版本需要和HBM映射文件的DOCTYPE申明的Hibernate版本一致。如果版本不一致,系统会根据URL地址到指定网站寻找DTD文件,也就是必须联网的情况下可用,如果不联网,则系统启动会报错。

例如:配置文件的DOCTYPE

"-//Hibernate/Hibernate Configuration DTD 3.0//EN"

"/">

例如:HBM映射文件的DOCTYPE

"-//Hibernate/Hibernate Mapping DTD 3.0//EN"

"/">


本文标签: 文件 映射 配置 集成 程序