java与Oracle数据库建立连接的jdbc类 oraclejdbcsqljava工作
程序员文章站
2022-07-12 16:09:41
...
由于工作得到一个新的需求,需要通过ETL数据采集工具,调用java代码,此java代码需要从另一数据库查出数据。首先想到通过jdbc将数据库的数据查出来,再进行逻辑运算。
于是想着顺便整理下一个普通的jdbc连接类,方便以后直接使用。
1、从Oracle官网或者其他地方下载一个Oracle的jar包:
2、编写代码:
public static void main(String[] args) { Connection con = null; //创建数据库连接 PreparedStatement pre = null; //创建预编译语句对象,对sql语句预编译 ResultSet res = null; //创建一个查询结果对象 try { Class.forName("oracle.jdbc.driver.OracleDriver");// 加载驱动 System.out.println("开始尝试连接数据库"); String url = "jdbc:oracle:" + "thin:@127.0.0.1:1521:orcl";// 注意@,127.0.0.1是本机地址,1521端口号,orcl数据库名称 String user = "shopping";//用户名 String psw = "123456";//密码 con = DriverManager.getConnection(url, user, psw);// 获取连接 System.out.println("连接成功"); String sql = "select * from person where name=?";//“?”代表参数 pre = con.prepareStatement(sql);// 预编译sql语句 pre.setString(1, "张三");//1代表第一个“?”,参数索引 res = pre.executeQuery();// 执行查询 while (res.next()) {// 判断结果不为空 System.out.println(res.getString("name")); } } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { try {//逐一关闭对象,后用的先关闭,避免占用资源 if (res != null) { res.close(); } if (pre != null) { pre.close(); } if (con != null) { con.close(); } System.out.println("数据库连接已关闭"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
注意:此时运行代码会出现以下错误,
这是一个很常见的错误,程序到这里还没完,别忘了刚刚下载的Oracle的jar包,需要导入。
右键项目---->build path---->Add External JARs…---->添加刚刚下载的jar包,重新运行程序即可。
上一篇: JDBC数据库连接池
下一篇: JDBC接口介绍之Statement
推荐阅读
-
荐 Java——数据库编程JDBC之数据库连接池技术(C3P0与Druid,提供了Druid的工具类)
-
java与Oracle数据库建立连接的jdbc类 oraclejdbcsqljava工作
-
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:异常处理以及java程序与数据库建立连接的流程
-
荐 Java——数据库编程JDBC之数据库连接池技术(C3P0与Druid,提供了Druid的工具类)
-
Java连接数据库的综合类class;MSSQL(SQL Server )、Oracle、MySQL、PostgreSQL、SAP、SyBase 各种数据库的JDBC驱动下载及连接