Skip to content
This repository was archived by the owner on Jul 11, 2025. It is now read-only.

TLJavaHome/blade-jdbc

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

blade-jdbc

Build Status last-version License

blade-jdbc 是基于 sql2o 开发的一个简洁的ORM库,可作为学习使用,内置连接池,支持缓存数据。

使用

Maven仓库地址

<dependency>
    <groupId>com.bladejava</groupId>
    <artifactId>blade-jdbc</artifactId>
    <version>0.1.1</version>
</dependency>
// 连接数据库
DB.open("com.mysql.jdbc.Driver", "jdbc:mysql://127.0.0.1/test", "root", "root");

// 查询列表
List<User> users = AR.find("where age > 20 order by id desc limit ?,?", 
	0, 3).list(User.class);

// 按主键查询
User user = AR.findById(User.class, 25);

// 查询记录数
long c1 = AR.executeSQL("select count(1) from user_t").count();

long c2 = AR.find("select count(1) from user_t").first(Long.class);

// 使用对象查询
QueryParam queryParam = QueryParam.me();
queryParam.eq("age", 19).lt("update_time", 1409126303).like("title", "王尼玛%");

List<Post> posts = AR.find(queryParam).list(Post.class);

// 更新操作
int c1 = AR.executeSQL("update user_t set password = 'haha' where id = 26").executeUpdate();

int c2 = AR.executeSQL("update user_t set password = ? where id = ?", "haha2", 26).executeUpdate();

int c3 = AR.update("update user_t set password = 'haha3' where id = 26").executeUpdate();

int c4 = AR.update("update user_t set password = ? where id = ?", "haha4", 26).executeUpdate();

// 启用缓存
DB.setCache(new FIFOCache());

数据库实体类的约束条件:

  • 实现 java.io.Serializable 接口
  • 使用 @Table 注解标识数据库表名,PK代表主键(不填写默认为id)
@Table(value = "user_t", PK = "id")
public class User implements Serializable{
	
	private Integer id;
	private String user_name;

	public User() {
		
	}

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getUser_name() {
		return user_name;
	}

	public void setUser_name(String user_name) {
		this.user_name = user_name;
	}
}

测试代码

About

Lightweight JDBC lib

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%