对于 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 都是动态生成的
1
salaryfly 2020-12-05 21:24:11 +08:00
很好的想法,支持一下!
|
3
night98 2020-12-05 21:43:17 +08:00
简单看了下,感觉和 mybatis-dynamic-sql 有点像,看起来还是不错的样子,但还是希望少用字符串方式,例如:
```Member.count("id > ?", 1);``` 还是希望类似 mybatisplus 一样,支持 Object::field 这种方式,后期字段名称修改也能很方便 |