JDBC代碼實例


//jdbc步驟

//1。加載驅動

//DriverManager.registerDriver(new com.mysql.jdbc.Driver());
Class.forName("com.mysql.jdbc.Driver");     
//2.獲取連接conn
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "123");

                                                                            協議(jdbc):數據庫類型://ip:端口/數據庫
//3.執行sql
Statement sta= con.createStatement();
//4.對結果集進行操作
ResultSet rs= sta.executeQuery("SELECT * FROM `user`");

while(rs.next()){
System.out.print(rs.getObject(1)+" ");
System.out.print(rs.getObject(2)+" ");
System.out.print(rs.getObject(3)+" ");
System.out.print(rs.getObject(4)+" ");
System.out.println(rs.getObject(5)+" ");

}
//5.關閉資源

rs.close();
sta.close();
con.close();

 

 

 

 

 

 

//jdbc  增刪改查

public class TestCRUD {
@Test
public void testSelect(){
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;

try {
conn = DBUtils.getConnection();
stmt = conn.createStatement();
rs = stmt.executeQuery("select * from users");
List<User> list = new ArrayList<User>();
while(rs.next()){
User u = new User();
u.setId(rs.getInt(1));
u.setName(rs.getString(2));
u.setPassword(rs.getString(3));
u.setEmail(rs.getString(4));
u.setBirthday(rs.getDate(5));
list.add(u);
}

for (User user : list) {
System.out.println(user);
}
} catch (Exception e) {
e.printStackTrace();
}finally{
DBUtils.closeAll(rs, stmt, conn);
}
}

@Test
public void testInsert(){
Connection conn = null;
PreparedStatement stmt = null;

try {
conn = DBUtils.getConnection();
stmt = conn.prepareStatement("INSERT INTO users VALUES(?,?,?,?,?)");
stmt.setInt(1, 5);
stmt.setString(2, "tom");
stmt.setString(3, "333");
stmt.setString(4, "tom@163.com");
//stmt.setDate(5, new java.sql.Date(System.currentTimeMillis()));
stmt.setString(5, "2015-09-11");

int i = stmt.executeUpdate();
if(i>0){
System.out.println("success");
}
} catch (Exception e) {
e.printStackTrace();
}finally{
DBUtils.closeAll(null, stmt, conn);
}
}

@Test
public void testUpdate(){
Connection conn = null;
PreparedStatement stmt = null;

try {
conn = DBUtils.getConnection();
stmt = conn.prepareStatement("UPDATE users SET NAME=?,PASSWORD=?,email=? WHERE id=?");
stmt.setString(1, "jerry123");
stmt.setString(2, "123");
stmt.setString(3, "jerry@163.com");
stmt.setInt(4, 5);

int i = stmt.executeUpdate();
if(i>0){
System.out.println("success");
}
} catch (Exception e) {
e.printStackTrace();
}finally{
DBUtils.closeAll(null, stmt, conn);
}
}

@Test
public void testDelete(){
Connection conn = null;
Statement stmt = null;

try {
conn = DBUtils.getConnection();
stmt = conn.createStatement();
int i = stmt.executeUpdate("DELETE FROM users WHERE id=4");
if(i>0){
System.out.println("success");
}
} catch (Exception e) {
e.printStackTrace();
}finally{
DBUtils.closeAll(null, stmt, conn);
}
}

 

 

 

 

 

//以下是jdbc來做DBUtils的代碼

public class DBUtils {
private static String driverClass;
private static String url;
private static String username;
private static String password;

static{
//此對象是用於加載properties文件數據的
ResourceBundle rb = ResourceBundle.getBundle("dbinfo");
driverClass = rb.getString("driverClass");
url = rb.getString("url");
username = rb.getString("username");
password = rb.getString("password");
try {
Class.forName(driverClass);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}

//得到連接的方法
public static Connection getConnection() throws Exception{
return DriverManager.getConnection(url, username, password);
}

//關閉資源的方法
public static void closeAll(ResultSet rs,Statement stmt,Connection conn){
//關閉資源
if(rs!=null){
try {
rs.close();
} catch (Exception e) {
e.printStackTrace();
}
rs = null;
}
if(stmt!=null){
try {
stmt.close();
} catch (Exception e) {
e.printStackTrace();
}
stmt = null;
}
if(conn!=null){
try {
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
conn = null;
}
}
}


免責聲明!

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



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