我发表下SSH的整合,为了我能更好地记住。
struts2和hibernate的配置我这里就不多说了,先把两个有关的东西说下。一个是所有的包。struts2+hibernate3+spring2.5我包准备放上去给大家下载。
http://pan.baidu.com/share/link?shareid=3160001548&uk=3307409781
放在的我百度云盘里面
闲话不说:开始。
先是struts2和hibernate的配置
web.xml:
struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /*
然后在src下添加一个struts.xml:
"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">
然后在src下添加一个hibernate.cfg.xml:(这是一些数据库的配置)
'1.0' encoding='UTF-8'?> configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">"connection.username">sa "connection.url"> jdbc:jtds:sqlserver://localhost:1433;DatabaseName=LQQ "dialect"> org.hibernate.dialect.SQLServerDialect "connection.password">sa "connection.driver_class"> net.sourceforge.jtds.jdbc.Driver "show_sql">true "sedion/xq/ORM/Stuinfo.hbm.xml" />
重点讲Spring:
1. 在src下面新建applicationContext.xml文件:
"1.0" encoding="UTF-8"?>"http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> "TUser_id" class="test.TUser"> "username" value="你"> "allname" value="李"> "address" value="温州市">
然后在web-xml:
contextConfigLocation classpath:applicationContext.xml
2.Spring基本配置完毕
下面我们测试下:src建个test包
建两个类User和SpringTest类:
public class User implements java.io.Serializable { /** * */ private static final long serialVersionUID = 1L; private String username; private String allname; private String address; public String getUsername() { return this.username; } public void setUsername(String username) { this.username = username; } public String getAllname() { return this.allname; } public void setAllname(String allname) { this.allname = allname; } public String getAddress() { return this.address; } public void setAddress(String address) { this.address = address; }
public class SpringTest { public static void main(String[] args) { // 加载spring配置文件,初始化IoC容器 ApplicationContext ac = new ClassPathXmlApplicationContext( "applicationContext.xml"); // 从容器 接管Bean TUser user = (TUser) ac.getBean("TUser_id"); // 输出欢迎信息 System.out.println("Hello:" + user.getUsername() + ";u is in " + user.getAddress() + " ; and u is " + user.getAllname()); } }
别忘了:在applicationContext.xml中配置一个bean,在xml中增加如下代码:
运行main方法后
控制台出现:Hello:你;u is in 温州市 ; and u is 李
下面开始整合
整合struts2
1.整合struts2配置web.xml文件。在web.xml中加入以下代码:
org.springframework.web.context.ContextLoaderListener
2.举个例子:
把struts的action交给spring:
先把
改为
然后在
在applicationContext.xml中增加如下代码:
整合Hibernate
Spring整合Hibernate主要是对hibernate的Session进行管理,包含Session的创建、提交、关闭的整个生命周期。Spring对事务的管理应用了AOP的技术
1) 配置sessionFactory,让spring来创建Session。
我们原来是用HibernateSessionFactory.java来创建Session的,现在删除即可,交给Spring创建。(这样就spring来整合hibernate来创建session)
这里,创建了一个Session工厂类的Bean,其ID为“sessionFactory”.
在applicationContext.xml中增加如下代码:
classpath:hibernate.cfg.xml
还有个例子上的配置:
org.hibernate.dialect.SQLServerDialect true
sedion/xq/bean/User.hbm.xml
2.
然后DAO层匹配一个session工厂,这个sessionFactory是指session工厂的ID。
3.service层注入DAO层
然后就是各个action注入service层:(随便写个)
整合就这样好
下面是整合下载的例子。
http://pan.baidu.com/share/link?shareid=3154531670&uk=3307409781