当前位置:   article > 正文

java连接mysql数据库和Oracle数据库_java在mysql基础上新增连接oracle数据库

java在mysql基础上新增连接oracle数据库

mysql部分转于https://www.cnblogs.com/GarfieldEr007/p/5746137.html

 JAVA连接MySQL稍微繁琐,所以先写一个类用来打开或关闭数据库:

DBHelper.java(在这个类最后释放连接资源的时候,要加变量=null,第一是为了不然其他用户使用这个资源,第二是为了方便java的垃圾回收,需要改进,在我下面oracle的例子中就体现出来了

  1. package com.hu.demo;
  2. import java.sql.Connection;
  3. import java.sql.DriverManager;
  4. import java.sql.PreparedStatement;
  5. import java.sql.SQLException;
  6. public class DBHelper {
  7. public static final String url = "jdbc:mysql://127.0.0.1/student";
  8. public static final String name = "com.mysql.jdbc.Driver";
  9. public static final String user = "root";
  10. public static final String password = "root";
  11. public Connection conn = null;
  12. public PreparedStatement pst = null;
  13. public DBHelper(String sql) {
  14. try {
  15. Class.forName(name);//指定连接类型
  16. conn = DriverManager.getConnection(url, user, password);//获取连接
  17. pst = conn.prepareStatement(sql);//准备执行语句
  18. } catch (Exception e) {
  19. e.printStackTrace();
  20. }
  21. }
  22. public void close() {
  23. try {
  24. this.conn.close();
  25. this.pst.close();
  26. } catch (SQLException e) {
  27. e.printStackTrace();
  28. }
  29. }
  30. }

再写一个Demo.java来执行相关查询操作

Demo.java(在这个类最后释放连接资源的时候,要加变量=null,第一是为了不然其他用户使用这个资源,第二是为了方便java的垃圾回收,需要改进,在我下面oracle的例子中就体现出来了

  1. package com.hu.demo;
  2. import java.sql.ResultSet;
  3. import java.sql.SQLException;
  4. public class Demo {
  5. static String sql = null;
  6. static DBHelper db1 = null;
  7. static ResultSet ret = null;
  8. public static void main(String[] args) {
  9. sql = "select *from stuinfo";//SQL语句
  10. db1 = new DBHelper(sql);//创建DBHelper对象
  11. try {
  12. ret = db1.pst.executeQuery();//执行语句,得到结果集
  13. while (ret.next()) {
  14. String uid = ret.getString(1);
  15. String ufname = ret.getString(2);
  16. String ulname = ret.getString(3);
  17. String udate = ret.getString(4);
  18. System.out.println(uid + "\t" + ufname + "\t" + ulname + "\t" + udate );
  19. }//显示数据
  20. ret.close();
  21. db1.close();//关闭连接
  22. } catch (SQLException e) {
  23. e.printStackTrace();
  24. }
  25. }
  26. }

对应的oracle代码为:

JDBCUtils.java

  1. import java.sql.Connection;
  2. import java.sql.DriverManager;
  3. import java.sql.ResultSet;
  4. import java.sql.SQLException;
  5. import java.sql.Statement;
  6. public class JDBCUtils {
  7. private static String driver="oracle.jdbc.OracleDriver";
  8. private static String url="jdbc:oracle:thin:@localhost:1521/orcl";
  9. private static String user="scott";
  10. private static String password="098879";
  11. static{
  12. //注册驱动
  13. try {
  14. Class.forName(driver);
  15. } catch (ClassNotFoundException e) {
  16. // TODO Auto-generated catch block
  17. e.printStackTrace();
  18. }
  19. }
  20. public static Connection getConnection(){
  21. try {
  22. return DriverManager.getConnection(url,user,password);
  23. } catch (SQLException e) {
  24. // TODO Auto-generated catch block
  25. e.printStackTrace();
  26. }
  27. return null;
  28. }
  29. public static void release(Connection conn,Statement st,ResultSet rs){
  30. if(rs!=null){
  31. try {
  32. rs.close();
  33. } catch (SQLException e) {
  34. e.printStackTrace();
  35. }finally{
  36. rs=null;//Java GC:java的GC不受代码的控制
  37. }
  38. }
  39. if(st!=null){
  40. try{
  41. st.close();
  42. }catch(Exception e){
  43. e.printStackTrace();
  44. }finally{
  45. st=null;
  46. }
  47. }
  48. if(conn!=null){
  49. try{
  50. conn.close();
  51. }catch(Exception e){
  52. e.printStackTrace();
  53. }finally{
  54. conn=null;
  55. }
  56. }
  57. }
  58. }

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/743212
推荐阅读
相关标签
  

闽ICP备14008679号