Struts2、Hibernate3、Spring2.5.6集成配置与使用指南

需积分: 9 1 下载量 114 浏览量 更新于2024-07-26 收藏 537KB PDF 举报
Struts2、Hibernate3、Spring的简单配置与使用 Struts2、Hibernate3和Spring是三个独立的框架,它们之间可以集成使用,实现强大的Web应用程序。本文将介绍Struts2、Hibernate3和Spring的简单配置与使用,通过一个普通的用户登录示例,展示如何将这三个框架集成使用。 一、开发环境 在开始之前,需要准备好开发环境,包括MyEclipse6.5、JDK1.6.10、Tomcat6.0、Struts2.0.11、Spring2.5.6和Hibernate3.6.0。这些工具和框架可以从官方网站下载,例如Struts2可以从Apache官网下载,Hibernate可以从SourceForge官网下载,Spring可以从Spring官网下载。 二、Struts的简单配置与使用 Struts是一个基于MVC模式的Web应用程序框架,提供了强大的请求处理和视图显示功能。下面是一个简单的Struts配置和使用示例: 2.1 导入Struts2包 首先,需要新建一个Web项目,命名为SSHProject,然后引入Struts2必须的包。可以将Struts2的jar包添加到项目的类路径中。 2.2 修改web.xml文件 其次,需要修改WEB-INF下的web.xml文件,增加Struts2的过滤器。完整的web.xml文件如下所示: <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <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> </web-app> 三、Hibernate的简单配置与使用 Hibernate是一个基于ORM(Object-Relational Mapping)的持久层框架,提供了强大的数据库交互功能。下面是一个简单的Hibernate配置和使用示例: 3.1 配置Hibernate 首先,需要在项目中添加Hibernate的jar包,然后创建一个hibernate.cfg.xml文件,用于配置Hibernate的数据库连接信息。例如: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="connection.url">jdbc:mysql://localhost:3306/ssh</property> <property name="connection.username">root</property> <property name="connection.password">root</property> <mapping resource="user.hbm.xml"/> </session-factory> </hibernate-configuration> 3.2 使用Hibernate实现数据访问 其次,需要使用Hibernate提供的Session对象来实现数据访问。例如: Session session = Hibernate.getSessionFactory().getCurrentSession(); session.beginTransaction(); User user = (User) session.get(User.class, 1); System.out.println(user.getUsername()); session.getTransaction().commit(); 四、Spring的简单配置与使用 Spring是一个基于IoC(Inversion of Control)的轻量级框架,提供了强大的依赖注入和AOP功能。下面是一个简单的Spring配置和使用示例: 4.1 配置Spring 首先,需要在项目中添加Spring的jar包,然后创建一个applicationContext.xml文件,用于配置Spring的Bean信息。例如: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/ssh"/> <property name="username" value="root"/> <property name="password" value="root"/> </bean> </beans> 4.2 使用Spring实现Bean管理 其次,需要使用Spring提供的ApplicationContext对象来实现Bean管理。例如: ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); DataSource dataSource = (DataSource) context.getBean("dataSource"); Connection connection = dataSource.getConnection(); System.out.println(connection); 五、Struts2、Hibernate和Spring的集成使用 最后,需要将Struts2、Hibernate和Spring集成使用,实现强大的Web应用程序。例如: public class LoginAction extends ActionSupport { private UserService userService; public String execute() { User user = userService.login(username, password); if (user != null) { return SUCCESS; } else { return ERROR; } } public void setUserService(UserService userService) { this.userService = userService; } } public class UserService { @Autowired private HibernateTemplate hibernateTemplate; public User login(String username, String password) { return (User) hibernateTemplate.find("from User where username = ? and password = ?", username, password); } } 在上面的示例中,Struts2的Action对象使用了Spring的依赖注入功能,注入了UserService对象。UserService对象使用了Hibernate提供的HibernateTemplate对象来实现数据访问。这样,Struts2、Hibernate和Spring三个框架就集成使用了。