java里面么有好用的db类和orm,决定自己封装一下。
java里面的orm和太难用了,写不完的xml,决定按照php的orm操作模式封装一个。
目前实现了链式where、orwhere和基本的增删改查以及join查询映射实体类。
package com.example.test07.model;
import com.example.test07.entity.Emp;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@SpringBootTest
@Component
class DbImplTest {
@Autowired
private JdbcTemplate jdbcTemplate;
@Test
void testUpdate() {
//修改
EasyDb easyDb1 = new EasyDb(jdbcTemplate);
Map<String, String> update = new HashMap<>();
update.put("name", "qweqw");
update.put("age", "1");
easyDb1.table("sg_emp")
.where("id>", "100")
.where("id<", "1000")
.update(update);
}
@Test
void testDelete() {
//删除
EasyDb easyDb = new EasyDb(jdbcTemplate);//选中连接池
easyDb.table("sg_emp")
.where("id>", "1")
.where("id<", "10")
.where("aga>", "12312")
.orWhere("age<", "10")
.delete();
}
@Test
void testFind() {
//查询
EasyDb easyDb = new EasyDb(jdbcTemplate);//选中连接池
List list = easyDb.table("sg_emp")
.join("left join sg_admin_users on sg_admin_users.id=sg_emp.id")
.where("sg_emp.id=", "1")
.orWhere("sg_emp.id=", "2")
.find(Emp.class, "sg_emp.name", "sg_emp.sex");
System.out.println(list);
}
@Test
void testInsert() {
//添加
EasyDb easyDb = new EasyDb(jdbcTemplate);//选中连接池 多数据库
Object[] values = {null, "123", 1, 1};
Long id = easyDb.
table("sg_emp")
.insert(values);//插入并返回主键id
System.out.println(id);
}
}
Java 不是有一个叫 JDBC Template 的东东么?
spring data jpa 看看那
mybatis-plus