public class JdbcUtil {

    /**
* 关闭一个数据库链接
* @param conn
*/
public static void closeConnection(Connection conn) {
try {
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
}
} /**
* 回滚一个数据库链接
* @param conn
*/
public static void rollbackConnection(Connection conn) {
try {
if (conn != null) {
conn.rollback();
}
} catch (SQLException e) {
}
} /**
* 关闭一个StateMent
* @param stmt
*/
public static void closeStatement(Statement stmt) {
try {
if (stmt != null) {
clearStatement(stmt); // FIXME 测试
stmt.close();
}
} catch (SQLException e) {
}
} /**
* 关闭一个ResultSet
* @param rs
*/
public static void closeResultSet(ResultSet rs) {
try {
if (rs != null) {
rs.close();
}
} catch (SQLException e) {
}
} /**
* 清除一个StateMent里面的批量信息。
* @param stmt
*/
public static void clearStatement(Statement stmt) {
try {
if (stmt != null) {
stmt.clearBatch();
}
} catch (SQLException e) {
}
} /**
* Integer型数据设置
* @param pstmt
* @param index
* @param value Integer型数据
* @throws SQLException
*/
public static void setValue(PreparedStatement pstmt, int index, Integer value) throws SQLException {
if (null != value) {
pstmt.setInt(index, value);
} else {
pstmt.setNull(index, Types.INTEGER);
}
} /**
* Long型数据设置
* @param pstmt
* @param index
* @param value Long型数据
* @throws SQLException
*/
public static void setValue(PreparedStatement pstmt, int index, Long value) throws SQLException {
if (null != value) {
pstmt.setLong(index, value);
} else {
pstmt.setNull(index, Types.BIGINT);
}
} /**
* String型数据设置
* @param pstmt
* @param index
* @param value String型数据
* @throws SQLException
*/
public static void setValue(PreparedStatement pstmt, int index, String value) throws SQLException {
if (StringUtils.isNotBlank(value)) {
pstmt.setString(index, value);
} else {
pstmt.setNull(index, Types.VARCHAR);
}
} /**
* Timestamp型数据设置
* @param pstmt
* @param index
* @param value Timestamp型数据
* @throws SQLException
*/
public static void setValue(PreparedStatement pstmt, int index, Timestamp value) throws SQLException {
if (null != value) {
pstmt.setTimestamp(index, value);
} else {
pstmt.setNull(index, Types.TIMESTAMP);
}
} /**
* Date型数据设置
* @param pstmt
* @param index
* @param value java.sql.Date型数据
* @throws SQLException
*/
public static void setValue(PreparedStatement pstmt, int index, java.util.Date value) throws SQLException {
if (null != value) {
pstmt.setTimestamp(index, new Timestamp(value.getTime()));
} else {
pstmt.setNull(index, Types.TIMESTAMP);
}
} /**
* byte型数据设置
* @param pstmt
* @param index
* @param value byte型数据
* @throws SQLException
*/
public static void setValue(PreparedStatement pstmt, int index, byte[] value) throws SQLException {
if (null != value) {
pstmt.setBytes(index, value);
} else {
pstmt.setNull(index, Types.BINARY);
}
}
}

