发布于 2014-11-22 14:30:18 | 235 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的MyBatis教程,程序狗速度看过来!

MyBatis 基于Java的持久层框架

MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。


MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。

改变Mybatis单表操作的新时代!!!

一个极其方便的使用Mybatis单表的增删改查的通用Mapper

有何优点?

不客气的说,使用这个通用Mapper甚至能改变你对Mybatis单表基础操作不方便的想法,使用它你能简单的使用单表的增删改查,包含动态的增删改查.

程序使用拦截器实现具体的执行Sql,完全使用原生的Mybatis进行操作.

你 还在因为数据库表变动重新生成xml吗?还是要手动修改自动生成的insert|update|delete的xml呢?赶紧使用通用Mapper,表的 变动只需要实体类保持一致,不用管基础的xml,你不止会拥有更多的时间陪老婆|孩子|女朋友|打DOTA,你也不用做哪些繁琐无聊的事情,感兴趣了吗? 继续看如何使用吧!!相信这个通用的Mapper会让你更方便的使用Mybatis,这是一个强大的Mapper!!!

不管你信不信,这个项目的测试代码中没有一个Mapper的xml配置文件,但是却可以做到每个Mapper对应上百行xml才能完成的许多功能.没有了这些基础xml信息的干扰,你将会拥有清晰干净的Mapper.xml.

发现BUG可以提Issue,可以给我发邮件,可以加我QQ,可以进Mybatis群讨论.

另外本人明天也会参加OSC北京举办的源创会,各位使用Mybatis的朋友大家可以一起讨论.

作者博客:http://blog.csdn.net/isea533

作者QQ: 120807756

作者邮箱: abel533@gmail.com

这里只举一个使用的例子,详细的说明和使用方法请看文档.

这是实体类UserInfo,对应user_info表,主键字段id,使用自动增长

public class UserInfo {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String username;
private String password;
private String usertype;
private String realname;
private String qq;
private String email;
private String address;
private String tel;

//省略getter和setter
}

下面是继承了通用接口的UserInfoMapper

public interface UserInfoMapper extends Mapper<UserInfo> {
}

调用的例子,和平时使用的Mapper没有区别

SqlSession sqlSession = MybatisHelper.getSqlSession();
try {
//获取Mapper
UserInfoMapper mapper = sqlSession.getMapper(UserInfoMapper.class);
UserInfo userInfo = new UserInfo();
userInfo.setUsername("abel533");
userInfo.setPassword("123456");
userInfo.setUsertype("2");
userInfo.setEmail("abel533@gmail.com");
//新增一条数据
Assert.assertEquals(1, mapper.insert(userInfo));
//ID回写,不为空
Assert.assertNotNull(userInfo.getId());
//6是当前的ID
Assert.assertEquals(6, (int)userInfo.getId());
//通过主键删除新增的数据
Assert.assertEquals(1,mapper.deleteByPrimaryKey(userInfo));
} finally {
sqlSession.close();
}

执行测试输出的日志:

Preparing: INSERT INTO USER_INFO 
		   (ID,USERNAME,PASSWORD,USERTYPE,REALNAME,QQ,EMAIL,ADDRESS,TEL) 
		   VALUES ( ?,?,?,?,?,?,?,?,? ) 
Parameters: null, abel533(String), 123456(String), 
			2(String), null, null, abel533@gmail.com(String), null, null
Updates: 1
Executing: CALL IDENTITY() 
Columns: @p0
Row: 6
Total: 1
Preparing: DELETE FROM USER_INFO WHERE (ID = ? ) 
Parameters: 6(Integer)
Updates: 1

这是一个新生的开源项目

首先感谢您能看到这里!

这是一个新生的项目,一切都刚刚开始,虽然项目中包含大量的测试,但是仍然会有很多未知的bug存在,希望各位能够在使用过程中发现问题时及时反馈,欢迎各位fork本项目进行参与!



历史版本 :
Mybatis 通用 Mapper 3.4.5 发布,增加代码生成器插件
MyBatis 逆向工程 MyBatis-CMEU v2.1.2 发布
Mybatis 分页插件 PageHelper 5.1.2 发布
mybatis-plus 2.1.1 发布,新增 mybatis 多租户 SQL 解析
MyBatis-Guice 3.10 发布,修复多项错误
mybatis-plus 2.1.1-SNAPSHOT,代号:小锅盖
MyBatis Ignite 1.0.6 发布,MyBatis 缓存插件
MyBatis 3.4.5 发布,Java 数据持久层框架
mybatis-plus 2.1.0 发布,代号:小秋秋
MyBatis 逆向工程 MyBatis-CMEU v2.1.0 发布
Mybatis 分页插件 PageHelper 5.0.4 发布
Mybatis-Plus 2.0.9 发布,简化开发 mybatis 快速入门
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务