baigao的gravatar头像
baigao 2014-12-25 21:46:48

Spring+Struts2+mybatis手动配置三大框架整合源代码下载

jar包网盘地址:http://pan.baidu.com/s/1eQvSXPo

手动配置三大框架整合:Spring+Struts2+mybatis

现在主流的项目框架中,数据库持久层有可能不是hibernate,而是mybatis或者ibatis,其实它们都是一样的,下面我来把环境搭建一下:

【导入相关jar包】新建web项目工程mss,Spring+Struts2+mybatis整合,除了Spring和Struts的jar包外(可以在我的资源中下载),我们还需导入mybatis的几个jar包:

Spring+Struts2+mybatis手动配置三大框架整合源代码下载

 

//配置web.xm
<?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>
  
  <!-- struts启动配置 -->
  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
  
  <!-- spring启动加载配置 -->
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:springConfig/applicationContext-*.xml</param-value>
  </context-param>
  <listener>
    <listener-class>
            org.springframework.web.context.ContextLoaderListener
    </listener-class>
  </listener>
  
  <!-- log4j相关配置 -->
  <context-param>
    <param-name>log4jConfigLocation</param-name>
    <param-value>/WEB-INF/classes/log4j.properties</param-value>
  </context-param>
  <context-param>
    <param-name>log4jRefreshInterval</param-name>
    <param-value>60000</param-value>
  </context-param>
  <listener>
    <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
  </listener>
</web-app>

【创建数据表结构】:项目中我们使用的是mysql数据库,在里面新建了一个user表:

Spring+Struts2+mybatis手动配置三大框架整合源代码下载有对密码进行MD5加密

Spring+Struts2+mybatis手动配置三大框架整合源代码下载

使用mybatis,得配置xml文件,将实体类User与表user映射,也将UserDao中的方法进行映射实现,这样不需要写UserDaoImpl,因为对数据库的操作也在这个xml中进行:UserDao.xml,这个很重要.....

整体代码结构:

Spring+Struts2+mybatis手动配置三大框架整合源代码下载

Spring+Struts2+mybatis手动配置三大框架整合源代码下载

其中,跟mybatis相关最大的一个就是UserDao.xml文件了,我们的所有对数据库的操作和方法都可以在里面进行相应的配置和参数设置,只要将相应的名称设置和匹配好,mybatis就能够自动调用
【配置我们自己的spring xml文件:applicationContext-user.xml】,其中mybatis和spring集成的下面属性配置很重要:<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"></bean>,配置在项目里,此处就不一一解说了。

【项目中我们用到了log4j,配置log4j.properties】

Spring+Struts2+mybatis手动配置三大框架整合源代码下载

项目的基础配置基本完成,编写我们的视图层,上面Action中我们跳转到了UserList.jsp,编写我们的jsp显示页面

Spring+Struts2+mybatis手动配置三大框架整合源代码下载Spring+Struts2+mybatis手动配置三大框架整合源代码下载Spring+Struts2+mybatis手动配置三大框架整合源代码下载

Spring+Struts2+mybatis手动配置三大框架整合源代码下载

一个简单的添加页面:

Spring+Struts2+mybatis手动配置三大框架整合源代码下载

SQL脚本:
/*
Navicat MySQL Data Transfer

Source Server         : localhost_3306
Source Server Version : 50538
Source Host           : localhost:3306
Source Database       : db_mybatis

Target Server Type    : MYSQL
Target Server Version : 50538
File Encoding         : 65001

Date: 2015-04-15 20:03:35
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `ID` int(10) NOT NULL AUTO_INCREMENT,
  `USERNAME` varchar(60) DEFAULT NULL,
  `PASSWORD` varchar(64) DEFAULT NULL,
  `EMAIL` varchar(60) DEFAULT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES ('1', '小红', '21232f297a57a5a743894a0e4a801fc3', '1103700829@qq.com');
INSERT INTO `user` VALUES ('2', '小黑', '21232f297a57a5a743894a0e4a801fc3', '1103701829@qq.com');
INSERT INTO `user` VALUES ('3', '小白', '21232f297a57a5a743894a0e4a801fc3', '1103732829@qq.com');
INSERT INTO `user` VALUES ('4', 'admin', '21232f297a57a5a743894a0e4a801fc3', '2388444444@qq.com');

之前的连接不小心删除了,深表歉意,现在是这个demo项目的完整页面及代码。

因上传文件过大,固本次传的是项目源码。


最代码官方编辑于2015-4-16 13:41:43


打赏

文件名:MybatiesSS.rar,文件大小:23.457K 下载
  • /
      • /MybatiesSS
        • /MybatiesSS/.classpath
        • /MybatiesSS/.project
          • /MybatiesSS/.settings
            • /MybatiesSS/.settings/.jsdtscope
            • /MybatiesSS/.settings/org.eclipse.jdt.core.prefs
            • /MybatiesSS/.settings/org.eclipse.wst.common.component
            • /MybatiesSS/.settings/org.eclipse.wst.common.project.facet.core.xml
            • /MybatiesSS/.settings/org.eclipse.wst.jsdt.ui.superType.container
            • /MybatiesSS/.settings/org.eclipse.wst.jsdt.ui.superType.name
          • /MybatiesSS/app-config
            • /MybatiesSS/app-config/jdbc.properties
            • /MybatiesSS/app-config/log4j.properties
最代码最近下载分享源代码列表最近下载
pmj2510  LV10 2020年4月29日
baolei  LV8 2019年3月20日
tomarsli  LV52 2018年11月24日
13113674826  LV7 2018年7月2日
love343  LV4 2018年3月16日
lwp011  LV27 2018年3月9日
973783379  LV3 2018年2月24日
李洪健  LV12 2018年1月16日
liisuxi  LV6 2017年12月19日
tonyhawkjm  LV22 2017年12月11日
最代码最近浏览分享源代码列表最近浏览
uni-code_0123  LV1 2023年11月27日
1748938504  LV2 2023年6月30日
黄老邪121 2023年6月13日
暂无贡献等级
cqputyms  LV1 2023年6月7日
暂无贡献等级
神经蛙- 2023年5月17日
暂无贡献等级
18303889377  LV1 2023年5月16日
3516569014  LV5 2023年5月8日
女王不该在山炮村养花  LV8 2023年4月13日
忆丶流年似水 2023年1月16日
暂无贡献等级
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友