2 Star 0 Fork 26

国家一级失眠 / mybatis-dao

forked from zhangygit / mybatis-dao 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

通用Mybatis-DAO

通用DAO简介及特征

通用Dao是一种持久化解决方案。 具有以下特征:

  • 1.把单表具有重复性的操作抽离出来,避免创建不必要的xml文件
  • 2.不影响原mybatis框架的使用
  • 3.SQL语句和java代码的分离
  • 4.极大的缩减使用mybatis 和 spring 集成框架下的工作量
  • 5.可支持uuid和mysql自增的主键生成策略

使用说明:作用于mybatisDAO层,依附mybatis-spring

待改进:

  • 1.目前只支持mysql
  • 2.其他

※实体的增删改查不需要写sql,支持SQL自动生成

接口定义[MessageDao.java]

public interface MessageDao extends IBaseDao<Message,Long>{}

接口实现定义[MessageDaoImpl.java]

@Repository
public class MessageDaoImpl extends BaseDao<Message,Long> implements MessageDao {}

BaseDAO实现的接口

<!-- 插入单条信息 -->
public PK create(T object);
<!-- 编辑单条信息 -->
public int update(T object);
<!-- 删除单条信息 -->
public int remove(T object);
<!-- 统计信息条数 -->
public int count(T object);
<!-- 批量添加多条信息 -->
public void createOfBatch(List<T> list);
<!-- 批量更新多条信息 -->
public int updateOfBatch(List<T> list);
<!--批量删除多条信息 -->
public int removeOfBacth(List<T> list);
<!-- 获取多条信息 -->
public List<T> queryByObject(T object);
<!-- 批量获取多条信息 -->
public List<T> queryByList(List<T> list);
<!-- 带参数的查询 排序分页 -->
public List<T> queryListByCriteria(T object,String orderby,Integer offset,Integer limit);
<!-- 带复杂参数的查询 排序分页-->
public List<T> queryListByBatchCriteria(List<T> list,String orderby,Integer offset,Integer limit);
<!-- 根据主键值查找一条记录 -->
public T findById(PK id);
<!-- 根据主键删除一条记录 -->
public boolean removeById(PK id);

通用DAO接口配置

    <!-- 需要mybatis-spring.jar -->
<import resource="classpath:com/rework/joss/persistence/convention/baseDao.xml" />

测试代码

public void testCreate() {
	UserDTO user = new UserDTO();
	user.setUserName("huttol");
	userDAO.create(user);
}

public void testRemoveOfBacth() {
	UserDTO user2 = new UserDTO();
	user2.setUserName("list2");
	int remove =userDAO.removeOfBacth(ConventionUtils.toList(user2));
	Assert.assertEquals(1, remove);
}

public void testRemoveById() {
	boolean t = userDAO.removeById("200cb94c99e64b21aed5e10b94f09eeb");
	Assert.assertEquals(true, t);
}

空文件

简介

mybatis-spring 的通用dao,极方便的单表增删改查操作,免去了对相同方法配置过多的xml文件的烦恼,dao层继承该通用接口,仍支持mybatis框架原有特性,极大提高开发效率 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/panmingzhi/mybatis-dao.git
git@gitee.com:panmingzhi/mybatis-dao.git
panmingzhi
mybatis-dao
mybatis-dao
master

搜索帮助