数据库通用Jdbc操作的更多相关文章

  1. 数据库 —— 使用JDBC操作数据库

    [Link] http://www.developer.com/java/data/manipulating-a-database-with-jdbc.html Manipulating a Data ...

  2. 使用JdbcTemplate简化JDBC操作 实现数据库操作

    使用Spring JDBC框架方遍简单的完成JDBC操作,满足性能的需求且灵活性高. Spring JDBC框架由4个部分组成,即core.datasource.object.support. org ...

  3. JSP-06-使用JDBC操作数据库

    6.1 使用JDBC查询数据 [链接oracle数据库] 具体操作: 1)  将odbc文件拷贝到项目中 Odbc文件所在目录: oracle安装目录下- product – db_1 – jdbc  ...

  4. JDBC操作MySQL数据库案例

    JDBC操作MySQL数据库案例 import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepared ...

  5. 十五、JDBC操作数据库

    1.数据库特点 实现数据共享.减少数据的冗余度.数据的独立性.数据集中控制.数据的一致性和可维护性. 2.数据库种类和功能 (1)层次型数据库:类似于树结构,是一组通过链接而互相联系在一起的记录. ( ...

  6. JavaWeb用Jdbc操作MySql数据库(一)

    一.添加开发包.在JavaWeb中用jdbc操作数据库,使用方法与java一样,但是在处理开发包的问题上有点差别.JavaWeb不能将mysql-connector-java-5.1.7-bin.ja ...

  7. Java使用Jdbc操作MySql数据库(一)

    这个示例是Java操作MySql的基本方法. 在这个示例之前,要安装好MySql,并且配置好账户密码,创建一个logininfo数据库,在数据库中创建userinfo数据表.并且在表中添加示例数据. ...

  8. jdbc操作数据库

    JDBC全称为:Java DataBase Connectivity(java数据库连接). SUN公司为了简化.统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC. 学习JD ...

  9. 用于JDBC操作数据库的公共类

    /* * @(#)CommonSql.java 2011-9-5 * * Copyright 2011 Bianjing,All rights reserved. */ import java.sql ...

随机推荐

  1. Discuz!NT中的Redis架构设计

    在之前的Discuz!NT缓存的架构方案中,曾说过Discuz!NT采用了两级缓存方式,即本地缓存+memcached方式.在近半年多的实际运行环境下,该方案经受住了检验.现在为了提供多样式的解决方案 ...

  2. unix network programming(3rd)Vol.1 [第2~5章]《读书笔记系列》

    13~22章 重要 第2章 传输层: TCP/ UDP / STCP (Stream Control Transmission Protocol) TCP 可靠,有重传机制,SYN队列号 UDP 不可 ...

  3. C# 创建WebServices及调用方法

    发布WebServices 1.创建  ASP.NET Web 服务应用程序 SayHelloWebServices 这里需要说明一下,由于.NET Framework4.0取消了WebService ...

  4. 求一字符串最长不重复字符子串的长度【Java 版】

    一. 前言 最近学习有点断断续续,整理的一些知识点要么不完整,要么完全没搞懂,不好拿上台面,还是先在草稿箱躺着吧.偶尔在浏览大牛博客http://coolshell.cn的时候,发现大牛业余时间也在做 ...

  5. 设计模式_Iterator_迭代器模式

    形象例子: 我爱上了Mary,不顾一切的向她求婚.          Mary:“想要我跟你结婚,得答应我的条件”          我:“什么条件我都答应,你说吧”          Mary:“我 ...

  6. 高质量、处于持续更新的R包

    本文在Creative Commons许可证下发布 自由软件的问题是开发人员没有稳定的资金来源支持,可能更新上做不到持续.经过考证和圈内朋友的帮助,现在把R包中高质量.持续更新的跟大数据事业相关的R包 ...

  7. 深入了解JavaScript中的关键字

    this是Javascript语言的一个关键字它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用,下面分四种情况,详细讨论this的用法,感兴趣的朋友可以了解下. this是Javascri ...

  8. WebAPI 小知识

    1.HttpResponseMessage.ReasonPhrase可以返回原因说明短语, 用JQuery中的$.ajax调用,返回函数第三个参数可以获取,如下: success:function(d ...

  9. 教程-for do、while do 中循环退出

    1.注意条件设置 for i:=1 to 10 dobegin   if i>5 then   begin   break;   end;end; break         全部continu ...

  10. IAR 1.3 for STM8 ST-Link无法调试 无法仿真 the debugging session could not be started

    IAR 1.3 for STM8 ST-Link无法调试 the debugging session could not be started CPU型号是:STM8F103F3 首先要用ST Vis ...