简化 JFinal 数据库操作 JFinal-DbHelper

码农软件 · 软件分类 · ORM/持久层框架 · 2019-09-23 13:12:51

软件介绍

JFinal-DbHelper

简化的 JFinal 数据库操作,透明操作 Redis,让你全心安心做你的业务,数据缓存,统统把你解决掉。

核心组件

  • DbHelperKit: 封装了 JFinal DbKit,直接使用 Map 来装数据库的每一行数据;

  • DbHelperTx: 简化了 Tx 操作;

  • DataRecordModel: 数据库表的工具 Model, 继承这个 Model,加上和数据库字段一样的属性;

  • DBService: 提供了常见的 CRUD, 可以简单的 CRUD 同时把数据也“偷偷”的写到了 Redis 哦;

怎样使用

  1. 假设你的表是这样的:
    CREATE TABLE `user` (
     `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
     `name` varchar(255) DEFAULT NULL,
     PRIMARY KEY (`id`),
     KEY `id` (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4

  2. 创建一个 Model:User, 她是这样的:

    @Table(name = User.TABLE)
    public class User extends DataRecordModel<User> {
    
    private static final long serialVersionUID = 7098160284590588258L;
    
    public static final String TABLE = "user";
    public static final String TABLE_AS = "u";
    
    // SQL Fields
    public static final String ID = "id";
    public static final String NAME = "name";
    //SQL Field As
    public static final String ID_AS = "id";
    public static final String NAME_AS = "name";
    
    @Table.PrimaryKey
    @Table.Column(name = User.ID, as = User.ID_AS, originType = Table.ColumnOriginType.BIGINT)
    public String id;
    
    @Table.Column(name = User.NAME, as = User.NAME_AS, originType = Table.ColumnOriginType.STRING)
    public String name;
    }
  3. 接下来你再创建一个 Service,她是这样的:

public class UserService extends DBService {

    private static final long serialVersionUID = -6341896364271284419L;

    //这里放自定义的其他方法
}

4.在加上一个 RedisCacheService, 她是这样的:

public class UserRedisService extends RedisCacheService {

    private static final long serialVersionUID = 8673372135373269417L;

    //这里放自定义的其他方法
}

5.完成了上面的工作, 你就可以开始使用了哦:

//设置产品 name
        ProductKit.PRODUCT_NAME = "zcq";
        
        User user = new User();
        user.name = "BruceZCQ";
        
        //save
        UserService userService = new UserService();
        boolean ret = userService.save(user);
        System.out.println("save =="+ret);
        
        //find id = 6
        user.id = "6";
        Map<String, Object> find = userService.findOne(user);
        System.out.println("find =="+find);
        //find to User
        User otherUser = user.parser(find);
        System.out.println("other user == "+otherUser);
        //findall
        Object all = userService.findAll(user);
        System.out.println("findall =="+all);
        //update BruceZCQ to newName
        user.name = "newName";
        ret = userService.update(user);
        System.out.println("update =="+ret);
        //delete id = 10
        user.id = "10";
        ret = userService.delete(user);
        System.out.println("delete=="+ret);

本文地址:https://codercto.com/soft/d/15225.html

C++ Primer 中文版(第 5 版)

C++ Primer 中文版(第 5 版)

[美] Stanley B. Lippman、[美] Josée Lajoie、[美] Barbara E. Moo / 王刚、杨巨峰 / 电子工业出版社 / 2013-9-1 / CNY 128.00

这本久负盛名的 C++经典教程,时隔八年之久,终迎来史无前例的重大升级。除令全球无数程序员从中受益,甚至为之迷醉的——C++ 大师 Stanley B. Lippman 的丰富实践经验,C++标准委员会原负责人 Josée Lajoie 对C++标准的深入理解,以及C++ 先驱 Barbara E. Moo 在 C++教学方面的真知灼见外,更是基于全新的 C++11标准进行了全面而彻底的内容更新。......一起来看看 《C++ Primer 中文版(第 5 版)》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具