spring+struts2+spring_jdbc框架的集成


==========spring+struts2+spring_jdbc=======================

1) 创建web工程
Struts2在Eclipse中工作环境的搭建和创建web工程:

①:如果是重新创建的工作环境,则在本地硬盘创建一个工作文件夹;
②:启动Eclipse选择你创建的工作文件夹(当然可以直接转工作环境File-->switch Workspace-->选择需要的工作
环境)点击确定;
③:进入Eclipse后创建工程,一般为动态Web工程;
④:设置字符编码(在菜单栏点击Window-->preferences-->General-->Content Type
-->点击右边的Text查看其下面的每个的字符编码类型,如果不是UTF-8类型的则改
成UTF-8--->点击右下角的Update);
⑤:添加Tomcate服务器,和第④步一样点击preferences-->Server-->Runtime Environments
-->点击右上角的Add-->选择所需的服务器-->Finish-->点击OK即可;
⑥:添加jar包,鼠标选中工程,单击右键,点击Build Path-->Add Library-->Server Runtime
-->Next-->选中左边服务器-->Next;
仍然点击Add Library-->User Library-->Next-->User Library...-->New...-->输入要创建
的jar包名-->ok-->Add External JARs...-->选择需要加入的jar包;
⑦:将加入jar包的jar文件同时复制到工程的lib目录下面;这样基本配置就完成;


2)搭建好struts2的环境
1)加入相关的jar包:struts2的 min包
struts2jar

2)web.xml中加入struts2的filter
⑨:配置工程目录下的lib下面的web.xml文件内容:
如果是3.1版本的,在中添加如下代码:


struts2
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter



struts2
/*

/*表示所有的以/结尾的文件路径都会响应;
整个环境搭建搞定!!

3)空的struts.xml文件
⑧:在配置Struts2时,还需要加入struts.xml文件,文件添加成功后,双击打开如果里面没有配置,
需要配置;
struts.xml的内容配置,1.打开已有的(官网下载的struts-2.3.29-all或者其他版本都行)struts-2.3.29-all
支持包,找到apps文件夹里面的文件是war格式,打开的话可以转换成zip等普通压缩文件,打开文件在WEB-INF
目录下找到src文件夹打开java文件,复制struts.xml文件到工程的src目录下,根据需要更改里面的内容,更改
内容如下:






/success.jsp
/login.jsp




3)加入spring环境
1)加入spring相关的jar包及依赖包:
spring_jar+apache

2)在web.xml文件中配置
1)配置spring的Listener


org.springframework.web.context.ContextLoaderListener

2) 配置Spring的配置文件在什么地方?名字是什么?


contextConfigLocation
/WEB-INF/applicationContext*.xml;classpath*:applicationContext*.xml


3)spring的配置文件(applicationContext.xml):
<?xml version="1.0" encoding="UTF-8"?>


xmlns:context="http://www.springframework.org/schema/context"
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.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">








与上面对应的配置的属性文件(db.properties):
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis
username=root
password=123












4)测试:获得WebApplicationContext对象
public String execute(){

//进行CURD时要获得对应类(bean)的对象<----获得Spring(IOC)容器[WebApplicationContext]对象,让其帮助创建bean的对象<----获得ServletContext对象(以获得容器对象)

//获得ServletContext对象有两种方法:1,通过ServletActionContext.getServletContext()获得;2,实现指定接口,由Struts框架运行时注入
ServletContext sc = ServletActionContext.getServletContext();

//获得Spring容器中的WebApplicationContext的对象
WebApplicationContext wac = WebApplicationContextUtils.getWebApplicationContext(sc);
System.err.println(wac);

//测试代码
//获得bean对象(LoginAction)
LoginAction action = wac.getBean(LoginAction.class);
System.out.println("如获得LoginAction对象:"+action);

4)集成spring+struts2
1)加jar包(在struts-2.3.29-all中的lib目录下):
struts2-spring-plugin-2.3.29.jar

2)集成:struts.xml

如:

/success.jsp
/login.jsp

5) spring jdbc实现DAO
使用DBCP ==> DataSource ==> Connection
Spring中配置联接数据库的DataSource
1) JDBC驱动程序
mysql:mysql-connector-java-5.1.7(连接的位MySQL数据库)

2)配置DataSource,测试代码
获得DataSource对象
//测试
//获得DataSource对象从而获得Connection(数据库连接方法)对象
ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
DataSource ds = (DataSource) ac.getBean("dataSource");
System.out.println(ds);

基于JDBC的UserDao代码的实现
UserDao ====> JdbcTemplate

两个方法:


6)spring+struts2+mybatis

集成:spring+mybatis
1)spring环境: jar包+相关的jar包
spring_jar+apachejar
配置文件
数据库:mysql JDBC驱动
mysql:mysql-connector-java-5.1.7(连接的位MySQL数据库)

2)mybatis环境
加相关的jar包,加与spring集成的jar包
mybatis_jar包
mybatis-springjar包

1)SqlSessionFactory:






2)配置获得DAO接口对象




Dao接口,+ Mapper文件

测试方法