Yobatis DAO 是一款以 Mybatis-Generator 为核心的 eclipse 插件;可以按照 DAO 层形式生成 Mybatis 相关代码。如果项目是基于 MySQL/Mybatis/SpringMVC/Servlet(tomcat),该插件可生成 Mybatis-Generator 的配置文件,减少手写配置工作量。表结构变更以后,只需要点击鼠标就可以更新相关代码,yobatis 会保留手写部分的代码(java 和 xml)。
如果项目是基于 MySQL/Mybatis/SpringMVC/Servlet(tomcat),可以尝试使用 yobatis 自动生成配置文件,如下图:
Yobatis 会根据数据库表生成相应的 DAO, domain, mybatis xml 文件, 以及构造查询条件的类 XxxCriteria。假设有一张 book 表:
+--------+------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------+------------+------+-----+---------+----------------+ | id | bigint(20) | NO | PRI | NULL | auto_increment | | name | char(100) | YES | | NULL | | | author | bigint(20) | YES | | NULL | | +--------+------------+------+-----+---------+----------------+
// 根据主键查询记录
@Override
@Transactional(rollbackFor = Exception.class)
public Book getById(Long id) {
return bookDao.selectOne(id);
}
// 查询名字为 name, 或作者是 authorId 的所有书籍: where (name = ?) or (author_id = ?)
@Override
@Transactional(rollbackFor = Exception.class)
public List nameEqualOrAuthorIs(String name, long authorId) {
BookCriteria criteria = BookCriteria.nameEqualTo(name).or().andAuthorEqualTo(authorId);
return bookDao.selectList(criteria);
}
更多详细信息请移步: https://github.com/linbaiye/yobatis
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.