JDBC基本流程以及連接ORACLE的三種URL格式


jdbc基本流程代碼用例

package jdbctest;

import java.sql.*; 

public class jdbcDemo01 {

	/**
	 * @param args
	 * @throws Exception 
	 */
	public static void main(String[] args) throws Exception {
	// TODO Auto-generated method stub
	String url="jdbc:oracle:thin:@//localhost:1521/test";
        String username="username";
        String password="password";
		
        //Class.forName("com.mysql.jdbc.Driver");//mysql驅動

//        1、加載驅動
        Class.forName("com.mysql.jdbc.Driver");
//        2、鏈接數據庫
        Connection connection = DriverManager.getConnection(url, username, password);
//         3、向數據庫發送SQL的對象Statement : CRUD
        Statement statement = connection.createStatement();

//        4、編寫SQL
        String sql = "select * from users";
//        5、執行SQL
        ResultSet resultSet = statement.executeQuery(sql);

        while (resultSet.next()){
            System.out.println("id "+resultSet.getObject("id"));
            System.out.println("name "+resultSet.getObject("name"));
            System.out.println("password "+resultSet.getObject("password"));
            System.out.println("email "+resultSet.getObject("email"));
            System.out.println("birthday "+resultSet.getObject("birthday"));
        }
        

//      使用預編譯模式preparedStatement,避免SQL注入的問題
        String sql2 = "select * from users where id = ?";
        PreparedStatement preparedStatement = connection.prepareStatement(sql2);
        preparedStatement.setInt(1,4);

        ResultSet resultSet1 = preparedStatement.executeQuery();
        while (resultSet1.next()){
            System.out.println("id "+resultSet1.getObject("id"));
            System.out.println("name "+resultSet1.getObject("name"));
            System.out.println("password "+resultSet1.getObject("password"));
            System.out.println("email "+resultSet1.getObject("email"));
            System.out.println("birthday "+resultSet1.getObject("birthday"));
        }

//        6、關閉鏈接,釋放資源(一定要做) 先開后關
        resultSet1.close();
        preparedStatement.close();
        resultSet.close();
        statement.close();
        connection.close();

	}
}

使用jdbc連接oracle時url有三種格式

格式一: Oracle JDBC Thin using an SID

jdbc:oracle:thin:@host:port:SID 

格式二: Oracle JDBC Thin using a ServiceName

jdbc:oracle:thin:@//host:port/service_name 

格式三:Oracle JDBC Thin using a TNSName

jdbc:oracle:thin:@TNSName 
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.16.91)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)))

//RAC集群模式tns:(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.128.6.10)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 10.128.6.11)(PORT = 1521)) (LOAD_BALANCE = yes)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = test)))

三種URL參考博客原文地址:https://blog.csdn.net/gnail_oug/article/details/80075263


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM