原谅我是初学者,这个方法写的很烂,以后不会改进,谢谢

/**
* 通过JDBC向数据库中插入一条数据 1.Statement 用于执行SQL语句的对象 1.1 通过Connection 的
* createStatement() 方法来获取 1.2 通过executeUpdate(sql) 的方法来执行SQL 1.3
* 传入的SQL可以是INSERT/UPDATE/DELETE,但不能是SELECT
*
* 2.Connection和Statement使用后一定要记得关闭 需要在finally里关闭其对象
* 2.1 关闭的顺序:先关闭后获取的
*/
@Test
public void testStatement() {
// 1.获取数据库连接
Connection connection = null;
// 4.执行插入
// 4.1 获取操作SQL语句的Statement对象:
// 调用Connection的createStatement()方法来创建Statement的对象
Statement statement = null;
try {
connection = getConnection(); // 3.准备插入的SQL语句
String sql = "INSERT INTO customers (NAME,EMAIL,BIRTH) "
+"VALUES ('李小龙','long@live.com','1940-11-27')"; statement = connection.createStatement(); // 4.2 调用Statement对象的executeUpdate(sql) 执行SQL 语句的插入
statement.executeUpdate(sql);
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
} finally {
// 5.关闭Statement对象
if (statement != null) {
try {
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (connection != null) {
// 2.关闭连接
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
} public Connection getConnection() throws Exception {
// 准备连接数据库的四个字符串
// 驱动的全类名
String driverClass = null;
String jdbcUrl = null;
String user = null;
String password = null;
String jdbcName = null;
// 读取jdbcName.properties文件
InputStream inStream = getClass().getClassLoader().getResourceAsStream("properties/jdbcName.properties");
Properties propertiesOfName = new Properties();
propertiesOfName.load(inStream);
jdbcName = propertiesOfName.getProperty("jdbcName");
// 读取需要的properties 文件
InputStream in = getClass().getClassLoader().getResourceAsStream("properties/" + jdbcName + ".properties");
Properties properties = new Properties();
properties.load(in);
driverClass = properties.getProperty("driver");
jdbcUrl = properties.getProperty("jdbcUrl");
user = properties.getProperty("user");
password = properties.getProperty("password"); // 加载数据库驱动程序(注册驱动)
Class.forName(driverClass); Connection connection = DriverManager.getConnection(jdbcUrl, user, password);
return connection;
}

数据库配置如下

使用JDBC向数据库中插入一条数据的更多相关文章

  1. 使用JDBC向数据库中插入一条数据(第一次修改版)

    增加了一个Tools类,放了一些常用的工具 package com.JDBC.java; import java.io.IOException; import java.io.InputStream; ...

  2. MySQL_(Java)使用JDBC向数据库中插入(insert)数据

    MySQL_(Java)使用JDBC向数据库发起查询请求 传送门 MySQL_(Java)使用JDBC向数据库中插入(insert)数据 传送门 MySQL_(Java)使用JDBC向数据库中删除(d ...

  3. 使用JDBC获取数据库中的一条记录并封装为Bean

    比如我数据库中存入的是一条一条的用户信息,现在想取出一个人的个人信息,并封装为Bean对象,可以使用queryForObject来获取数据并通过new BeanPropertyRowMapper(Be ...

  4. 数据库一次性插入10w条数据,怎么插入效率快

    在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数据的话,循环使用Insert不仅效率低,而且会导致SQL一系统性能问题 下面介绍SQL Server支持的两种批量 ...

  5. Oracle数据库中插入日期型数据(to_date的用法)(转载)

    往Oracle数据库中插入日期型数据(to_date的用法) INSERT  INTO  FLOOR  VALUES  ( to_date ( '2007-12-20 18:31:34' , 'YYY ...

  6. Oracle-创建新表,创建备份表,对表中插入多条数据

    一.创建新表 0.基本语法 create table 表名称(id varchar2(50) primary key ,name char(200) not null,phone number(11) ...

  7. for循环往Oracle中插入n条数据,主键自增

    1.主键自增实现方法:http://www.cnblogs.com/Donnnnnn/p/5959871.html 2.for循环往Oracle中插入n条数据 BEGIN .. loop insert ...

  8. 分页(将数据库中的多条数据一页一页的显示在jsp页面中)

    一.显示数据库中的多条数据为什么要用分页 在真正的开发中,数据库中所存储的数据绝对不像我们平时所写的那样,仅仅有几条数据,而是有几十条甚至上百条,像淘宝京东的用户把都是上几十万甚至百万的.如果这时候在 ...

  9. SQL语句往Oracle数据库中插入日期型数据(to_date的用法)

    Oracle 在操作数据库上相比于其他的 T-sql 有微小的差别,但是在插入时间类型的数据是必须要注意他的 to_date 方法,具体的情况如下: --SQL语句往Oracle数据库中插入日期型数据 ...

随机推荐

  1. (文件描述符0、1、2),(stdin、stdout、stderr),(终端设备)这三者之间的关系???

    前言 在Linux系统中,一切设备都看作文件.而每打开一个文件,就有一个代表该打开文件的文件描述符.程序启动时默认打开三个I/O设备文件:标准输入文件stdin,标准输出文件stdout,标准错误输出 ...

  2. 多条件判断语句case

    一.case语句的基本格式: case 变量 in 模式1) 语句块1 :: 模式2) 语句块2 :: ...... :: esac 上面的格式中,每个模式后面的两个分号"::"是 ...

  3. C# 之 判断或设置以管理员身份运行程序

    一.判断程序是否以管理员权限运行 using System.Security.Principal; public bool IsAdministrator() { WindowsIdentity cu ...

  4. Largest Rectangle in a Histogram 常用技巧 stack的运用

    Largest Rectangle in a Histogram

  5. 对C++/CLR的一些评价

    我以后要是再用这东西,我自砍双手

  6. IOS 弹出菜单的动态效果

    效果1.点击按钮上浮 2.点击按钮下沉 3.点击按钮下拉展示 4.点击按钮向上收缩 5.左右如是说 关键是改变视图的大小位置的时机正确与否 eg1.1.点击按钮下沉消失 已知myView.frame= ...

  7. Android&iOS崩溃堆栈上报

    Android&iOS崩溃堆栈上报 原文地址:http://www.cnblogs.com/songcf/p/4885468.html 通过崩溃捕获和收集,可以收集到已发布应用(游戏)的异常, ...

  8. Android小项目之十二 设置中心的界面

    ------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点 ...

  9. CF 107E 多边形面积并

    107E Darts 题目:给出n个矩形,问落在n个矩形交的部分的概率 分析:裸的多边形面积并. 代码略..

  10. MSP下载方式

    MSP430无论是仿真还是烧写程序,一般可以通过:JTAG.SBW.BSL接口进行. 1.JTAG是利用边界扫描技术,在430内部有逻辑接口给JTAG使用,内部有若干个寄存器连接到了430内部数据地址 ...