收藏 分销(赏)

JDBC笔记整理.doc

上传人:仙人****88 文档编号:7953361 上传时间:2025-01-28 格式:DOC 页数:5 大小:39.50KB 下载积分:10 金币
下载 相关 举报
JDBC笔记整理.doc_第1页
第1页 / 共5页
JDBC笔记整理.doc_第2页
第2页 / 共5页


点击查看更多>>
资源描述
Day01 一.知识点 1. 什么是JDBC 1)JDBC Java语言用于访问数据库的标准 2)由Sun公司指定 3)各个数据库厂商提供实现 2. JDBC核心API 1)Connnection 2)Statement 3)ResultSet package com.tarena.day01; import java.sql.Connection; import java.sql.Driver; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class TestJABCDemo { public static void main(String[] args) throws Exception { Class.forName("oracle.jdbc.OracleDriver"); Connection con=DriverManager.getConnection( "jdbc:oracle:thin:@192.168.0.40:1521:tarena", "csoracle","tarena"); Statement stmt=con.createStatement(); stmt.execute("select empno,ename from employee_zxw"); ResultSet rs=stmt.getResultSet(); while(rs.next()){ System.out.println(rs.getInt(1)+","+rs.getString(2)); } } } 3. JDBC连接数据库步骤 //装载并注册Driver Class.forName("oracle.jdbc.OracleDriver") //获取连接 // url oracle: jdbc:oracle:thin:@ip:port:sid Connection con = DriverManager.getConnection(url,user,pwd) // 建立Statement并执行SQL Statement stmt = con.createStatement(); boolean b = stmt.execute("...") 如果是查询(b=true) ResultSet rs = stmt.getResultSet(); 如果不是查询(b=false) int updateCount = stmt.getUpdateCount(); ResultSet rs = stmt.executeQuery("") int updateCount = stmt.executeUpdate("") // 通过ResultSet获得数据或元数据 // 获得数据 while(rs.next()) { rs.getXXX(int n) } //获得元数据 ResultSetMetaData rsmd = rs.getMetaData(); rsmd.getColumnCount(); rsmd.getColumnName(); rsmd.getColumnTypeName(); 4.如何做ConnectionUtils package com.tarena.day01; import java.io.IOException; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.Properties; public class ConnectUtils { private static String driver; private static String url; private static String userid; private static String password; static { try { // 获得当前类属性路径下的db.properties Properties props = new Properties(); InputStream is = ConnectUtils.class.getClassLoader() .getResourceAsStream("db.properties"); props.load(is); driver = props.getProperty(driver); url = props.getProperty(url); userid = props.getProperty(userid); password = props.getProperty(password); Class.forName(driver); } catch (Exception e) { e.printStackTrace(); } } public static Connection getConnection() throws SQLException { return DriverManager.getConnection(url, userid, password); } } 打印出SQL表中数据类型 package com.tarena.day01; import java.sql.Connection; import java.sql.Driver; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.Statement; import com.tarena.day1.ConnectionUtils; public class TestJABCDemo { public static void main(String[] args) throws Exception { /**传统连接JDBC方式*/ // Class.forName("oracle.jdbc.OracleDriver"); // Connection con=DriverManager.getConnection( // "jdbc:oracle:thin:@192.168.0.40:1521:tarena", // "csoracle","tarena"); /**包装后连接JDBC方式*/ Connection con=ConnectionUtils.getConnection(); Statement stmt=con.createStatement(); stmt.execute("select empno,ename from employee_zxw"); ResultSet rs=stmt.getResultSet(); while(rs.next()){ System.out.println(rs.getInt(1)+","+rs.getString(2)); } //rs.close(); //stmt.close(); /**stmt关闭,stmt2开启*/ Statement stmt1=con.createStatement(); stmt1.execute("insert into employee_zxw(empno,ename) values(1004,'jzf')"); //int count=stmt1.executeUpdate("update"); //System.out.println(count); int count=stmt1.getUpdateCount(); System.out.println(count); stmt1.close(); ResultSet rs1=stmt.getResultSet(); ResultSetMetaData rsmd=rs1.getMetaData(); int columnCount = rsmd.getColumnCount(); for (int i = 1; i <= columnCount; i++) { System.out.print(rsmd.getColumnName(i) + " "); } System.out.println(); System.out.println("------------------------------"); while (rs.next()) { for (int i = 1; i <= columnCount; i++) { System.out.print(rs1.getString(i) + " "); } System.out.println(); } con.close(); } } 5.注意程序中的SQL Injection package com.tarena.day01; import java.sql.Connection; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Statement; import com.tarena.day1.ConnectionUtils; public class InsertUser { public static void main(String[] args) throws SQLException { Connection con=ConnectionUtils.getConnection(); Statement stmt=con.createStatement(); for(int i=0;i<100;i++){ stmt.execute("insert into emp_bakzxw(time1,time2) values(1000,1000)");//此处眼严格尊重SQL语句,最好建议PrepareStatment } ResultSet rs = stmt.executeQuery("select * from emp_bakzxw"); ResultSetMetaData rsmd = rs.getMetaData(); int columnCount = rsmd.getColumnCount(); /**打印表中数据成员*/ for (int i = 1; i <= columnCount; i++) { System.out.print(rsmd.getColumnName(i) + " "); } System.out.println(); System.out.println("------------------------------"); /**打印表内内容*/ while (rs.next()) { for (int i = 1; i <= columnCount; i++) { System.out.print(rs.getString(i) + " "); } System.out.println(); } } }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服