Oracle 数据库连接(JDBC)学习测试
来源:互联网 发布:js中有标量类型吗 编辑:程序博客网 时间:2024/06/01 08:29
公共类 定义数据库连接和关闭:
package com.java.jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class DBConnection {/** * 一、JDBC 的驱动分类: * 比较常见的驱动程序有四类: * jdbc-odbc 桥驱动 * jdbc 本地驱动 * jdbc 网络驱动 * 本地协议纯jdbc 驱动 * 开发中常见: jdbc-odbc 、网络jdbc 连接、纯jdbc连接 * * * * 二、java 为JDBC 提供的 API接口有: * java.sql.Connection --用于处理与特定数据库连接; * java.sql.DriverManager -- 处理驱动程序的加载和数据库的连接; * java.sql.Statement -- 用于在指定连接中处理sql语句; * java.sql.ResultSet -- 用于操作数据库操作的结果集,用户通过对结果集的操作完成对数据库的访问 * * 其中:java.sql.Statement 接口下包括两个接口: * java.sql.PreparedStatement -- 处理预编译的Sql语句; * java.sql.CallableStatement -- 用于处理数据库的存储过程; * * 三、利用jdbc创建数据库连接公共类 * * 常用的数据库驱动和url: * oracle 数据库中: * oracle database driver : * oracle.jdbc.driver.OracleDriver * oracle database URL : * jdbc:oracle:thin:@localhost:1521:oracle * SQL server 数据库中: * Sql Server database driver: * com.microsoft.sqlserver.jdbc.SqlServerDriver * Sql Server database url: * jdbc:sqlserver://ip:1433:databasename=dbname * 四、数据库连接的步骤: * 1、、 定义数据库驱动: * private static final String driver = "oracle.jdbc.OracleDriver"; * 2、 定义数据库url资源对象: * private static final String url ="jdbc:oracle:thin:@localhost:1521:oracle"; * 3、: 设定数据库连接管理用户及密码: * private static final String username = "scott"; * private static final String password = "A2i0a0o8"; * 4、 加载数据库驱动: * Class.forName(driver); * 5、创建数据库连接: * //一般数据库连接单独作为公共类,所以要设置为全局对象,在需要连接时,调用方法就行 * Connection conn = DriverManager.getConnection(url, username, password); * // 在处理类中调用以连接数据库; * Connection conn = DBConnection.getConnection(); //这里的getConnection()是自定义的方法 * * 6、创建创建Statement 对象,用于处理指定的sql语句 * Statement stmt = conn.createStatement(); * 7、创建sql语句字符串: * String sql = "SQL语句" * 8、创建ResultSet 对象,对数据库操作,返回一个结果集: * ResultSet rs = stmt.executeQuery(sql); * ResultSet rs = stmt.executeUpdate(sql); * 9、对结果集操作以完成对数据库的访问操作 * while(rs.next()){ //处理结果集 //rs.get**取操作列 } * 10、关闭Statement 对象和数据库关闭;//这里可以在数据库连接中声明一个关闭方法,每次进行完数据库操作后,调用此方法关闭 * stmt .close(); * conn.close(); *//*------数据库连接----------*///定义数据库驱动程序// 私有的 ,静态的,固定的 jdbc驱动private static final String driver = "oracle.jdbc.OracleDriver";//创建数据库URL对象,定义连接地址//私有静态常量的数据库实例(本地数据库),可以替换成别的private static final String url ="jdbc:oracle:thin:@localhost:1521:oracle"; // 定义数据库连接用户名及密码: private static final String username = "scott"; private static final String password = "A2i0a0o8"; //声明数据库连接对象,初始化为空private static Connection conn = null; // 自定义连接方法public static Connection getConnection(){ // Connection 为返回类型,getConnection 方法名try {//利用反射机制来创建对象Class.forName(driver); //加载驱动程序//利用java为jdbc 提供的接口DriverManager 来实现数据库连接conn = DriverManager.getConnection(url, username, password); //创建连接} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}return conn;} // 自定义数据库关闭方法public static void close(){try {Statement stmt = conn.createStatement(); //创建Sql语句对象if(stmt != null){stmt.close();}} catch (SQLException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}if (conn != null){try {conn.close();System.out.println("数据库已关闭");} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}else{System.out.println("无数据库连接!");}}}
操作测试类,完成对数据的访问操作:
package com.java.jdbc;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class SqlTest {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubselecttest(); //方法调用sqltest();}public static void selecttest(){//数据库连接 Connection conn = DBConnection.getConnection(); try { //创建Statement 对象,用于处理指定的sql语句Statement stmt = conn.createStatement(); //创建SQL语句对象String sql = "select emp.ename,emp.job,emp.sal,dept.dname from emp,dept where emp.deptno = dept.deptno";//创建ResultSet 对象,用于操作数据库操作的结果集ResultSet rs = stmt.executeQuery(sql); //执行查询处理,返回一个结果集while(rs.next()){ //处理结果集 //rs.get**取操作列 System.out.println("姓名:"+rs.getString("ename")+"\t职位:"+rs.getString("job")+ "\t薪资:"+rs.getFloat(3)+"\t部门名称:"+rs.getString(4));}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}finally{DBConnection.close();}}public static void sqltest(){ Connection conn = DBConnection.getConnection(); try {Statement stmt = conn.createStatement();String sql1= "insert into emp(empno,ename,job,sal) values(1002,'周姐','软件测试',3500)";String sql2 = "update emp set deptno = 30 where empno = 1001";String sql3 = "delete from emp where empno =900";//批量操作stmt.addBatch(sql1);stmt.addBatch(sql2);stmt.addBatch(sql3);//批量执行stmt.executeBatch();System.out.println("执行完成!");} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}finally{DBConnection.close();}}}
- Oracle 数据库连接(JDBC)学习测试
- JDBC数据库连接测试类(Oracle和MySQL)
- Oracle数据库连接(jdbc连接)
- jdbc数据库连接实例(oracle)
- JDBC数据库连接测试
- Jdbc-Oracle数据库连接
- JDBC与Oracle数据库连接
- Eclipse-oracle-jdbc数据库连接
- oracle--jdbc数据库连接
- JMeter学习(八)JDBC测试计划-连接Oracle
- JMeter学习(八)JDBC测试计划-连接Oracle
- java学习笔记:通过JDBC技术获取Oracle数据库连接
- JDBC学习(二)数据库连接池
- Jmeter JDBC Request--测试数据库连接
- Oracle数据库连接测试
- JDBC数据库连接类(MySQL与Oracle举例)
- Oracle数据库连接Eclipse(JDBC六大步骤详解)
- JDBC学习练习 MySQL数据库连接
- makefile rule
- strcmp函数的实现
- XManager 4 的序列号
- UVa 10003 - Cutting Sticks
- UNICODE,GBK,UTF-8区别
- Oracle 数据库连接(JDBC)学习测试
- 面向对象的JavaScript及HTML5
- 展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告
- Scaling Your Java EE Applications(扩展JAVA EE 应用原文)
- 强大的火狐插件(转)
- 成为伟大开发者的“九步曲”
- oracle 笔记:表备份(复制)
- date 日期格式化--YYYY-MM-DD
- Cannot use __try in functions that require object unwinding