美文网首页
java实现多数据库连接查询

java实现多数据库连接查询

作者: 熙航君 | 来源:发表于2020-05-08 15:32 被阅读0次
    /**
     * 根据用户名id获取用户名工号以及所属机构
     * 
     * @author richard
     * @date 20200508
     * @return
     * @throws Exception
     */
    @SuppressWarnings("resource")
    public static void main(String[] args) {
        // 定义我们需要的变量
        // 与特定数据库的连接(会话)
        Connection ct1 = null;
        Connection ct2 = null;
        // 表示预编译的sql语句的对象
        // 把sql语句当作一个PreparedStatement对象
        PreparedStatement ps1 = null;
        PreparedStatement ps2 = null;
        // 表示数据库结果集的数据表,通常通过执行查询数据库的语句生成  select
        ResultSet rs1 = null;
        ResultSet rs2 = null;
        try {
            // 1.加载驱动
            Class.forName("oracle.jdbc.driver.OracleDriver");
            // 2.得到连接
            ct1 = DriverManager.getConnection("jdbc:oracle:thin:@ip:1521:实例名1", "账号", "密码");
            // 3.创建PreparedStatement接口引用对象  emp后面不要加;
            ps1 = ct1.prepareStatement("select organizcode,personname from sys_personnel where personid = 'system'");
            // 4.完成查询
            rs1 = ps1.executeQuery();

            while (rs1.next()) {
                String personname = rs1.getString("personname");
                String organizcode = rs1.getString("organizcode");
                System.out.println("登录人:" + personname);
                System.out.println("机构ID:" + organizcode);
                ct2 = DriverManager.getConnection("jdbc:oracle:thin:@ip:1521:实例名2", "账号", "密码");
                // 3.创建PreparedStatement接口引用对象  emp后面不要加;
                ps2 = ct2.prepareStatement("select text from dim0000114 where code='"+organizcode+"'");
                // 4.完成查询
                rs2 = ps2.executeQuery();

                while (rs2.next()) {
                    System.out.println("机构名称:" + rs2.getString("text"));
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

相关文章

网友评论

      本文标题:java实现多数据库连接查询

      本文链接:https://www.haomeiwen.com/subject/qavfnhtx.html