zoukankan      html  css  js  c++  java
  • JDBC操作数据库之连接数据库

    通过JDBC向数据库中添加数据的时候,使用insert语句实现数据的插入,再SQL语句中的参数可以用占位符“?”来替代,然后通过PreparedStatement对象或者Statement对象对其赋值并执行SQL。

    下面分别对PreparedStatement接口和Statement接口插入数据方法做代码实现:其中PreparedStatementTest类中是用PreparedStatement接口中的方法来实现数据库数据插入的;StatementTest类中是用Statement接口中的excuteUpdate(sql)方法实现数据库数据插入。

      1 public class Book{
      2     //编号
      3     private int id;
      4     //图书名称
      5     private String name;
      6     //价格
      7     private double price;
      8     //数量
      9     private int bookCount;
     10     //作者
     11     private String author;
     12     
     13     public int getId() {
     14         return id;
     15     }
     16     
     17     public void setId(int id) {
     18         this.id = id;
     19     }
     20     public String getName() {
     21         return name;
     22     }
     23     public void setName(String name) {
     24         this.name = name;
     25     }
     26     public double getPrice() {
     27         return price;
     28     }
     29     public void setPrice(double price) {
     30         this.price = price;
     31     }
     32     public int getBookCount() {
     33         return bookCount;
     34     }
     35     public void setBookCount(int bookCount) {
     36         this.bookCount = bookCount;
     37     }
     38     public String getAuthor() {
     39         return author;
     40     }
     41     public void setAuthor(String author) {
     42         this.author = author;
     43     }
     44 }
     45 /****方法一:通过PreparedStatement接口中的方法插入数据*****/
     46 public class PreparedStatementTest{
     47         Book book = new Book();
     48         //加载数据库驱动,注册到驱动管理器
     49         Class.forName("com.mysql.jdbc.Driver");
     50         //数据库连接字符串
     51         String url = "jdbc:mysql://localhost:3306/Test";
     52         //数据库用户名
     53         String username = "root";
     54         //数据库连接密码
     55         String password = "123";
     56         //创建Connection连接
     57         Connection conn = (Connection)DriverManager.getConnection(url,username,password);
     58         //插入图书信息的SQL语句
     59         String sql = "insert into bookTable(name,price,bookCount,author) value(?,?,?,?);";
     60         //获取PreparedStatement
     61         PreparedStatement ps = conn.prepareStatement(sql);
     62         //对SQL语句中的第1个参数赋值
     63         ps.setString(1, book.getName());
     64         //对SQL语句中的第2个参数赋值
     65         ps.setDouble(2,book.getPrice());
     66         //对SQL语句中的第3个参数赋值
     67         ps.setInt(3, book.getBookCount());
     68         //对SQL语句中的第4个参数赋值
     69         ps.setString(4, book.getAuthor());
     70         //执行更新操作,返回所影响的行数
     71         int row = ps.executeUpdate();
     72         //判断是否更新成功
     73         if(row > 0){
     74             out.print("添加成功"+row+"条数据");
     75         }
     76         //关闭PreparedStatement,释放资源
     77         ps.close();
     78         //关闭Connection释放资源
     79         conn.close();
     80 
     81 }
     82 
     83 /*方法二:通过Statement接口中的executeUpdate(sql)方法插入数据*/
     84 public class StatementTest{
     85         Book book = new Book();
     86         //加载数据库驱动,注册到驱动管理器
     87         Class.forName("com.mysql.jdbc.Driver");
     88         //数据库连接字符串
     89         String url = "jdbc:mysql://localhost:3306/Test";
     90         //数据库用户名
     91         String username = "root";
     92         //数据库连接密码
     93         String password = "123";
     94         //创建Connection连接
     95         Connection conn = (Connection)DriverManager.getConnection(url,username,password);
     96         //插入图书信息SQL语句
     97         String sql="insert into bookTable(name,price,bookCount,author) value("+book.getName()+","+book.getPrice()+","+book.getBookCount()+","+book.getAuthor()+")";
     98         //获取Statement接口对象
     99         Statement stat = conn.createStatement();
    100         //调用Statement接口中的excuteUpdate(sql)方法,执行SQL语句插入数据
    101         stat.executeUpdate(date);
    102 
    103         //关闭Statement接口对象
    104         if(stat != null){
    105             stat.close();
    106         }
    107         //关闭Connection接口对象
    108         if(conn != null){
    109             conn.close();
    110         }
    111 }

    ---恢复内容结束---

  • 相关阅读:
    可重入函数
    epoll源码深度剖析
    数据结构学习之基本概念
    机器学习算法原理与编程实践之朴素贝叶斯分类
    机器学习算法与编程实践之中文文本分类
    ElasticSearch常用结构化搜索
    linux几种常见的文件内容查找和替换命令
    List遍历时删除遇到的问题
    初学ElasticSeacher
    从jar中读取资源文件的问题
  • 原文地址:https://www.cnblogs.com/lihuibin/p/7466209.html
Copyright © 2011-2022 走看看