文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

jdbc学习总结3------javab

2023-01-31 06:27

关注

 1.测试类的内容:

在包:com.hanchao.test中

 

  1. package com.hanchao.test; 
  2.  
  3. import com.hanchao.dao.UserDao; 
  4. import com.hanchao.entity.User; 
  5.  
  6.  
  7. public class Test { 
  8.  
  9.      
  10.  
  11.     public static void main(String[] args) { 
  12.          
  13.          
  14.  
  15.      
  16.          
  17.  
  18.          
  19.          
  20. //      UserDao userDao = new UserDao(); 
  21. //      userDao.delete(21); 
  22.          
  23.          
  24.         UserDao userDao = new UserDao(); 
  25.         userDao.retrieve(22); 
  26.          
  27.     } 
  28.      

2.实体类的写法:com.hanchao.entity

 

  1. package com.hanchao.entity; 
  2.  
  3. public class User { 
  4.  
  5.      
  6.      
  7.     private int id; 
  8.     private String username; 
  9.     private String address; 
  10.      
  11.     //下面是setter...getter.. 
  12.     public int getId() { 
  13.         return id; 
  14.     } 
  15.     public void setId(int id) { 
  16.         this.id = id; 
  17.     } 
  18.     public String getUsername() { 
  19.         return username; 
  20.     } 
  21.     public void setUsername(String username) { 
  22.         this.username = username; 
  23.     } 
  24.     public String getAddress() { 
  25.         return address; 
  26.     } 
  27.     public void setAddress(String address) { 
  28.         this.address = address; 
  29.     } 
  30.      
  31.      

3.dao的写法:com.hanchao.dao

 

  1. package com.hanchao.dao; 
  2.  
  3. import java.sql.Connection; 
  4. import java.sql.DriverManager; 
  5. import java.sql.PreparedStatement; 
  6. import java.sql.ResultSet; 
  7. import java.sql.SQLException; 
  8.  
  9. import com.hanchao.entity.User; 
  10.  
  11.  
  12. public class UserDao { 
  13.  
  14.      
  15.      
  16.      
  17.     public int insert(User user) { 
  18.         Connection con = null; 
  19.         PreparedStatement sta = null; 
  20.         int rows = 0; 
  21.          
  22.         try { 
  23.              
  24.             Class.forName("com.mysql.jdbc.Driver"); 
  25.             con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydb","root","root"); 
  26.              
  27.             String sql = "insert into t_user(username,address) value(?,?)"; 
  28.             sta = con.prepareStatement(sql); 
  29.             sta.setString(1, user.getUsername()); 
  30.             sta.setString(2, user.getAddress()); 
  31.              
  32.             rows = sta.executeUpdate(); 
  33.             if(rows > 0) { 
  34.                 System.out.println("operate successfully!!"); 
  35.             } 
  36.              
  37.         } catch (ClassNotFoundException e) { 
  38.             e.printStackTrace(); 
  39.         } catch (SQLException e) { 
  40.             e.printStackTrace(); 
  41.         } finally { 
  42.             if(sta != null) { 
  43.                 try { 
  44.                     sta.close(); 
  45.                 } catch (SQLException e) { 
  46.                     e.printStackTrace(); 
  47.                 } finally { 
  48.                     if(con != null) { 
  49.                         try { 
  50.                             con.close(); 
  51.                         } catch (SQLException e) { 
  52.                             e.printStackTrace(); 
  53.                         } 
  54.                     } 
  55.                 } 
  56.             } 
  57.         } 
  58.         return rows; 
  59.     } 
  60.      
  61.      
  62.     public int update(User user) { 
  63.         Connection con = null; 
  64.         PreparedStatement sta = null; 
  65.         int rows = 0; 
  66.          
  67.         try { 
  68.             Class.forName("com.mysql.jdbc.Driver"); 
  69.             con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydb","root","root"); 
  70.              
  71.             String sql = "update t_user set address=?,username=? where id=?"; 
  72.             sta = con.prepareStatement(sql); 
  73.             sta.setString(1, user.getAddress()); 
  74.             sta.setString(2, user.getUsername()); 
  75.             sta.setInt(3, user.getId()); 
  76.              
  77.             rows = sta.executeUpdate(); 
  78.             if(rows > 0) { 
  79.                 System.out.println("ok"); 
  80.             } 
  81.         } catch (ClassNotFoundException e) { 
  82.             e.printStackTrace(); 
  83.         } catch (SQLException e) { 
  84.             e.printStackTrace(); 
  85.         } finally { 
  86.             if(sta != null) { 
  87.                 try { 
  88.                     sta.close(); 
  89.                 } catch (SQLException e) { 
  90.                     e.printStackTrace(); 
  91.                 } finally { 
  92.                     if(con != null) { 
  93.                         try { 
  94.                             con.close(); 
  95.                         } catch (SQLException e) { 
  96.                             e.printStackTrace(); 
  97.                         } 
  98.                     } 
  99.                 } 
  100.             } 
  101.         } 
  102.         return rows; 
  103.     } 
  104.      
  105.      
  106.     public int delete(int id) { 
  107.         Connection con = null; 
  108.         PreparedStatement sta = null; 
  109.         int rows = 0; 
  110.          
  111.         try { 
  112.             Class.forName("com.mysql.jdbc.Driver"); 
  113.             con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydb","root","root"); 
  114.              
  115.             String sql = "delete from t_user where id=?"; 
  116.             sta = con.prepareStatement(sql); 
  117.             sta.setInt(1, id); 
  118.              
  119.             rows = sta.executeUpdate(); 
  120.             if(rows > 0) { 
  121.                 System.out.println("ok,ok,ok"); 
  122.             } 
  123.              
  124.         } catch (ClassNotFoundException e) { 
  125.             e.printStackTrace(); 
  126.         } catch (SQLException e) { 
  127.             e.printStackTrace(); 
  128.         } finally { 
  129.             if(sta != null) { 
  130.                 try { 
  131.                     sta.close(); 
  132.                 } catch (SQLException e) { 
  133.                     e.printStackTrace(); 
  134.                 } finally { 
  135.                     if(con != null) { 
  136.                         try { 
  137.                             con.close(); 
  138.                         } catch (SQLException e) { 
  139.                             e.printStackTrace(); 
  140.                         } 
  141.                     } 
  142.                 } 
  143.             } 
  144.         } 
  145.         return rows; 
  146.     } 
  147.      
  148.      
  149.      
  150.     public void retrieve(int id) { 
  151.         Connection con = null; 
  152.         PreparedStatement sta = null; 
  153.         ResultSet rs = null; 
  154.          
  155.         try { 
  156.             Class.forName("com.mysql.jdbc.Driver"); 
  157.             con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydb","root","root"); 
  158.              
  159.             String sql = "select id,username,address from t_user where id=?"; 
  160.             sta = con.prepareStatement(sql); 
  161.             sta.setInt(1, id); 
  162.              
  163.             rs = sta.executeQuery(); 
  164.             if(rs.next()) { 
  165.                 int idd = rs.getInt("id"); 
  166.                 String username = rs.getString("username"); 
  167.                 String adrress = rs.getString("address"); 
  168.                 System.out.println(idd+"\t"+username+"\t"+adrress); 
  169.             } 
  170.              
  171.         } catch (ClassNotFoundException e) { 
  172.             e.printStackTrace(); 
  173.         } catch (SQLException e) { 
  174.             e.printStackTrace(); 
  175.         } finally { 
  176.             if(rs != null) { 
  177.                 try { 
  178.                     rs.close(); 
  179.                 } catch (SQLException e) { 
  180.                     e.printStackTrace(); 
  181.                 } finally { 
  182.                     if(sta != null) { 
  183.                         try { 
  184.                             sta.close(); 
  185.                         } catch (SQLException e) { 
  186.                             e.printStackTrace(); 
  187.                         } finally { 
  188.                             if(con != null) { 
  189.                                 try { 
  190.                                     con.close(); 
  191.                                 } catch (SQLException e) { 
  192.                                     e.printStackTrace(); 
  193.                                 } 
  194.                             } 
  195.                         } 
  196.                     } 
  197.                 } 
  198.             } 
  199.         } 
  200.     } 
  201.      

 看dao中的内容,我们发现几个方法中的代码有很多重复的!!所以在下一篇文章中,我们要对代码进行优化!

 

我把前三篇文章的例子,包括数据库,放在一个压缩包里!名称为:jdbc学习例子.rar

需要的同学可以去下载!!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