对于 Lombok,有人爱它,当然也有人十分讨厌它,爱它的人觉得使得代码变得简洁易读,讨厌它的人觉得破坏了 Java 的编程思想,在编译期增加了很多代码。
对于我来说既不爱它,也不讨厌它,只是觉得程序员的工作太过繁杂,重复的工作量太多,只是想通过我的项目释放一些程序员的工作。
项目地址: https://github.com/braisdom/ObjectiveSql (感兴趣的为国人的开源项目点赞,我的目标是超越 MyBatis, JooQ 等 ORM 框架,成为 Java 领域的主流 ORM 框架)
前面已经有过一次讨论了,只是希望更人关注项目,目前已经 800+ stars
简单展示一下,更多请访问项目主页:
@DomainModel
public class Member {
private String no;
@Queryable
private String name;
private Integer gender;
private String mobile;
private String otherInfo;
@Relation(relationType = RelationType.HAS_MANY)
private List<Order> orders;
}
简单查询
Member.countAll();
Member.count("id > ?", 1);
Member.queryByPrimaryKey(1);
Member.queryFirst("id = ?", 1);
Member.query("id > ?", 1);
Member.queryAll();
关联查询
Member.queryAll(Member.HAS_MANY_ORDERS);
Member.queryByPrimary(1, Member.HAS_MANY_ORDERS);
Member.queryByName("demo", Member.HAS_MANY_ORDERS);
分页查询
Page page = Page.create(0, 10);
PagedList<Member> members = Member.pagedQueryAll(page, Member.HAS_MANY_ORDERS);
注意:示例中的 各类查询 method 和 Member.HAS_MANY_ORDERS 都是动态生成的