打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Jfinal 数据操作模块 db.record v 0.0.4 发布
userphoto

2023.02.25 湖南

关注

添加:

    public static void initAlias(String configName,String jdbcURL, String jdbcUser, String jdbcPassword) {
		init(configName,"com.mysql.cj.jdbc.Driver",jdbcURL,jdbcUser,jdbcPassword,null,null,false);
	}	
	public static void initAlias(String configName,String jdbcDriver, String jdbcURL, String jdbcUser, String jdbcPassword) {
		init(configName,jdbcDriver,jdbcURL,jdbcUser,jdbcPassword,null,null,false);
	}

修复:初始化数据源名称错误

简介:

通过 record (map) 的方式操作表数据,似 orm 非 orm,半对像操作。

本类库基于 jfinal V1.9 改造,写一些简单的功能的时候特别适合使用,比如要转结数据,比如初始数据,相比 orm 不需要搞一堆对像,相比存 sql 不需要搞一些 insert update。

通过 sql 语句查询某几个表的数据返回 record,直接将该对像(不是写 sql)保存或者更新到一个新表中。这种方式特别省事

apache dbutils 对数据库的支持已足够好,但还是略显烦杂,当然也可以基于 dbutils 实现 jfinal 的操作方式

相比 Spring jdbcTemplate 那肯定是少了 N 多依赖

相比 jdbc 操作那肯定方便很多

db.record

通过 record (map) 的方式操作表数据,似 orm 非 orm, 半对像操作 本类库基于 jfinal V1.9 改造

maven 使用

<dependency>
	<groupId>com.liucf</groupId>
	<artifactId>db.record</artifactId>
	<version>0.0.4</version></dependency>

示例

1. 初始化 Db

//初始化数据连接Db.init("jdbc:mysql://host:port/test?characterEncoding=utf-8&autoReconnect=true&autoReconnectForPools=true&serverTimezone=GMT%2B8","root", "xxx");//打印sql日志Db.use().setShowSql(true);

2. 查询数据

//简单查询List<Record> baskets = Db.find("select * from base_basket");for (Record record : baskets) {	System.out.println(record.getStr("id"));	System.out.println(record.toJson());
}//根据id查询Record record = Db.findById("base_basket", "001")//查询首条数据Db.findFirst("select * from base_basket where id = ?", "001")//分页查询 count参数决定是否统计总行数Page<Record> p = Db.paginate(1, 2, "select * from base_basket where id>?", false, "1000");
p.getList();
p.getPageNumber();
p.getPageSize();
p.getTotalPage();
p.getTotalRow();

3. 新增

Record r = new Record();
r.set("id", "ddddd");
Db.save("base_basket", r);

4. 更新

Record r = new Record();
r.set("id", "ddddd");
Db.update("base_basket", r);
//主键名称非id
//Db.update("base_basket", "id", r);

4. 删除

Db.deleteById("base_basket", "001");//Db.update("delete from base_basket");

5. 事务

Db.tx(new TransactionWrap() {		@Override
		public boolean run() throws SQLException {			try {
				Record r = new Record();
				r.set("id", "ddddd");
				Db.save("base_basket", r);
				
				r.set("id", "ddddd");
				r.set("remarks", "remarks");
				Db.update("base_basket", "id", r);
			} catch (Exception e) {				return false;
			}			return true;
		}
	});
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
JFinal独创Db + Record形式示例
jfinal 事务使用,失败回滚
JFinal
C++ ODBC 连SQL数据库
NET5 ORM 六大新功能 - SqlSugar 5.0.2.7
初识DB4O - 实践-全程 - BlogJava
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服