dblink java_java连接3种数据库 JdbcLinkDB --201801

先看这篇记录

java连接3种数据库 JdbcLinkDB 测试 --201801 配置文件放在jar外面 读取,遇到的问题 - 海蓝steven - 博客园

https://www.cnblogs.com/rogge7/p/8269842.html

//-------------------------------

需求:

1、同时测试 mssql,mysql,oracle 三种数据库

2、jar包的形式,配置文件在jar包外面,随时修改

1940a11dae9bf66451a5e3a0f013794d.png

需要找到连接这三个数据库的驱动jar包,添加到项目中

过程:

刚开始不小心打包成jar包 运行jar 提示以下异常:

4c883c42a6c2212ed9c67fc654296c82.png

改成:把项目打包成Runnable jar,选择主函数入口

83b88289f326a2e2bbbbda272ef02027.png

运行成功,文件结构如下,考过去使用,Jdk1.8.0_102

72c45071c2e66dcfaed18273d2125df0.png

一些文件:

start.bat 文件

java -version

java-jar JdbcLinkDB.jar

pause

jdbcCon.properties文件

# connect oracle

#driver=oracle.jdbc.driver.OracleDriver

#url= jdbc:oracle:thin:@localhost:1521:orcl

#username=system

#password= 123333# connect mssql

#driver=com.microsoft.sqlserver.jdbc.SQLServerDriver

#url= jdbc:sqlserver://127.0.0.1:1433;DatabaseName=GpsDB

#username =sa

#password= 123456# connect mysql

driver=com.mysql.jdbc.Driver

url= jdbc:mysql://121.12.249.239:14015/fsjxbdb1

username =fsjxbadmin

password= fsjxbadmin!23

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

packagecom.chanbo.yy;importjava.io.FileInputStream;importjava.io.IOException;importjava.io.InputStream;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.SQLException;importjava.util.Properties;/***@author**/

public classConnectionFactory {/*** 数据库连接类*/

//数据库驱动程序类名

private static String DRIVER = "";//连接数据库的URL

private static String URL = "";//连接数据库的用户名

private static String USERNAME = "";//连接数据库的密码

private static String PASSWORD = "";privateConnectionFactory(){

}static{

getPropertiesInfo();

}/*** 该方法用来获得属性文件中的driver、url、username、password*/

private static voidgetPropertiesInfo(){

Properties prop= newProperties();//InputStream inStream = Thread.currentThread().getContextClassLoader()//.getResourceAsStream("jdbcCon.properties");//InputStream inStream = this.getClass().getResourceAsStream("/jdbcCon.properties");//FileInputStream aa ;

try{//获得相应的键值对//prop.load(inStream);

prop.load(new FileInputStream("jdbcCon.properties"));//prop.load(aa);

}catch(IOException e){

e.printStackTrace();

}//根据相应的键获得对应的值

DRIVER = prop.getProperty("driver");

URL= prop.getProperty("url");

USERNAME= prop.getProperty("username");

PASSWORD= prop.getProperty("password");

}/*** 该方法用来加载驱动,并获得数据库的连接对象

*

*@return数据库连接对象conn*/

public staticConnection getConnnection(){

Connection conn= null;try{//加载数据库驱动程序

Class.forName(DRIVER);

}catch(ClassNotFoundException e){

e.printStackTrace();

}try{

System.out.println("-- 连接URL : "+URL);//获得数据库连接对象

conn =DriverManager.getConnection(URL, USERNAME, PASSWORD);

System.out.println("-- 连接成功");

}catch(SQLException e){

System.out.println("-- 连接失败");

e.printStackTrace();

}returnconn;

}

}

ConnectionFactory.java

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

/****/

packagecom.chanbo.yy;importjava.sql.Connection;importjava.util.Scanner;/***@authoryanfazhongxin

**/

public classLinkOracleTest {/***@paramargs*/

public static voidmain(String[] args) {//TODO Auto-generated method stub

Connection conn =ConnectionFactory.getConnnection();

DbClose.close(conn);

Scanner scan= newScanner(System.in);

String read=scan.nextLine();

}

}

LinkOracleTest .java

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

packagecom.chanbo.yy;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;/***@author**/

public classDbClose {/*** 数据库关闭类*/

/*** 关闭数据库连接

*@paramconn 连接类对象*/

public static voidclose(Connection conn){if(null !=conn){try{

conn.close();

}catch(SQLException e){

e.printStackTrace();

}

}

}/*** 关闭数据库语句

*@paramstmt 语句对象*/

public static voidclose(PreparedStatement pre){if(null !=pre){try{

pre.close();

}catch(SQLException e){

e.printStackTrace();

}

}

}/***关闭数据库结果集

*@paramrs 结果集对象*/

public static voidclose(ResultSet rs){if(null !=rs){try{

rs.close();

}catch(SQLException e){

e.printStackTrace();

}

}

}public static voidclose(ResultSet rs,PreparedStatement pre,Connection conn){

close(rs);

close(pre,conn);

}public static voidclose(PreparedStatement pre,Connection conn){

close(pre);

close(conn);

System.out.println("数据库已关闭!");

}

}

DbClose.java

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值