import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import java.sql.*; public class JdbcTest { private static final Logger logger = LogManager.getLogger(JdbcTest.class); private Connection connection; /*
连接数据库
*/
public void connectDatabase() {
String driver = "驱动连接";
String url = "数据库连接";
String userName = "用户";
String password = "密码";
logger.info("——开始连接数据库——");
try {
Class.forName(driver);
connection = DriverManager.getConnection(url, userName, password);
logger.info("——数据库连接成功——");
} catch (Exception e) {
logger.info("——数据库连接出现异常——");
logger.info(e);
}
} /*
JDBC单个查询操作
*/
public void jdbcTest() throws Exception {
String sql = "select id,name from student";
PreparedStatement pstmt = connection.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
System.out.println("————————————");
String id = rs.getString("id");
System.out.println(id);
String khzwmc = rs.getString("name");
System.out.println(khzwmc);
}
rs.close();
pstmt.close();
} /*
JDBC批量插入or更新or删除操作
*/
public void jdbcBatchTest() throws Exception {
String[] names = {"Jack", "Tom", "Rose"};
// 关闭自动提交
connection.setAutoCommit(false);
Statement stmt = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
for (int i = 0; i < names.length; i++) {
String sql = "insert into student(id, name) values(" + (i + 1) + ", " + names[i] + ")";
stmt.addBatch(sql);
}
// 批量操作
stmt.executeBatch();
// 手动提交
connection.commit();
stmt.clearBatch();
stmt.close();
} /*
关闭连接
*/
public void closeConnection() throws SQLException {
if (null != connection) {
connection.close();
}
} public static void main(String[] args) throws Exception {
JdbcTest test = new JdbcTest();
test.connectDatabase();
test.jdbcBatchTest();
test.jdbcTest();
test.closeConnection();
}
}

  

Java 使用JDBC连接查询操作数据的更多相关文章

  1. java用JDBC连接MySQL数据库的详细知识点

    想实现java用JDBC连接MySQL数据库.需要有几个准备工作: 1.下载Connector/J的库文件,下载Connector/J的官网地址:http://www.mysql.com/downlo ...

  2. Java使用JDBC连接SQL Server数据库|实现学生成绩信息系统

    Java实验四 JDBC 使用SQL Server数据库或者MySQL数据库各自的客户端工具,完成如下任务: (1)创建数据库students: (2)在数据students中创建表scores,包括 ...

  3. ava基础MySQL存储过程 Java基础 JDBC连接MySQL数据库

    1.MySQL存储过程   1.1.什么是存储过程 带有逻辑的sql语句:带有流程控制语句(if  while)等等 的sql语句   1.2.存储过程的特点 1)执行效率非常快,存储过程是数据库的服 ...

  4. JAVA使用jdbc连接MYSQL简单示例

    以下展示的为JAVA使用jdbc连接MYSQL简单示例: import java.sql.DriverManager; import java.sql.ResultSet; import java.s ...

  5. 基于CDH5.x 下面使用eclipse 操作hive 。使用java通过jdbc连接HIVESERVICE 创建表

    基于CDH5.x 下面使用eclipse 操作hive .使用java通过jdbc连接HIVESERVICE 创建表 import java.sql.Connection; import java.s ...

  6. JAVA通过JDBC连接Oracle数据库详解【转载】

    JAVA通过JDBC连接Oracle数据库详解 (2011-03-15 00:10:03) 转载▼http://blog.sina.com.cn/s/blog_61da86dd0100q27w.htm ...

  7. Java使用JDBC连接SQL Server数据库

    Java使用JDBC连接SQL Server数据库 1.下载驱动 1.下载Microsoft SQL Server JDBC 驱动程序 https://docs.microsoft.com/zh-cn ...

  8. Java使用JDBC连接MySQL数据库

    1.引用 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写 ...

  9. 【Java】JDBC连接MySQL

    JDBC连接MySQL 虽然在项目中通常用ORM的框架实现持久化.但经常因测试某些技术的需要,要写一个完整的JDBC查询数据库.写一个在这儿备份. 首先引入驱动包: <dependencies& ...

随机推荐

  1. @ApiParam和@RequestHeader接收参数的区别

    一.代码 @ApiOperation(value = "查询学生信息") @GetMapping(value = "/select/student") @Api ...

  2. java web文件上传功能实现

    核心原理: 该项目核心就是文件分块上传.前后端要高度配合,需要双方约定好一些数据,才能完成大文件分块,我们在项目中要重点解决的以下问题. * 如何分片: * 如何合成一个文件: * 中断了从哪个分片开 ...

  3. MessagePack Java 0.6.X 使用一个消息打包(message-packable)类

    使用注解 @Message 来让你可以序列化你自己类中对象的 public 字段. 本代码可以在 https://github.com/cwiki-us-demo/messagepack-6-demo ...

  4. 一些简单题(2)(Source : NOIP历年试题+杂题)

    P3084 [USACO13OPEN]照片Photo 给出$m$个区间$[l_i,r_i]$覆盖$S=[1,n]$,试确定最大特殊点的数使得这每一个区间覆盖且仅覆盖一个特殊点. 如果无解,输出$-1$ ...

  5. linux环境下写C++操作mysql(二)

    main.cpp #include<stdio.h> #include<stdlib.h> #include"mysqlInterface.h" int m ...

  6. android 支持发送空短信

    method:A) AP端修改:1.将ComposeMessageActivity.java 中的 isPreparedForSending() 作如下修改(删掉的code也可以注释掉)private ...

  7. pygame基本框架

    代码: import sys #导入sys模块import pygame #导入pygame模块 pygame.init() #pygame初始化size = width,height = 800,8 ...

  8. LeetCode117----填充同一层兄弟节点

    给定一个二叉树 struct TreeLinkNode { TreeLinkNode *left; TreeLinkNode *right; TreeLinkNode *next; } 填充它的每个 ...

  9. 【转载】Linux的五个查找命令

    原文:http://www.ruanyifeng.com/blog/2009/10/5_ways_to_search_for_files_using_the_terminal.html 最近,我在学习 ...

  10. EBS 页面影藏“个性化页”

    以R12.1.3为例 影藏“个性化页”的方法: 修改配置文件: 个性化自助定义        值 由“是”改成“否” 注:修改之后需要清一下高速缓存,如果要显示“个性化页”则做相反配置 修改前: 修改 ...