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

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

 public class Book{
//编号
private int id;
//图书名称
private String name;
//价格
private double price;
//数量
private int bookCount;
//作者
private String author; public int getId() {
return id;
} public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public int getBookCount() {
return bookCount;
}
public void setBookCount(int bookCount) {
this.bookCount = bookCount;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
}
/****方法一:通过PreparedStatement接口中的方法插入数据*****/
public class PreparedStatementTest{
Book book = new Book();
//加载数据库驱动,注册到驱动管理器
Class.forName("com.mysql.jdbc.Driver");
//数据库连接字符串
String url = "jdbc:mysql://localhost:3306/Test";
//数据库用户名
String username = "root";
//数据库连接密码
String password = "123";
//创建Connection连接
Connection conn = (Connection)DriverManager.getConnection(url,username,password);
//插入图书信息的SQL语句
String sql = "insert into bookTable(name,price,bookCount,author) value(?,?,?,?);";
//获取PreparedStatement
PreparedStatement ps = conn.prepareStatement(sql);
//对SQL语句中的第1个参数赋值
ps.setString(1, book.getName());
//对SQL语句中的第2个参数赋值
ps.setDouble(2,book.getPrice());
//对SQL语句中的第3个参数赋值
ps.setInt(3, book.getBookCount());
//对SQL语句中的第4个参数赋值
ps.setString(4, book.getAuthor());
//执行更新操作,返回所影响的行数
int row = ps.executeUpdate();
//判断是否更新成功
if(row > 0){
out.print("添加成功"+row+"条数据");
}
//关闭PreparedStatement,释放资源
ps.close();
//关闭Connection释放资源
conn.close(); } /*方法二:通过Statement接口中的executeUpdate(sql)方法插入数据*/
public class StatementTest{
Book book = new Book();
//加载数据库驱动,注册到驱动管理器
Class.forName("com.mysql.jdbc.Driver");
//数据库连接字符串
String url = "jdbc:mysql://localhost:3306/Test";
//数据库用户名
String username = "root";
//数据库连接密码
String password = "123";
//创建Connection连接
Connection conn = (Connection)DriverManager.getConnection(url,username,password);
//插入图书信息SQL语句
String sql="insert into bookTable(name,price,bookCount,author) value("+book.getName()+","+book.getPrice()+","+book.getBookCount()+","+book.getAuthor()+")";
//获取Statement接口对象
Statement stat = conn.createStatement();
//调用Statement接口中的excuteUpdate(sql)方法,执行SQL语句插入数据
stat.executeUpdate(date); //关闭Statement接口对象
if(stat != null){
stat.close();
}
//关闭Connection接口对象
if(conn != null){
conn.close();
}
}

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

JDBC操作数据库之连接数据库的更多相关文章

  1. 用于JDBC操作数据库的公共类

    /* * @(#)CommonSql.java 2011-9-5 * * Copyright 2011 Bianjing,All rights reserved. */ import java.sql ...

  2. Java笔记(第七篇 JDBC操作数据库)

    JDBC是连接数据库和java程序的桥梁,通过JDBC API可以方便地实现对各种主流数据库的操作.学习java语言,必须学习JDBC技术,因为JDBC技术实在java语言中被广泛使用的一种操作数据库 ...

  3. JDBC操作数据库的学习(2)

    在上一篇博客<JDBC操作数据库的学习(1)>中通过对例1,我们已经学习了一个Java应用如何在程序中通过JDBC操作数据库的步骤流程,当然我们也说过这样的例子是无法在实际开发中使用的,本 ...

  4. JDBC操作数据库的学习(1)

    单单对数据库的操作,比如说MySQL,我们可以在命令行窗口中执行,但是一般是应用程序要操作数据库,因此我们应该在程序中的代码上体现对数据库的操作,那么使用程序应用如何操作数据库呢?那就要使用到数据库的 ...

  5. JDBC操作数据库的三种方式比较

    JDBC(java Database Connectivity)java数据库连接,是一种用于执行上sql语句的javaAPI,可以为多种关系型数据库提供统一访问接口.我们项目中经常用到的MySQL. ...

  6. Spark Streaming通过JDBC操作数据库

    本文记录了学习使用Spark Streaming通过JDBC操作数据库的过程,源数据从Kafka中读取. Kafka从0.10版本提供了一种新的消费者API,和0.8不同,因此Spark Stream ...

  7. JDBC操作数据库的基本步骤:

    JDBC操作数据库的基本步骤: 1)加载(注册)数据库驱动(到JVM). 2)建立(获取)数据库连接. 3)创建(获取)数据库操作对象. 4)定义操作的SQL语句. 5)执行数据库操作. 6)获取并操 ...

  8. springboot学习-jdbc操作数据库--yml注意事项--controller接受参数以及参数校验--异常统一管理以及aop的使用---整合mybatis---swagger2构建api文档---jpa访问数据库及page进行分页---整合redis---定时任务

    springboot学习-jdbc操作数据库--yml注意事项--controller接受参数以及参数校验-- 异常统一管理以及aop的使用---整合mybatis---swagger2构建api文档 ...

  9. Spring入门(十五):使用Spring JDBC操作数据库

    在本系列的之前博客中,我们从没有讲解过操作数据库的方法,但是在实际的工作中,几乎所有的系统都离不开数据的持久化,所以掌握操作数据库的使用方法就非常重要. 在Spring中,操作数据库有很多种方法,我们 ...

