lit-jdbc 简单易用的轻量级 ORM 框架 项目简介
lit-jdbc 是一款简单易用的轻量级 ORM 框架。 <dependency>
<groupId>com.github.liulus</groupId>
<artifactId>lit-jdbc</artifactId>
<version>2.0</version>
</dependency>使用 API 的方式构建 SQL , 简单安全, 具体的 SQL 执行器是 spring jdbclit-jdbc 可以很简单的和 spring 集成, 只需在配置类上加一个注解 @EnableLitJdbc 即可 @Configuration
@EnableLitJdbc
public class SpringConfig {
// 其他配置
}配置完成后, 就可以在 service 或其他需要的地方注入 JdbcTools 对实体进行操作基本的增删改 可以查看详细的文档, 这里简单介绍下查询的写法:简单的查询条件 where 方法是实体的属性, 后面的是条件, sql 的条件都有对应的方法然后直接调用 list() 获取查询列表, 还可以使用的方法有 count() 获取计数, single() 获取单条结果 @Test
public void testSelect6() {
// 指定条件 code < ? and price > ? and code in (?, ?, ?), ? 参数即为条件逻辑方法中的值
List<Goods> goods = jdbcTools.select(Goods.class)
.where("code").lessThan(1123L)
.and("price").graterThan(548D)
.and("code").in(1027L, 1078L, 1094L)
.list();
}还可以指定分页参数获取分页列表 @Test
public void testSelect7() {
// 指定条件 code < ? and ( price < ? or category = ? ) ? 参数即为条件逻辑方法中的值
List<Goods> goodsList = jdbcTools.select(Goods.class)
.where("code").lessThan(1123L)
.and()
.bracket("price").lessThan(28.8D)
.or("category").equalsTo("100232")
.end()
.page(1, 10)
.list();
// 分页信息
PageInfo pageInfo = ((PageList) goodsList).getPageInfo();
}多表关联查询 @Test
public void testSelect5() {
Goods single = jdbcTools.select(Goods.class)
.join(Supplier.class)
.additionalField(Supplier.class, "code", "name")
.alias("supplierCode", "supplierName")
.on(Goods.class, "supplierCode").equalsTo(Supplier.class, "code")
.where("goodsId").equalsTo(1203L)
.single();
}
<groupId>com.github.liulus</groupId>
<artifactId>lit-jdbc</artifactId>
<version>2.0</version>
</dependency>使用 API 的方式构建 SQL , 简单安全, 具体的 SQL 执行器是 spring jdbclit-jdbc 可以很简单的和 spring 集成, 只需在配置类上加一个注解 @EnableLitJdbc 即可 @Configuration
@EnableLitJdbc
public class SpringConfig {
// 其他配置
}配置完成后, 就可以在 service 或其他需要的地方注入 JdbcTools 对实体进行操作基本的增删改 可以查看详细的文档, 这里简单介绍下查询的写法:简单的查询条件 where 方法是实体的属性, 后面的是条件, sql 的条件都有对应的方法然后直接调用 list() 获取查询列表, 还可以使用的方法有 count() 获取计数, single() 获取单条结果 @Test
public void testSelect6() {
// 指定条件 code < ? and price > ? and code in (?, ?, ?), ? 参数即为条件逻辑方法中的值
List<Goods> goods = jdbcTools.select(Goods.class)
.where("code").lessThan(1123L)
.and("price").graterThan(548D)
.and("code").in(1027L, 1078L, 1094L)
.list();
}还可以指定分页参数获取分页列表 @Test
public void testSelect7() {
// 指定条件 code < ? and ( price < ? or category = ? ) ? 参数即为条件逻辑方法中的值
List<Goods> goodsList = jdbcTools.select(Goods.class)
.where("code").lessThan(1123L)
.and()
.bracket("price").lessThan(28.8D)
.or("category").equalsTo("100232")
.end()
.page(1, 10)
.list();
// 分页信息
PageInfo pageInfo = ((PageList) goodsList).getPageInfo();
}多表关联查询 @Test
public void testSelect5() {
Goods single = jdbcTools.select(Goods.class)
.join(Supplier.class)
.additionalField(Supplier.class, "code", "name")
.alias("supplierCode", "supplierName")
.on(Goods.class, "supplierCode").equalsTo(Supplier.class, "code")
.where("goodsId").equalsTo(1203L)
.single();
}