03、JDBC范例
范例:JDBC查询
|
package com.hsp; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import java.util.Date; public class testDatabase { /** * @param args */ public static void main(String[] args) { Connection con = null; String DBname = "jdb"; //数据库名字 String url = "jdbc:mysql://localhost:3306/"+DBname+"?useSSL=true&characterEncoding=utf-8"; String username = "root";//数据库账号 String password = "root";//数据库密码 Statement sql = null; ResultSet rs = null; try { Class.forName("com.mysql.jdbc.Driver"); con = DriverManager.getConnection(url, username, password);//连接代码 sql = con.createStatement(); rs = sql.executeQuery("SELECT * FROM students");//查询student表中的数据 while(rs.next()){ String number = rs.getString(1); String name = rs.getString(2); Date date = rs.getDate(3); float height = rs.getFloat(4); System.out.println("number:"+number+" name:"+name+" date:"+date+" height:"+height); } con.close();//con必须等rs调用完数据后才能关闭,否则查询不到数据 } catch (Exception e) { // TODO: handle exception System.out.println(e); } } } |
范例:封装JDBC查询
|
package com.hsp; import java.sql.*; public class JdbcMysql { public static void main(String[] args) throws SQLException, ClassNotFoundException { // TODO Auto-generated method stub Connection con = null; Statement sql = null; ResultSet rs = null; con = GetDBConnection.ConnectDB("jdb", "root", "root"); String query = "SELECT * FROM STUDENTS"; if(con==null){ System.out.println("连接错误"); return ; } try { sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); rs = sql.executeQuery(query); rs.last(); int max = rs.getRow(); System.out.println("表共有"+max+"条记录"+",随机抽取2条记录"); int a[] = GetRandomNmber.getRandomNumber(max,2); for(int i:a){ rs.absolute(i); String number = rs.getString(1); String name = rs.getString(2); Date date = rs.getDate(3); float height = rs.getFloat(4); System.out.println("number:"+number+" name:"+name+" date:"+date+" height:"+height); } con.close(); } catch (Exception e) { // TODO: handle exception System.out.println(e); } } } |
|
package com.hsp; import java.sql.Connection; import java.sql.DriverManager; public class GetDBConnection { public static Connection ConnectDB(String DBname,String username,String password) { Connection con = null; String url = "jdbc:mysql://localhost:3306/"+DBname+"?useSSL=true&characterEncoding=utf-8"; try { Class.forName("com.mysql.jdbc.Driver"); con = DriverManager.getConnection(url, username, password); } catch (Exception e) { // TODO: handle exception System.out.println(e); } return con; } } |
|
package com.hsp; import java.util.Random; public class GetRandomNmber { public static int[] getRandomNumber(int max,int amount){ //1至max之间的amount个不同随机整数 包括(1和max) int [] randomNumber = new int[amount]; int index = 0; randomNumber[0] = -1; Random random = new Random(); while(index<amount){ int number = random.nextInt(max)+1; boolean isInArrays = false; for(int m:randomNumber){//m依次去数组randomNumber元素的值 if(m==number) isInArrays = true;//number在数组里了 } if(isInArrays==false){ //如果number不在数组randomNumber中 randomNumber[index] = number; index++; } } return randomNumber; } } |
范例:JDBC多条件查询
|
package com.hsp; import java.sql.*; public class JdbcMysql { public static void main(String[] args) throws SQLException, ClassNotFoundException { // TODO Auto-generated method stub Connection con = null; Statement sql = null; ResultSet rs = null; con = GetDBConnection.ConnectDB("jdb", "root", "root"); String query = "SELECT * FROM STUDENTS"; String c1 = " year(birthday)<=2000 and month(birthday)>7";//查询条件1 String c2 = " name Like 'z_%'";//查询条件2 String c3 = " height >1.65";//查询条件3 String sqlStr = "SELECT * FROM students where "+c1+" and "+c2+" and "+c3+" order by birthday"; if(con==null){ System.out.println("连接错误"); return ; } try { sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); rs = sql.executeQuery(sqlStr); while(rs.next()){ String number = rs.getString(1); String name = rs.getString(2); Date date = rs.getDate(3); float height = rs.getFloat(4); System.out.println("number:"+number+" name:"+name+" date:"+date+" height:"+height); } con.close(); } catch (Exception e) { // TODO: handle exception System.out.println(e); } } } |
|
package com.hsp; import java.sql.Connection; import java.sql.DriverManager; public class GetDBConnection { public static Connection ConnectDB(String DBname,String username,String password) { Connection con = null; String url = "jdbc:mysql://localhost:3306/"+DBname+"?useSSL=true&characterEncoding=utf-8"; try { Class.forName("com.mysql.jdbc.Driver"); con = DriverManager.getConnection(url, username, password); } catch (Exception e) { // TODO: handle exception System.out.println(e); } return con; } } |
范例:JDBC插入数据
|
package com.hsp; import java.sql.*; public class JdbcMysql { public static void main(String[] args) throws SQLException, ClassNotFoundException { // TODO Auto-generated method stub Connection con = null; Statement sql = null; ResultSet rs = null; con = GetDBConnection.ConnectDB("jdb", "root", "root"); String query = "SELECT * FROM STUDENTS"; String jilu = "('R1011','JS','2000-10-23',1.66),"+ "('R1010','LW','1989-7-22',1.76)"; String sqlStr = "insert into students values"+jilu; if(con==null){ System.out.println("连接错误"); return ; } try { sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); int ok = sql.executeUpdate(sqlStr); rs = sql.executeQuery("select * from students"); while(rs.next()){ String number = rs.getString(1); String name = rs.getString(2); Date date = rs.getDate(3); float height = rs.getFloat(4); System.out.println("number:"+number+" name:"+name+" date:"+date+" height:"+height); } con.close(); } catch (Exception e) { // TODO: handle exception System.out.println(e); } } } |
|
package com.hsp; import java.sql.Connection; import java.sql.DriverManager; public class GetDBConnection { public static Connection ConnectDB(String DBname,String username,String password) { Connection con = null; String url = "jdbc:mysql://localhost:3306/"+DBname+"?useSSL=true&characterEncoding=utf-8"; try { Class.forName("com.mysql.jdbc.Driver"); con = DriverManager.getConnection(url, username, password); } catch (Exception e) { // TODO: handle exception System.out.println(e); } return con; } } |
03、JDBC范例的更多相关文章
- 04、JDBC范例
范例:JDBC查询 package com.hsp; import java.sql.Connection; import java.sql.DriverManager; import java.sq ...
- java核心技术第四篇之JDBC第二篇
01.JDBC连接池_连接池的概念: 1).什么是连接池:对于多用户程序,为每个用户单独创建一个Connection,会使程序降低效率.这时我们可以创建一个"容器", 这个容器中, ...
- 【JAVA EE企业级开发四步走完全攻略】
本文是J2EE企业级开发四步走完全攻略索引,因内容比较广泛,涉及整个JAVA EE开发相关知识,这是一个长期的计划,单个发blog比较零散,所以整理此索引,决定以后每发一季JAVA EE blog后会 ...
- Java屌炸天学习路线图
第一阶段:Java基础篇 编号 课程 课程目录 打包下载地址 讲师 01 J2SE(40课时) http://www.java1234.com/zy001.html http://pa ...
- JDBC简单范例
连接工具类 import java.sql.Connection; import java.sql.DriverManager; public class DBUtil { // 建立连接方法 pub ...
- Java开发工程师(Web方向) - 03.数据库开发 - 第1章.JDBC
第1章--JDBC JDBC基础 通过Java Database Connectivity可以实现Java程序对后端数据库的访问 一个完整的数据库部署架构,通常是由客户端和服务器端两部分组成 客户端封 ...
- 玩转Spring全家桶笔记 03 Spring的JDBC操作以及SQL批处理的实现
1 spring-jdbc core JdbcTemplate 等相关核心接口和类(核心) datesource 数据源相关的辅助类(内嵌数据源的初始化) object 将基本的JDBC操作封装成对象 ...
- jdbc 03:注册驱动的方式
jdbc连接mysql时,注册驱动的方式 package com.examples.jdbc.o3_注册驱动方式; //mysql驱动所在的包 import com.mysql.jdbc.Driver ...
- jdbc学习笔记03
作业: 1. 学生表(id,age,name) 2. 插入学生 3. 修改学生 4. 删除学生 5. 查询学生 JavaBean 俗称简单的Java对象 javaBean满足以下三点 1.私有属性 2 ...
随机推荐
- kinaba 安装踩坑: FATAL Error: [elasticsearch.url]: definition for this key is missing 转
安装 https://www.jianshu.com/p/875457cb8da6 操作系统:Linux kibana 版本: 7.4.0 1. 在/etc/yum.repos.d/ 下新建 ...
- spring boot: 用redis的消息订阅功能更新应用内的caffeine本地缓存(spring boot 2.3.2)
一,为什么要更新caffeine缓存? 1,caffeine缓存的优点和缺点 生产环境中,caffeine缓存是我们在应用中使用的本地缓存, 它的优势在于存在于应用内,访问速度最快,通常都不到1ms就 ...
- STM32芯片型号的命名规则
意法半导体已经推出STM32基本型系列.增强型系列.USB基本型系列.增强型系列:新系列产品沿用增强型系列的72MHz处理频率.内存包括64KB到256KB闪存和20KB到64KB嵌入式SRAM.新系 ...
- SQL中 char varchar和nvarchar的区别
转至:http://www.cnblogs.com/carekee/articles/2094676.html char char是定长的,也就是当你输入的字符小于你指定的数目时,char(8) ...
- spring-boot-route(二十二)实现邮件发送功能
在项目开发中,除了需要短信验证外,有时候为了节省 短信费也会使用邮件发送.在Spring项目中发送邮件需要封装复杂的消息体,不太方便.而在Spring Boot项目中发送邮件就太简单了,下面一起来看看 ...
- Docker知识总结
目录 1 安装docker 2 docker基本概念 2.1 Docker是容器化平台 2.2 Docker体系结构 2.3 容器与镜像 3 docker常用命令 3.1 快速安装tomcat 3.1 ...
- 强网杯web之假的反序列化漏洞
说明 打强网杯的时候一直在写论文, 做林逸师傅的培训题目. 现在得空,还是看了一部分的题目和wp. 源码 源码一共三部分, 这里只写下我知识盲区的一部分,作为自己的记录. <?php highl ...
- LeakCanary检测(二)
在主方法主实现一个内存泄漏,检测到手机会发送通知,也可以用利用androidStudio自带的Profile检测内存泄漏 public class MainActivity extends AppCo ...
- 打造跨平台.NET Core后台服务
续之前讲的在TopShelf上部署ASP.NET Core程序,作为后台服务运行,自从.NET Core 3.0出现以后,出现了自带的Generic Host,使得自托管服务变为可能.这种方式和Top ...
- Apache POI 合并单元格--简单解释版带Demo
合并单元格所使用的方法: sheet.addMergedRegion( CellRangeAddress cellRangeAddress ); CellRangeAddress 对象的构造 ...