因为手里已有相关jar,为方便我搭建的是:Struts2.0+Hibernate3.3+Spring3.0,数据库:MySQL
如果想搭建最新的,在官网上下载最新jar即可。
这里会对比MyEclipse自动配置和手动配置,直接说搭建步骤,过程中说明一下一些重要的jar的作用。
1、新建web项目SSH
2、Struts2搭建()
通过MyEclipse搭建:
选择需要用到的jar,
finish后,会生成struts.xml,以及Struts 2.1 libraries,展开Struts 2.1 libraries,我们可以看到导入的jar的路径:
这样的路径是绝对的,以后项目迁移环境了,这些jar也就不能用了,项目也就不能正常运行了。我们希望jar是跟着项目目录走的,所以将下载好的struts2的jar(下载struts-*-all.zip解压后,struts/lib目录下是struts所有的相关的jar包)放到WEB-INF/lib下,并右击Struts2.1 Libraries-->Build Path-->Remove from Build Path,移除自动导入的jar。
几个主要jar包说明:
commons-logging-1.0.4.jar 日志组件
freemarker-2.3.13.jar 一个基于模板生成文本输出的通用工具
ognl-2.6.11.jar 对象图导航语言(jar包库)
strut2-core-2.1.6.jar Struts2核心jar包
xwork-core-2.1.2.jar xwork核心包
commons-io-1.2.3.jar io包
commons-fileupload-1.0.4.jar 文件上传组件
javassist-3.7.ga.ja 扩展java类和实现
commons-lang-2.5.jar 基础工具包,封装一些常用的基础操作
3、Spring搭建()
通过MyEclipse搭建:
finish后,会生成applicationContext.xml和Spring 3.0.5 Libraries,下载Spring所需jar(spring-framework-**.zip解压后,文件夹下的dist目录下所有jar),放入WEB-INF/libs下,右击Spring 3.0.5 Libraries-->Build Path-->Remove from Build Path,移除自动导入的jar。
几个主要jar包说明:
struts2-spring-plugin-2.0.14.jar Struts2+Spring整合包
spring-core-3.0.5.jar Spring核心工具包
spring-context-3.0.5.jar 为Spring提供核心扩展
spring-context-support-3.0.5.jar 为Spring提供核心扩展
spring-beans-3.0.5.jar 管理beans的工具
spring-expression-3.0.5.jar 表达式语言
spring-web-3.0.5.jar Web应用开发包
spring-aspects-3.0.5.jar 提供对AspectJ的支持,以便可以方便的将面向方面的功能集成进IDE中
4、建立数据源
我这里用的数据库是MySQL,首先安装MySQL,安装MySQL可视化的管理工具,我这里用的是Navicat Premium。在Navicat Premium创建数据库sshd,新建user表:
打开MyEclipse Database Explorer窗口,在空白处右击new...新建数据源:需要添加mysql连接数据库的jar:mysql-connector-java.jar
finish后双击连接新建的数据源MySQL。
5、Hibernate搭建()
通过MyEclipse搭建:
Spring与Hibernate有两种方式整合,一种是不要hibernate.cfg.xml这个文件,一个是要这个文件,这里只讲解有这个文件的情况。
finish后,会生成hibernate.cfg.xml、HibernateSessionFactory.java和Hibernate 3.3.2 Libraries,下载Hibernate所需jar放到WEB-INF/lib目录下,右击Hibernate 3.3.2 Libraries-->Build Path-->Remove from Build Path,移除自动导入的jar。
hibernate3.jar 核心类库
antlr-2.7.6.jar 代码扫描器,用来翻译HQL语言
commons-collections-3.2.jar Apache Commons包中的一个,包含了一些Apache开发的集合类,功能比java.util.*强大
dom4j-1.6.1.jar 一个java的XML API,类似于jdom,用来读写XML文件的
javassist-3.9.0.GA.jar Javassist字节码解释器
jta-1.1.jar 标准的JTA API
slf4j-api-1.5.8.jar
lf4j-nop-1.5.2.jar
6、配置S2SH
在web.xml中配置struts2、spring
SSH index.jsp struts2 org.apache.struts2.dispatcher.FilterDispatcher struts2 /* org.springframework.web.context.ContextLoaderListener contextConfigLocation classpath:applicationContext.xml
将数据库中的表映射到项目中:
在项目src下新建包entity、dao,用来存放映射出来的文件。在MyEclipse Database Explorer窗口,双击“MySQL”连接连接数据源,选择需要映射的表。
同时你也可以配置多表之间一对一、一对多的关系。
hibernate.cfg.xml
org.hibernate.dialect.MySQLDialect jdbc:mysql://localhost:3306/sshdb root 1234 com.mysql.jdbc.Driver MySQL thread true true true
applicationContext.xml
struts.xml:(因为先前手动导入的Struts jar是2.0的,这样XML中dtd声明改成2.0)
/index.jsp /index.jsp
User.hbm.xml
7、测试
UserAction.java
package joanna.yan.action;import java.util.List;import joanna.yan.dao.UserDAO;import joanna.yan.entity.User;import com.opensymphony.xwork2.ActionSupport;public class UserAction extends ActionSupport{ private User user; private UserDAO userDAO; public User getUser() { return user; } public void setUser(User user) { this.user = user; } public UserDAO getUserDAO() { return userDAO; } public void setUserDAO(UserDAO userDAO) { this.userDAO = userDAO; } @Override public String execute() throws Exception { Listlist=userDAO.findAll(); for (User user : list) { System.out.println(user); } return "success"; }}
测试结果:
如果此文对您有帮助,打赏我一下吧~