掘金搬运^

轻松解决java连接Intersystem公司iris cache数据库

 

小知识,大挑战!本文正在参与“程序员必备小知识”创作挑战活动

1、设置对应的枚举类


/**
 * 连接数据需要的常量
 * 这里只是测试临时使用,项目中应该配置在配置文件中
 * 如果需要rpc连接,请在github下面留言
 *
 * @author 福小林
 * https://github.com/ourlang
 */
public enum CacheConnectInfo {
    /**
     * 连接cache数据库的驱动字符串
     */
    CONNECT_DRIVER("com.intersys.jdbc.CacheDriver"),
    /**
     * 连接cache数据库的连接地址和数据库
     */
    CONNECT_URL("jdbc:Cache://127.0.0.1:51773/USER"),
    /**
     * 连接cache数据库的账号
     */
    USERNAME("_SYSTEM"),
    /**
     * 连接cache数据库的密码
     */
    PASSWORD("system");

    private String connectInfo;

    CacheConnectInfo(String connectInfo) {
        this.connectInfo = connectInfo;
    }

    public String getConnectInfo() {
        return connectInfo;
    }
}

2 连接cache 数据库代码示例

import com.intersys.jdbc.CacheDataSource;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

/**
 * 连接cache 数据库代码示例
 * 运行之前请先导入lib下面的jar包
 *
 * @author 福小林
 * https://github.com/ourlang
 */
public class HelloCache {
    public static void main(String[] args) {
        try {
            System.out.println("----------------------------------准备连接数据库----------------------------------");
            Class.forName(CacheConnectInfo.CONNECT_DRIVER.getConnectInfo()).newInstance();
            CacheDataSource ds = new CacheDataSource();
            ds.setURL(CacheConnectInfo.CONNECT_URL.getConnectInfo());
            System.out.println("连接地址:" + ds.getURL());

            System.out.println("----------------------------------开始连接数据库----------------------------------");
            Connection dbconn = ds.getConnection(CacheConnectInfo.USERNAME.getConnectInfo(), CacheConnectInfo.PASSWORD.getConnectInfo());
            System.out.println("数据库连接信息:" + ds.getUser() + "-----" + ds.getPassword());
            String sql = "SELECT ID, ConfigActive, ConfigCode, ConfigDesc, ConfigEdit, ConfigExplain, ConfigType, ConfigValue FROM SQLUser.MKB_Config";
            System.out.println("SQL:" + sql);
            int scroll = ResultSet.TYPE_SCROLL_SENSITIVE;
            int update = ResultSet.CONCUR_UPDATABLE;
            System.out.println("----------------------------------查询开始----------------------------------");
            PreparedStatement ps = dbconn.prepareStatement(sql, scroll, update);
            ResultSet rs = ps.executeQuery();
            rs.first();
            System.out.println("\n Old ConfigCode = " + rs.getString("ConfigCode"));
            System.out.println("----------------------------------修改字段信息开始----------------------------------");
            rs.updateString("ConfigCode", "123456");
            rs.updateRow();
            System.out.println("----------------------------------修改字段结束----------------------------------");
            System.out.println("\n New ConfigCode = " + rs.getString("ConfigCode") + "\n");
            System.out.println("----------------------------------关闭连接----------------------------------");
            ps.close();
            rs.close();
            dbconn.close();
            System.out.println("----------------------------------查询结束----------------------------------");
        } catch (Exception ex) {
            System.out.println("----------------------------------数据库连接失败----------------------------------");
            System.out.println("TinyJDBC caught exception: " + ex.getClass().getName() + ": " + ex.getMessage());
        }
    }
}

3 完整代码地址

https://github.com/ourlang/cacheDemo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值