JRT支持人大金仓

发布时间:2023年12月26日

之前对接了PostGreSql和iris和Cache库,表的主键列都是RowID,列同时区分大小写带引号。这次试试连人大金仓库,主键列不叫RowID了,改id,然后不使用大小写。

代码生成器生成的代码效果
在这里插入图片描述
测试表
在这里插入图片描述

生成实体
在这里插入图片描述
生成后台
在这里插入图片描述

生成界面
在这里插入图片描述
驱动类实现,这里处理列名不用拼引号了

package JRT.Dal.Base;
import JRT.Core.MultiPlatform.JRTConfigurtaion;
import JRT.Core.Util.Convert;

/**
 * 人大金仓库连接驱动
 * jdbc:kingbase8://10.8.4.66:54321/模式名称?characterEncoding=utf8
 */
public class KingBase  implements JRT.DAL.ORM.DBUtility.IDbFactory {
    /**
     * 得到数据库类型
     *
     * @return
     */
    public String GetStrDbType() {
        return "kingbase";
    }

    /**
     * 得到数据库连接串,先写死,后面从配置取
     *
     * @return
     */
    public String GetConnectionString() throws Exception {
        System.out.println("连接串:"+ JRTConfigurtaion.Configuration("ConnectionString"));
        return JRTConfigurtaion.Configuration("ConnectionString");
    }

    /**
     * 得到数据库用户名
     *
     * @return
     */
    public String GetUserName() throws Exception {
        return JRTConfigurtaion.Configuration("UserName");
    }

    /**
     * 得到数据库密码
     *
     * @return
     */
    public String GetUserPass() throws Exception {
        return JRTConfigurtaion.Configuration("UserPass");
    }

    /**
     * 得到返回查询的RowID的SQL语句,供插入数据得到RowID用
     *
     * @return
     */
    public String GetReturnRowIDSql() {
        return " RETURNING id";
    }

    /**
     * 处理表名称,用来适配不同数据库间的属性命名差异
     *
     * @param tableName 表名
     * @return
     */
    public String DealTableName(String tableName) {
        return tableName;
    }

    /**
     * 处理属性名字
     *
     * @param propertyName 属性名字
     * @return
     */
    public String DealPropertyName(String propertyName) {
        return propertyName;
    }

    /**
     * 处理Sql参数
     *
     * @param propertyName 属性名字
     * @return
     */
    public String DealSqlPara(String propertyName) {
        return "?";
    }

    /**
     * 处理top的SQL语句
     * @param sql
     * @param topNum
     * @return 返回拼好的topSQL
     */
    public String DealTopSql(String sql,int topNum)
    {
        return sql+" limit "+topNum;
    }

    /**
     * 加载驱动
     *
     * @return
     */
    public String GetDriver() {
        return "com.kingbase8.Driver";
    }

    /**
     * 得到初始化连接串大小
     *
     * @return
     */
    public int GetInitPoolSize() throws Exception {
        String initSize = JRTConfigurtaion.Configuration("PoolInitPoolSize");
        return Convert.ToInt32(initSize);
    }

    /**
     * 得到最大连接串大小
     *
     * @return
     */
    public int GetMaxPoolSize() throws Exception {
        String maxSize = JRTConfigurtaion.Configuration("PoolMaxPoolSize");
        return Convert.ToInt32(maxSize);
    }

}

配置使用的驱动
在这里插入图片描述
配置连接串
在这里插入图片描述

这样就把支持扩展到了人大金仓了

文章来源:https://blog.csdn.net/zhanglianzhu_91/article/details/135229696
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。