最原始的方式使用JDBC执行sql获取结果
1.获取Connection
/**
* 获取jdbc connection
* @param driverClassName 驱动名称 例:oracle.jdbc.driver.OracleDriver
* @param url 数据库url 例:jdbc:oracle:thin:@192.168.1.120:1521:orcl
* @param username 数据库登录名
* @param password 数据库密码
* @return
*/
private Connection getConnectionDW(String driverClassName,String url,String username,String password){
Connection connection = null;
try {
Class.forName(driverClassName);
connection = DriverManager.getConnection(url,username,password);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return connection;
}
2. public void test(){
PreparedStatement pstmt2 = null;
ResultSet rs = null;
Connection conn = null;
try {
String sql = "select t.username names ,t.password ps from user t";
pstmt2 = conn.prepareStatement(sql);
rs = pstmt2.executeQuery();
while(rs.next()){
//用到过两种,第一种是直接获取列数,例:rs.getString(1) 获取username,rs.getString(2)获取 password,列数从1开始,和集合数组从0开始不同。第二种 使用别名 ,例:rs.getString(“NAMES”)获取username,rs.getString("PS") 获取password,注意 使用别名获取,请使用大写,因为oracle会自动转换为大写。get方法后面的是你值的类型,还有getInt()、getLong等。
}
} catch (SQLException e) {
e.printStackTrace();
}finally{
try {
if(rs != null)
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
if(pstmt2 != null)
pstmt2.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
if(conn != null)
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
3.使用完数据库连接之后一定要切记关闭流。先开后关的原则。