JDBC 你应该知道的事
来源:互联网 发布:男灵剑士捏脸数据图 编辑:程序博客网 时间:2024/06/07 14:42
JDBC你应该知道的事?
/* * 文 件 名: DbUtils.java * 版 权: Co., Ltd. Copyright YYYY-YYYY, All rights reserved * 描 述: <描述> * 修 改 人: * 修改时间: Apr 19, 2013 * 跟踪单号: <跟踪单号> * 修改单号: <修改单号> * 修改内容: <修改内容> */package com.huawei.jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;/** * <一句话功能简述> * <功能详细描述> * * @author * @version [版本号, Apr 19, 2013] * @see [相关类/方法] * @since [产品/模块版本] */public class DbUtils{ private static DbUtils dbUtils = new DbUtils(); private DbUtils() { } public static DbUtils getInstance() { return dbUtils; } public void queryExcute() { Connection conn = null; Statement stm = null; ResultSet result = null; try { Class.forName("oracle.jdbc.driver.OracleDriver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } try { conn = DriverManager.getConnection("jdbc:oracle:thin:@10.137.107.160:1521:iptvmem", "userdb30", "I_Vcbs33"); stm = conn.createStatement(); String sql = "select * from ocs_tasktodo2 o where o.subscriberno ='" + "826670842" + "'"; result = stm.executeQuery(sql); if (null != result) { while (result.next()) { System.out.println(result.getString("subscriberno")); } } } catch (SQLException e) { e.printStackTrace(); } finally { try { result.close(); stm.close(); conn.close(); } catch (SQLException e) { e.printStackTrace(); } } }}
哈哈,我知道的就这么多,懂一点补充一点
try { Class.forName("oracle.jdbc.driver.OracleDriver"); } catch (ClassNotFoundException e) { e.printStackTrace(); }
这一行没有任何的设值,孤独的立在代码中,有点奇怪,于是我删掉了这一行。再跑一边,哈哈报错了
java.sql.SQLException: No suitable driverat java.sql.DriverManager.getConnection(DriverManager.java:545)at java.sql.DriverManager.getConnection(DriverManager.java:171)at com.huawei.jdbc.DbUtils.queryExcute(DbUtils.java:59)at com.huawei.jdbc.DbUtils.main(DbUtils.java:40)Exception in thread "main" java.lang.NullPointerExceptionat com.huawei.jdbc.DbUtils.queryExcute(DbUtils.java:87)at com.huawei.jdbc.DbUtils.main(DbUtils.java:40)
猜测这个是给jvm申明一个Oracle驱动的实例。
再接着
conn = DriverManager.getConnection("jdbc:oracle:thin:@10.137.107.160:1521:iptvmem", "userdb30", "I_Vcbs33");
使用DriverManager建立了一个连接,可以看下其中的方法
public static synchronized Connection getConnection(String url, String user, String password) throws SQLException { java.util.Properties info = new java.util.Properties(); // Gets the classloader of the code that called this method, may // be null.ClassLoader callerCL = DriverManager.getCallerClassLoader();if (user != null) { info.put("user", user);}if (password != null) { info.put("password", password);} return (getConnection(url, info, callerCL)); }
再接下来就是:
stm = conn.createStatement(); String sql = "select * from ocs_tasktodo2 o where o.subscriberno ='" + "826670842" + "'"; result = stm.executeQuery(sql); if (null != result) { while (result.next()) { System.out.println(result.getString("subscriberno")); } }
请大神解释一下,从上至下的流程!
- JDBC 你应该知道的事
- 你应该知道的
- 作为程序员你应该知道的事
- Arrays.sort()你应该知道的事
- Codeforces 你应该知道的事
- SurfaceView你所应该知道的事
- Fragment你应该知道的那些事
- GSON你应该知道的事
- Android Notification 你应该知道的事
- cookies你应该知道的
- session你应该知道的
- 你应该知道的Unicode
- 你应该知道的print
- 你应该知道的ThreadPoolExecutor
- 你应该知道的统计学
- Silverlight,你应该知道的10件事
- Silverlight,你应该知道的10件事
- SQL Server 2005:你应该知道的13件事
- Jqplot图形报表-绘制饼图、柱状图、折线图....
- STM32固件库详解
- hdu2115
- Linux 硬盘,格式化,分区
- android NetUtil
- JDBC 你应该知道的事
- JTAG与SWD
- jsp中插入另一个jsp
- NetworkUtil
- 【数据结构】单链表学习笔记
- SVM三种寻优方法matlab代码 grid search、GA、PSO
- NumberUtils
- 使用单例模式实现自己的HttpClient工具类
- 从1到n的整数中1出现的次数