beeltsql介绍和使用

beeltsql:BeetSql是一个全功能DAO工具,适用于承认以SQL为中心,同时又需求工具能自动能生成大量常用的SQL的应用.
例子:
注意点:

  1. 通过pro生成数据库表,需要:注明主键(@AutoID)后复合主键(@AssignID),如果有id,默认以id为主键。
  2. 使用sql文件:sql文件的地址:在src目录下建立一个sql目录,或者maven工程的resources目录(new ClasspathLoader("/sql")),其文件放在/sql下,并且文件命名我***.md或者***.sql
  3. 使用sql文件的路径映射:sqlId 到sql文件的映射是通过类SQLIdNameConversion来完成的:,beetlsql会在根目录下寻找/user.sql,/user.md ,也会找数据库方言目录下寻找,例如:mysql数据库,则优先寻找/mysql/user.md,/mysql/user.sql 然后在找/user.md,/user.sql.
  4. 命名转换问题:
    1. DefaultNameConversion 数据库名和java属性名保持一致
    2. UnderlinedNameConversion 将数据库下划线去掉,首字母大写(SYS_USER-SysUser)
    3. JPA2NameConversion 支持JPA方式的映射:
    规则如下: 1 在类名前使用Table注解映射的表名,例如:@Table(name = “PF_TEST”),表示映射的表名是PF_TEST; 2 忽略静态变量以及被@Transient注解的属性; 3 默认属性名与库表的字段名保持一致,如果不一致时,可以使用@Column注解。
    4.自定义命名转化:实现DefaultNameConversion实现方式
  public class DefaultNameConversion extends NameConversion {
    @Override
    public String getTableName(Class<?> c) {
        Table table = (Table)c.getAnnotation(Table.class);
        if(table!=null){
            return table.name();
        }
        return c.getSimpleName();
    }

    @Override
    public String getColName(Class<?> c, String attrName) {
        return attrName;
    }

    @Override
    public String getPropertyName(Class<?> c, String colName) {
        return colName;
    }

}

5.通过mapper来访问数据库:

在这里插入图片描述6. sql语句里的ORM查询

使用需要SqlManager,创建SqlManager
在这里插入图片描述BeetlSql2.8.11 提供了 SQLManagerBuilder来链式创建SQLManager

SQLManager sqlManager = SQLManager.newBuilder(driver, url, userName, password).addInterDebug().build();

重点sql文件的书写:
在这里插入图片描述 注释是以* 开头,注释语句不作为sql语句
默认的ClasspathLoader采用了这种方法,你可以实现SQLLoader来实现自己的格式和sql存储方式,如数据库存储
采用sql 自己的注释符号,"-- "
beetl注释/* */
sql整个语句注释在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值