1.用PL/SQL创建了一个数据库,随意添加了2条记录
create table Test
(
id varchar(10) primary key,
pwd varchar(10)
);
insert into Test(id,pwd) values('20120730','123');
insert into Test(id,pwd) values('20120731','123');
select* from Test;
2.添加MyEclipse的oracle支持(ojdbc14.jar附件);
3.在MyEclipse中编写了两个工具包
4.写了一个测试类
输出结果:
第一个:20120730
第二个:123
5.如果是sqlserver连接的话,只需要更改第一个工具包中的常量
private final static String DRIVER_NAME="com.microsoft.sqlserver.jdbc.SQLServerDriver";
private final static String URL = "jdbc:sqlserver://localhost:1433;database=StoreDB";
private final static String USERNAME = "sa";
private final static String PASSWORD = "sqlpass";
create table Test
(
id varchar(10) primary key,
pwd varchar(10)
);
insert into Test(id,pwd) values('20120730','123');
insert into Test(id,pwd) values('20120731','123');
select* from Test;
2.添加MyEclipse的oracle支持(ojdbc14.jar附件);
3.在MyEclipse中编写了两个工具包
package dbutil;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConnectionManager {
private final static String DRIVER_NAME="oracle.jdbc.driver.OracleDriver";
private final static String URL="jdbc:oracle:thin:@localhost:1521:orcl";
private final static String USER_NAME="msk";
private final static String PASSWORD="msk";
public static Connection getConnection(){
Connection conn=null;
try{
Class.forName(DRIVER_NAME);
conn=DriverManager.getConnection(URL,USER_NAME,PASSWORD);
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(SQLException e){
e.printStackTrace();
}
return conn;
}
public static void close(Connection conn){
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
conn=null;
}
}
}
package dbutil;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class DBOperator {
/**
* 执行更新、删除、插入操作
* @param sql
* @param params
* @return
*/
public int executeUpdate(String sql,String[] params){
int rows = 0;
try {
Connection conn = ConnectionManager.getConnection();
PreparedStatement pstmt = conn.prepareStatement(sql);
if(params!=null){
for(int i=0;i<params.length;i++){
pstmt.setString(i+1, params[i]);
}
}
rows = pstmt.executeUpdate();
ConnectionManager.close(conn);
} catch (SQLException e) {
e.printStackTrace();
}
return rows;
}
/**
* 执行查询操作
* @param sql
* @param params
* @return
*/
public ResultSet executeQuery(String sql,String[] params) {
ResultSet rs = null;
try {
Connection conn = ConnectionManager.getConnection();
PreparedStatement pstmt = conn.prepareStatement(sql);
if(params!=null){
for(int i=0;i<params.length;i++){
pstmt.setString(i+1, params[i]);
}
}
rs = pstmt.executeQuery();
} catch (SQLException e) {
e.printStackTrace();
}
return rs;
}
}
4.写了一个测试类
package test;
import java.sql.ResultSet;
import java.sql.SQLException;
import dbutil.DBOperator;
public class test {
public static void main(String[] args) {
String sql="select * from Test where ID=?";
String[] params={"20120730"};
ResultSet rs=new DBOperator().executeQuery(sql,params);
try {
if(rs.next()){
System.out.println("第一个:"+rs.getString(1));
System.out.println("第二个:"+rs.getString(2));
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
输出结果:
第一个:20120730
第二个:123
5.如果是sqlserver连接的话,只需要更改第一个工具包中的常量
private final static String DRIVER_NAME="com.microsoft.sqlserver.jdbc.SQLServerDriver";
private final static String URL = "jdbc:sqlserver://localhost:1433;database=StoreDB";
private final static String USERNAME = "sa";
private final static String PASSWORD = "sqlpass";