随机推荐

  1. 软件测试学习LINUX常用命令

    测试初学者常用的LINUX命令,不懂得的可加Q群答疑649017887 一.常用管理命令:1. shutdown -h now 关机命令2. shutdown -r now (reboot) 立即重启 ...

  2. 【Ubuntu 16】安装eclipse

    1.将eclipse.tar.gz传送到/home/xxx/下,解压缩,这里我已经配置好了JDK1.7,所以eclipse配置了就可以使用 2.创建快捷方式 dream361@master:~$ to ...

  3. 【Spring】整合SpringMVC、MyBatis

    在使用xml配置方式的最佳整合方式: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns= ...

  4. Java 环境设置

    Java 环境设置 本地环境设置 如果你依然想要为 Java 编程语言设置环境,那么本节将指导你如何在你的电脑上下载和设置 Java.请按照以下步骤进行环境设置. Java SE 可以从下载 Java ...

  5. flannel 的连通与隔离 - 每天5分钟玩转 Docker 容器技术(61)

    上一节我们在 flannel 网络中部署了容器,本节讨论 flannel 的连通和隔离特性. flannel 网络连通性 测试 bbox1 和 bbxo2 的连通性: bbox1 能够 ping 到位 ...

  6. 递归调用里的性能问题(js)

    说明 这是在codewars.com上刷的一道js练习题,在此做个记录 问题描述 The Fibonacci sequence is traditionally used to explain tre ...

  7. 2_http协议详解

    当客户端与服务器进行交互时,就存在web请求,这种请求都基于统一的应用层协议(http协议)交互数据.它允许将HTML文档从web服务器传送到web浏览器. http协议是无状态的协议.无状态是指we ...

  8. JavaWeb(八)JQuery

    jQuery 市场用得比较多两个框架: jQuery 比较适合做一些互联网 的应用(12306.com,蘑菇街,美丽说,聚美) extjs 比较适合做后台管理系统(电商(订单管理),银行,电信) 核心 ...

  9. python+selenium自动化软件测试(第7章):Page Object模式

    什么是Page ObjectModel模式Page Objects是selenium的一种测试设计模式,主要将每个页面看作是一个class.class的内容主要包括属性和方法,属性不难理解,就是这个页 ...

  10. Tornado模板

    --------------------静态文件-------------------- 1.static_path:通过向web.Application类的构造函数传递一个名为static_path ...