`
simplehumn
  • 浏览: 186573 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
社区版块
存档分类
最新评论

struts2.2.1.1+spring3.1+mybatis3.0.4用户登录

阅读更多
一、Mybatis3说明
    Spring3.x没有对mybatis提供支持,虽然Spring的JIRA问题列表中已经接受了整合的请求,但还是被延迟处理了,不过已经有人整合了MyBatis-Spring,需要在项目中加载mybatis-spring-1.0.0-RC2.jar。具体使用方法及代码编写,请参考官网的MyBatis-Spring Reference Simplied Chinese.pdf文件
官网下载地址:http://mybatis.googlecode.com/svn/trunk/doc/zh_cn/

文章最后的附件给出了jar文件、pdf文件及工程源代码。

二、工程结构图

三、所有jar包
    Jar说明:除了struts2.2.1.1、Spring3.1和mybatis3.0.4的基础jar包(包括mybatis-spring整合包),还需要引入
log4j-1.2.15.jar、c3p0-0.9.1.2.jar、mysql-connector-java-5.1.6-bin.jar、struts2-spring-plugin-2.2.1.1.jar、commons-logging-1.0.4.jar


四、建表user
create table user(
	id int(10) unsigned not null auto_increment,
	name varchar(20) default null,
	password varchar(20) default null,
	birthday datetime default null,
	primary key (id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8; 

插入一条数据
insert into user(name,password,birthday)   
values('Tom','1234','1970-03-02');

五、Ibatis3个版本的对比(来源于iteye,地址:http://www.iteye.com/topic/847698)
1. sqlMapConfig.xml文件

2. sqlMap映射文件

3. sqlMap API

六、 关于ibatis2.x升级到ibatis3.x (资料来源于网络)
1. 新的 sqlMapConfig.xml DTD:
<!DOCTYPE configuration PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN" "http://ibatis.apache.org/dtd/ibatis-3-config.dtd">

2. 新的 sqlMap (*.map.xml) DTD
<!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD iBatis Mapper 3.0 //EN" "http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">

3. Configuration XML变化
1> 根节点标签由<sqlMapConfig>  更改为  <configuration>
2> <settings x="y" foo="bar"/>  更改为如下写法
<settings> 
    			<setting name="x" value="y"/> 
    			<setting name="foo" value="bar"/> 
</settings>

3> <typeAlias> 标签必须从 <sqlMap> 节点移动到
<configuration><typeAliases></typeAliases></configuration> 内 ,如下示例:
	<configuration>
		<settings>
		...
		</settings>
		<typeAliases>
			<typeAlias ... />
		</typeAliases>
</configuration>

4. Mapping XML变化
1> 根节点由 <sqlMap>  更改为 <mapper>
2> 属性 parameterClass 必须更改为 parameterType
3> 属性 resultClass 必须更改为 resultType
4> 属性 class 必须更改为 type
5>"groupBy" 属性已经删除.
6> groupBy
在Ibatis2.X中使用方式如下:
<resultMap id="productRM" type="product" groupBy="id">
     <result property="id" column="product_id"/>
     <result property="name" column="product_name"/>
     <result property="category" column="product_category"/>
     <result property="subProducts" resultMap="Products.subProductsRM"/>
</resultMap>

在3.0中使用方式如下:
<resultMap id="productRM" type="product" >
	<id property="id" column="product "/>
	<result property="name " column="product_name "/>
	<result property="category " column="product_category "/>
	<collection property="subProducts" resultMap="Products.subProductsRM"/>
</resultMap>

7> 其他的变更对比如下:
Ibatis2.X:
<resultMap id="invoiceRM" type="invoice" extends="Invoice.abstractInvoiceRM">
	<result property="client" resultMap="Client.clientRM"/>
	<result property="accounts" column="invoiceNumber=INVOICE_NUMBER" select="Invoice.getAccountsSql"/>
	<result property="products" column="productGroup=PRODUCT_GROUP_ID" select="Invoice.getProductsSql"/>
</resultMap>

Ibatis3.0:
<resultMap id="agreementDetailRM" type="agreement" extends="Agreement.agreementRM">
	<association property="client" resultMap="Agreement.clientRM"/>
	<collection property="accounts" column="agreementNumber=AGREEMENT_NUMBER" select="Agreement.getAccountsSql"/>
	<collection property="products" column="serviceGroupId=SERVICE_GROUP_ID" select="Agreement.getProductsSql"/>
</resultMap>

上面的示例中 id被定义在父 result map 中.
8> Dynamic SQL 的变化
项目中最经常使用的动态语句是 "isNotNull". 此处将给出一个替代的方案:
比如下面的写法:
<isNotNull.*?property=\"(.*?)\"

可以这样写:
<if test="$1 != null"

注意:如果使用了<if ..> 关闭标签也必须由</isNotNull> 更改为</if>


分享到:
评论
5 楼 wade200 2013-05-17  
<configuration><typeAliases></typeAliases></configuration> 内 ,如下示例:  
    <configuration>  
        <settings>  
        ...  
        </settings>  
        <typeAliases>  
            <typeAlias ... />  
        </typeAliases>  
</configuration>  
4 楼 simplehumn 2012-04-24  
ljy_888 写道
哥啊,你的代码下载下来都不能运行! 登录后报500错误 !
java.lang.reflect.InvocationTargetException
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)

可能是jdk版本不同或包冲突吧,网上多google
3 楼 ljy_888 2012-04-20  
哥啊,你的代码下载下来都不能运行! 登录后报500错误 !
java.lang.reflect.InvocationTargetException
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
2 楼 simplehumn 2011-08-18  
Jerrick 写道
com.rjxy.util下的SessionFactory中:
private String resource = "com/rjxy/test/SqlMapper.xml";
private SqlSessionFactory sqlSessionFactory= null;
private static SessionFactory sessionFactory = new SessionFactory();

那个resource中引用的去哪找啊?

这个SessionFactory是我之前用的,后来使用spring管理,忘记删掉了
1 楼 Jerrick 2011-08-04  
com.rjxy.util下的SessionFactory中:
private String resource = "com/rjxy/test/SqlMapper.xml";
private SqlSessionFactory sqlSessionFactory= null;
private static SessionFactory sessionFactory = new SessionFactory();

那个resource中引用的去哪找啊?

相关推荐

    struts2.2+spring3.1+Mybatis3.1(SSI框架)开发整个jar包

    基于struts2.2+spring3.1+Mybatis3.1(SSI框架)框架开发下的JAR包整合!

    Spring3.0.1+Mybatis3.0.5+Struts2.2.3.1+velocity1.7+DWZ

    这是一个基于Java技术栈的老式项目配置,主要涵盖了Spring 3.0.1、Mybatis 3.0.5、Struts2.2.3.1、Velocity 1.7以及DWZ jQuery UI框架的整合应用。下面将详细介绍这些组件及其在项目中的作用。 **Spring 3.0.1**: ...

    基于SpringBoot+Spring+SpringMvc+Mybatis+Shiro+Redis 开发单点登录管理系统源码

    基于 SpringBoot + Spring + SpringMvc + Mybatis + Shiro+ Redis 开发单点登录管理系统 基于 SpringBoot + Spring + SpringMvc + Mybatis + Shiro+ Redis 开发单点登录管理系统 基于 SpringBoot + Spring + ...

    struts2.2+velocity+tiles+spring3+mybatis3.05整合

    Struts2.2、Velocity、Tiles、Spring3和MyBatis3.05是Java Web开发中的重要组件,它们的整合构建了一个强大的企业级应用框架。这个实例将深入讲解如何将这些技术有效地融合在一起,创建一个高效且灵活的后端系统。 ...

    基于SpringBoot+Spring Data JPA+mybatis的仓库管理系统源码.zip

    1、基于SpringBoot+Spring Data JPA+mybatis的仓库管理系统源码.zip 2、该资源包括项目的全部源码,下载可以直接使用! 3、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考...

    spring+struts2+hibernate+mybatis

    一个简单的spring+struts2+hibernate+mybatis整合(数据库脚本放在项目资源文件的sql目录下) 因为没想好mvc用springmvc好,还是struts2好 所以没有整合进去

    Spring+MVC+3.0.5+Spring+3.0.5+MyBatis3.0.4全注解实例详解

    在本教程中,我们将深入探讨如何使用Spring、Spring MVC 3.0.5以及MyBatis 3.0.4这三个流行的Java框架构建一个全注解的Web应用程序。这个实例详解将帮助开发者理解如何有效地集成这三个组件,实现高效的数据访问和...

    spring5.x+springmvc5.x+mybatis3.5x+tomcat9+jdk8+maven 项目框架搭建 1.1版本

    本项目框架搭建基于"spring5.x+springmvc5.x+mybatis3.5x+tomcat9+jdk8+maven",这是一个经典且广泛使用的Java开发配置。下面将详细阐述这些组件的功能、相互关系以及如何进行集成。 1. **Spring 5.x**: Spring是...

    struts2+spring+mybatis+easyui的实现

    总的来说,"struts2+spring+mybatis+easyui"的实现是一个标准的Java Web项目结构,它利用Maven进行构建管理,通过整合四个组件,实现了后端的业务逻辑处理、数据访问和前端的用户界面展示。这种架构在实际开发中具有...

    基于SpringMVC+Spring+MyBatis+Maven项目案例源码+数据库.zip

    基于SpringMVC+Spring+MyBatis+Maven项目案例源码+数据库.zip 基于SpringMVC+Spring+MyBatis+Maven项目案例源码+数据库.zip 基于SpringMVC+Spring+MyBatis+Maven项目案例源码+数据库.zip 基于SpringMVC+Spring+...

    基于SpringBoot+Spring Data JPA+mybatis的仓库管理系统.zip

    基于SpringBoot+Spring Data JPA+mybatis的仓库管理系统 基于SpringBoot+Spring Data JPA+mybatis的仓库管理系统 基于SpringBoot+Spring Data JPA+mybatis的仓库管理系统 基于SpringBoot+Spring Data JPA+mybatis的...

    Struts 2.3.1.2+Spring 3.1.1+mybatis 3.1.0 基础框架

    Struts 2.3.1.2、Spring 3.1.1 和 MyBatis 3.1.0 是三个非常重要的开源框架,它们在Java Web开发中扮演着核心角色。这个基础框架组合旨在提供一个高效、灵活且可扩展的开发环境。下面将详细介绍这三个框架及其相互间...

    web框架PPT——Struts 2+Hibernate+MyBatis+Spring 网站开发案例课堂 书籍附带PPT课件

    在现代的Web应用程序开发中,Java Web框架的组合使用已经成为了一种常见的模式,特别是Struts 2、Hibernate、MyBatis和Spring这四个组件的整合,它们分别在MVC架构的不同层面发挥着关键作用。本课程围绕这个组合展开...

    Struts2+maven+spring+mybatis整合实现注册功能实例

    Struts2、Maven、Spring和MyBatis是Java Web开发中的四大框架,它们的整合应用可以构建出高效、模块化的应用程序。这个实例是关于如何将这些技术融合在一起,实现一个用户注册的功能。 首先,Struts2是一个基于MVC...

    struts2+spring+mybatis框架

    Struts2、Spring和MyBatis是Java Web开发中经典的三大框架,它们组合起来可以构建出高效、可维护的Web应用程序。以下是对这三个框架及其整合的详细解释。 **Struts2框架** Struts2是一个基于MVC(Model-View-...

    springboot+maven+shiro+mybatis+mysql+H-ui.admin-v3.1.3.1管理后台

    简单方便,有具体操作说明文档和完整源码,含: ... 后端:springboot+maven+...可前往本人博客查看相关介绍文章:《后端使用springboot+maven+shiro+mybatis+mysql,前端使用H-ui.admin_v3.1.3.1,快速实现管理后台功能》

    struts2+spring 3.1+mybatis3.0

    SSM(Struts2、Spring、MyBatis)框架整合是Java Web开发中常见的技术栈,主要用于构建高效、模块化的应用程序。以下是对这三个组件及其整合的详细解释: **Struts2** 是一个基于MVC(Model-View-Controller)设计...

    spring3.1MVC+mybatis3.1框架集成及事务,分页使用

    在本文中,我们将深入探讨如何将Spring MVC 3.1与MyBatis 3.1框架集成,并讨论其中涉及的关键技术,如事务管理、分页和JSON数据交换。此外,我们还将简要提及开发环境中使用的工具,如Eclipse 4.3、Maven 3.0.5和...

    struts2+spring3.0+mybatis3.0.4集成的邮件发送实例(可上传附件)

    Struts2、Spring3.0和Mybatis3.0.4是Java开发中常见的三大框架,它们各自在应用程序的不同层面提供了强大的支持。本实例将详细讲解如何在这三个框架基础上实现一个邮件发送功能,同时支持附件上传。对于Java开发者来...

Global site tag (gtag.js) - Google Analytics