工具類
package com.librarySystem;
import java.sql.*;
public class JDBCUTILS {
private static final String DRIVER = "oracle.jdbc.OracleDriver";
private static String URL = "jdbc:oracle:thin:@localhost:1521:orcl";
private static String USER = "cc";
private static String PASSWORD = "ccpassword";
static {
try {
Class.forName(DRIVER);
}catch(Exception e){
e.printStackTrace();
}
}
public static Connection getConnection(){
try {
Connection connection = DriverManager.getConnection(URL, USER, PASSWORD);
return connection;
}catch(Exception ex){
ex.printStackTrace();
}
return null;
}
public static void close(ResultSet resultSet, Statement statement ,Connection connection){
try
{
if (resultSet != null && !resultSet.isClosed())
resultSet.close();
}
catch(SQLException ex)
{
ex.printStackTrace();
}
finally
{
try
{
if (statement != null && !statement.isClosed())
statement.close();
}
catch (SQLException ex)
{
ex.printStackTrace();
}
finally
{
try
{
if (connection != null && !connection.isClosed())
connection.close();
}
catch(SQLException ex)
{
ex.printStackTrace();;
}
}
}
}
public static void close(Statement statement ,Connection connection){
close(null,statement,connection);
}
}
主類
package com.librarySystem;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
class Reader{
public String rno;
public String rname;
public String rsex;
public int rage;
public String rboss;
public String raddress;
public String toString(){
return rno+" "+rname+" "+rsex+" "+rage+" "+rboss+" "+raddress;
}
}
public class ConnnectDatabase {
public static List<Reader> queryALL(){
Connection conn=null;
PreparedStatement preparedStatement=null;
ResultSet resultSet = null;
List<Reader>readers = new ArrayList<>();
try{
conn = JDBCUTILS.getConnection();
String sql ="SELECT * FROM Reader";
preparedStatement = conn.prepareStatement(sql);
resultSet = preparedStatement.executeQuery();
while(resultSet.next()){
Reader reader= new Reader();
reader.rno = resultSet.getString("RNO");
reader.rname = resultSet.getString("RNAME");
reader.rsex = resultSet.getString("RSEX");
reader.rage = resultSet.getInt("RAGE");
reader.rboss = resultSet.getString("RBOSS");
reader.raddress = resultSet.getString("RADDRESS");
readers.add(reader);
}
}
catch (Exception e){
e.printStackTrace();;
}
finally {
JDBCUTILS.close(resultSet,preparedStatement,conn);
}
return readers;
}
public static void add() {
Connection conn=null;
PreparedStatement preparedStatement=null;
try{
conn = JDBCUTILS.getConnection();
String sql = "Insert into reader values('R011',?,?,?,?,?)";
preparedStatement =conn.prepareStatement(sql);
preparedStatement.setString(1,"王尼瑪");
preparedStatement.setString(2,"男");
preparedStatement.setDouble(3,22);
preparedStatement.setString(4,"李四");
preparedStatement.setString(5,"404");
preparedStatement.executeUpdate();
}
catch(Exception e){
e.printStackTrace();
}
finally{
JDBCUTILS.close(preparedStatement,conn);
}
}
public static void del() {
Connection conn=null;
PreparedStatement preparedStatement=null;
try{
conn = JDBCUTILS.getConnection();
String sql = "Delete from reader where reader.rname like?";
preparedStatement =conn.prepareStatement(sql);
preparedStatement.setString(1,"_尼瑪");
preparedStatement.executeUpdate();
}catch(Exception e){
e.printStackTrace();
}
finally{
JDBCUTILS.close(preparedStatement,conn);
}
}
public static void changeValue() {
Connection conn=null;
PreparedStatement preparedStatement=null;
try{
conn = JDBCUTILS.getConnection();
String sql = "Update reader set rname='吳尼瑪' where reader.rname=?";
preparedStatement =conn.prepareStatement(sql);
preparedStatement.setString(1,"王尼瑪");
preparedStatement.executeUpdate();
}catch(Exception e){
e.printStackTrace();
}finally{
JDBCUTILS.close(preparedStatement,conn);
}
}
public static Reader querySpecial(String rno) {
Connection conn=null;
PreparedStatement preparedStatement=null;
ResultSet resultSet = null;
Reader reader=null;
try{
conn = JDBCUTILS.getConnection();
String sql ="SELECT * FROM Reader where reader.rno=?";
preparedStatement = conn.prepareStatement(sql);
preparedStatement.setString(1,rno);
resultSet = preparedStatement.executeQuery();
if(resultSet.next()){
reader= new Reader();
reader.rno = resultSet.getString("RNO");
reader.rname = resultSet.getString("RNAME");
reader.rsex = resultSet.getString("RSEX");
reader.rage = resultSet.getInt("RAGE");
reader.rboss = resultSet.getString("RBOSS");
reader.raddress = resultSet.getString("RADDRESS");
}
}
catch (Exception e){
e.printStackTrace();;
}
finally {
JDBCUTILS.close(resultSet,preparedStatement,conn);
}
return reader;
}
public static void main(String args[]) {
}
}