这个主要针对的初学者,大神请跳过!
本篇主要是讲述了一个简单的jdbc连接sql service和oracle数据的一个底层方法
文章写的比较简易,有不懂的地方可以留言,后续可能会上传简单范列大家一起学习。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class BaseDao {
// 定义Sql Service的数据库驱动程序
public final static String DRIVER="com.microsoft.sqlserver.jdbc.SQLServerDriver";
// 定义Sql Service数据库的连接地址
public final static String URL="jdbc:sqlserver://localhost:1433;DatabaseName=bbs";
// 数据库的连接用户名
public final static String DBNAME="sa";
// 数据库的连接密码
public final static String DBPASS="lql123";
// 定义Oracle的数据库驱动程序
public final static String DRIVER1="oracle.jdbc.driver.OracleDriver";
// 定义Oracle数据库的连接地址
public final static String URL1="jdbc:oracle:thin:@localhost:1521:orcl";
// 数据库的连接用户名
public final static String DBNAME1="scott";
// 数据库的连接密码
public final static String DBPASS1="lql123";
public Connection getConn()throws ClassNotFoundException,SQLException{
Class.forName(DRIVER);
Connection conn = DriverManager.getConnection(URL,DBNAME,DBPASS);
return conn;
}
//关闭连接,释放资源
public void closeAll(Connection conn,PreparedStatement stat,ResultSet rs){
if(rs != null){
try{rs.close();}catch(Exception e){e.printStackTrace();}
}
if(stat != null){
try{stat.close();}catch(Exception e){e.printStackTrace();}
}
if(conn != null){
try{conn.close();}catch(Exception e){e.printStackTrace();}
}
}
public int executeSQL(String preSql,String[] parm){
Connection conn = null;
PreparedStatement pstmt = null;
int num = 0;
try{
conn = getConn();
pstmt = conn.prepareStatement(preSql);
if(parm != null){
for(int i=0;i<parm.length;i++){
pstmt.setString(i+1, parm[i]);
}
}
num = pstmt.executeUpdate();
}catch(Exception e){
e.printStackTrace();
}finally{
closeAll(conn,pstmt,null);
}
return num;
}
public int executeSQL(String preSql){
Connection conn = null;
Statement pstmt = null;
int num = 0;
try {
conn = getConn();
pstmt = conn.createStatement();
num = pstmt.executeUpdate(preSql);
} catch (Exception e) {
e.printStackTrace();
}finally{
//closeAll(conn,pstmt,null);
}
return num;
}
//带参数的查询语句
public ResultSet executeRSQL(String preSql,String[] param){
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
conn = getConn();
pstmt = conn.prepareStatement(preSql);
if(pstmt != null){
for(int i = 0;i < param.length; i++){
pstmt.setString(i + 1, param[i]);
}
}
rs = pstmt.executeQuery();
} catch (Exception e) {
e.printStackTrace();
}finally{
//closeAll(conn, pstmt, rs);
}
return rs;
}
//不带参数的查询
public ResultSet executeRSQL(String preSql){
Connection conn = null;
Statement pstmt = null;
ResultSet rs = null;
try {
conn = getConn();
pstmt = conn.createStatement(); // 实例化Statement对象
rs = pstmt.executeQuery(preSql); // 执行数据库更新操作
} catch (Exception e) {
e.printStackTrace();
}
return rs;
}
//测试
public static void main(String agrs[]){
BaseDao baseDao = new BaseDao();
ResultSet rs = null;
int num = 0;
//无参数修改修改
/*String sql = "update tbl_board set boardName='灌水乐园' where boardId=15";
num = baseDao.executeSQL(sql);
System.out.println(num);//1表示修改成功,0表示修改失败*/
//有参数修改修改
/*String parm[] = {"15"};
String sql = "update tbl_board set boardName='灌水乐园' where boardId = ?";
num = baseDao.executeSQL(sql, parm);
System.out.println(num);*/
//无参数调用查询语句
/*String sql = "select * from tbl_board";
rs = baseDao.executeRSQL(sql);*/
//有参数调用查询语句
/*String[] parm = {"0"};
String sql = "select * from tbl_board where parentId=?";
rs=baseDao.executeRSQL(sql,parm);*/
/*try {
while(rs.next()){
System.out.println(rs.getInt(1)+" "+rs.getString(2));
}
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}*/
}
}
数据库
create table tbl_board(
boardId int,
boardName varchar,
parentId int,
)
以下为架包下载地址 Java jdbc连接oracle数据库架包