- 浏览: 42518 次
-
最新评论
jDBC工具类和bean结合
package com.tdb.dao; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement ; import java.sql.Date; /** * 处理数据库的连接和访问 * @author sanware bqlr * @version 1.01 */ public class MyOracle { private Connection conn = null; private Statement stmt = null; private PreparedStatement prepstmt = null; // 这是一个全局类,里面放置数据库的参数,如数据库主机 访问用户名 密码等 private static BeansConstants CONST = BeansConstants.getInstance(); /** * 构造数据库的连接和访问类 */ public MyOracle() throws Exception { Class.forName(CONST.dbdriver); conn = DriverManager.getConnection(CONST.dburl, CONST.du, CONST.dp); stmt = conn.createStatement(); } public MyOracle(String sql) throws Exception { Class.forName(CONST.dbdriver); conn = DriverManager.getConnection(CONST.dburl, CONST.du, CONST.dp); this.prepareStatement(sql); } /** * 返回连接 * @return Connection 连接 */ public Connection getConnection() { return conn; } /** * PreparedStatement * @return sql 预设SQL语句 */ public void prepareStatement(String sql) throws SQLException { prepstmt = conn.prepareStatement(sql); } /** * 设置对应值 * @param index 参数索引 * @param value 对应值 */ public void setString(int index,String value) throws SQLException { prepstmt.setString(index,value); } public void setInt(int index,int value) throws SQLException { prepstmt.setInt(index,value); } public void setBoolean(int index,boolean value) throws SQLException { prepstmt.setBoolean(index,value); } public void setDate(int index,Date value) throws SQLException { prepstmt.setDate(index,value); } public void setLong(int index,long value) throws SQLException { prepstmt.setLong(index,value); } public void setFloat(int index,float value) throws SQLException { prepstmt.setFloat(index,value); } // File file = new File("test/data.txt"); // int fileLength = file.length(); // InputStream fin = new java.io.FileInputStream(file); // mysql.setBinaryStream(5,fin,fileLength); public void setBinaryStream(int index,InputStream in,int length) throws SQLException { prepstmt.setBinaryStream(index,in,length); } public void clearParameters() throws SQLException { prepstmt.clearParameters(); } /** * 返回预设状态 */ public PreparedStatement getPreparedStatement() { this.getConnection(); return prepstmt; } /** * 返回状态 * @return Statement 状态 */ public Statement getStatement() { return stmt; } /** * 执行SQL语句返回字段集 * @param sql SQL语句 * @return ResultSet 字段集 */ public ResultSet executeQuery(String sql) throws SQLException { if (stmt != null) { return stmt.executeQuery(sql); } else return null; } public ResultSet executeQuery() throws SQLException { if (prepstmt != null) { return prepstmt.executeQuery(); } else return null; } /** * 执行SQL语句 * @param sql SQL语句 */ public void executeUpdate(String sql) throws SQLException { if (stmt != null) stmt.executeUpdate(sql); } public void executeUpdate() throws SQLException { if (prepstmt != null) prepstmt.executeUpdate(); } /** * 关闭连接 */ public void close() throws Exception { if (stmt != null) { stmt.close(); stmt = null; } if (prepstmt != null) { prepstmt.close(); prepstmt = null; } conn.close(); conn = null; } }
package com.tdb.dao; public class BeansConstants { public static final String dbdriver = "oracle.jdbc.driver.OracleDriver"; public static final String dburl = "jdbc:oracle:thin:@127.0.0.1:1521:tvds"; public static final String du = "tdb"; public static final String dp = "tdb"; public static BeansConstants getInstance() { // TODO Auto-generated method stub return new BeansConstants(); } } BeansConstants
package com.tdb.dao;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement ;
import java.sql.Date;
/**
* 处理数据库的连接和访问
* @author sanware bqlr
* @version 1.01
*/
public class MyOracle {
private Connection conn = null;
private Statement stmt = null;
private PreparedStatement prepstmt = null;
// 这是一个全局类,里面放置数据库的参数,如数据库主机 访问用户名 密码等
private static BeansConstants CONST = BeansConstants.getInstance();
/**
* 构造数据库的连接和访问类
*/
public MyOracle() throws Exception {
Class.forName(CONST.dbdriver);
conn = DriverManager.getConnection(CONST.dburl, CONST.du, CONST.dp);
stmt = conn.createStatement();
}
public MyOracle(String sql) throws Exception {
Class.forName(CONST.dbdriver);
conn = DriverManager.getConnection(CONST.dburl, CONST.du, CONST.dp);
this.prepareStatement(sql);
}
/**
* 返回连接
* @return Connection 连接
*/
public Connection getConnection() {
return conn;
}
/**
* PreparedStatement
* @return sql 预设SQL语句
*/
public void prepareStatement(String sql) throws SQLException {
prepstmt = conn.prepareStatement(sql);
}
/**
* 设置对应值
* @param index 参数索引
* @param value 对应值
*/
public void setString(int index,String value) throws SQLException {
prepstmt.setString(index,value);
}
public void setInt(int index,int value) throws SQLException {
prepstmt.setInt(index,value);
}
public void setBoolean(int index,boolean value) throws SQLException {
prepstmt.setBoolean(index,value);
}
public void setDate(int index,Date value) throws SQLException {
prepstmt.setDate(index,value);
}
public void setLong(int index,long value) throws SQLException {
prepstmt.setLong(index,value);
}
public void setFloat(int index,float value) throws SQLException {
prepstmt.setFloat(index,value);
}
// File file = new File("test/data.txt");
// int fileLength = file.length();
// InputStream fin = new java.io.FileInputStream(file);
// mysql.setBinaryStream(5,fin,fileLength);
public void setBinaryStream(int index,InputStream in,int length) throws SQLException {
prepstmt.setBinaryStream(index,in,length);
}
public void clearParameters()
throws SQLException
{
prepstmt.clearParameters();
}
/**
* 返回预设状态
*/
public PreparedStatement getPreparedStatement() {
this.getConnection();
return prepstmt;
}
/**
* 返回状态
* @return Statement 状态
*/
public Statement getStatement() {
return stmt;
}
/**
* 执行SQL语句返回字段集
* @param sql SQL语句
* @return ResultSet 字段集
*/
public ResultSet executeQuery(String sql) throws SQLException {
if (stmt != null) {
return stmt.executeQuery(sql);
}
else return null;
}
public ResultSet executeQuery() throws SQLException {
if (prepstmt != null) {
return prepstmt.executeQuery();
}
else return null;
}
/**
* 执行SQL语句
* @param sql SQL语句
*/
public void executeUpdate(String sql) throws SQLException {
if (stmt != null)
stmt.executeUpdate(sql);
}
public void executeUpdate() throws SQLException {
if (prepstmt != null)
prepstmt.executeUpdate();
}
/**
* 关闭连接
*/
public void close() throws Exception {
if (stmt != null) {
stmt.close();
stmt = null;
}
if (prepstmt != null) {
prepstmt.close();
prepstmt = null;
}
conn.close();
conn = null;
}
}
创建BeansConstants 类
package com.tdb.dao; public class BeansConstants { public static final String dbdriver = "oracle.jdbc.driver.OracleDriver"; public static final String dburl = "jdbc:oracle:thin:@127.0.0.1:1521:tvds"; public static final String du = "tdgb"; public static final String dp = "tdgb"; public static BeansConstants getInstance() { // TODO Auto-generated method stub return new BeansConstants(); } }创建bean类
package com.tdb.dao; import java.sql.ResultSet; public class DeviceBean { private String deviceNo; private String deviceModel; private String deviceScope; private String deviceAddress; private String radminUserName; private String radminPass; private String radminAddress; public String getDeviceNo() { return deviceNo; } public void setDeviceNo(String deviceNo) { this.deviceNo = deviceNo; } public String getDeviceModel() { return deviceModel; } public void setDeviceModel(String deviceModel) { this.deviceModel = deviceModel; } public String getDeviceScope() { return deviceScope; } public void setDeviceScope(String deviceScope) { this.deviceScope = deviceScope; } public String getDeviceAddress() { return deviceAddress; } public void setDeviceAddress(String deviceAddress) { this.deviceAddress = deviceAddress; } public String getRadminUserName() { return radminUserName; } public void setRadminUserName(String radminUserName) { this.radminUserName = radminUserName; } public String getRadminPass() { return radminPass; } public void setRadminPass(String radminPass) { this.radminPass = radminPass; } public String getRadminAddress() { return radminAddress; } public void setRadminAddress(String radminAddress) { this.radminAddress = radminAddress; } private String deviceBase_insert="insert into deviceBase values (?,?,?,?,?,?,?)"; public void insertnavlink() throws Exception { try{ ResultSet rs=null; MyOracle myoracle = new MyOracle(deviceBase_insert); myoracle.setString(1, this.deviceNo); myoracle.setString(2, this.deviceModel); myoracle.setString(3, this.deviceScope); myoracle.setString(4, this.deviceAddress); myoracle.setString(5, this.radminUserName); myoracle.setString(6, this.radminPass); myoracle.setString(7, this.radminAddress); myoracle.executeUpdate(); myoracle.close(); myoracle = null; } catch (Exception ex) { throw new Exception("insertnavlink()"+ex.getMessage()); } } }
在Jsp中,就可以直接使用一句语句使用insertnavlink()了:
<jsp:useBean id="NAV" scope="session" class="mysite.Navlink" /><jsp:setProperty name="NAV" property="*" />
........
NAV.insertnavlink();
......
相关推荐
9. **重用连接池**:在实际应用中,为了提高性能和减少数据库连接创建与销毁的开销,工具类往往结合连接池(如C3P0、HikariCP或DBCP)来管理数据库连接。 10. **线程安全**:如果工具类在多线程环境中使用,需要...
JDBC工具包通常包括一系列的类和接口,它们使得在Java应用程序中执行SQL语句、处理结果集以及管理数据库连接变得简单。 **JDBC核心组件** 1. **DriverManager**: 这是JDBC的核心,负责管理数据库驱动程序。通过`...
这个工具类通常包含一个静态方法,接受ResultSet和JavaBean类型作为参数,然后遍历ResultSet,将数据填充到JavaBean对象中: ```java import java.sql.ResultSet; import java.sql.SQLException; public class ...
Java提高是每一个Java开发者在掌握基础语法后追求的...在实际项目中,开发者可能会结合使用这些技术,比如用Swing创建GUI,通过JDBC访问数据库,并利用Java Bean进行数据模型的设计和交换,从而构建出功能完善的系统。
JdbcUtil是一个常见的工具类,它封装了JDBC的基本操作,以简化数据库的访问,减少代码量,并提高代码的可维护性。下面将详细阐述JdbcUtil中的主要知识点及其重要性。 1. **连接管理**:JdbcUtil通常包含建立和关闭...
在实际开发中,结合`mysql-connector-java-5.1.37-bin.jar`和`commons-dbutils-1.6.jar`,开发者可以更方便、安全地进行数据库操作。只需配置好数据库连接参数,就可以利用DBUtils的便捷功能执行SQL查询、插入、更新...
6. `spring-core-3.2.0.M1.jar`: Spring的核心模块,提供了核心工具类和依赖注入基础设施。 7. `spring-jdbc-3.2.0.M1-sources.jar` 和 `spring-jdbc-3.2.0.M1.jar`: 这两个文件是Spring JDBC模块的源代码和编译后...
**dbutils JDBC第三方工具类详解** 在Java编程中,数据库操作是不可或缺的一部分,而JDBC(Java Database Connectivity)则是Java语言连接数据库的标准接口。然而,直接使用JDBC进行数据库操作时,代码通常会显得...
下面将详细讨论Util工具类以及可能包含在压缩包中的两个文件`UtilBean.java`和`JDBCBean.java`。 1. **Util工具类**: Util工具类通常是一些静态类,包含了一系列静态方法,用于执行常见的任务,如字符串处理、...
其次,`SimpleJdbcInsert`和`SimpleJdbcCall`是另外两个非常有用的工具类。`SimpleJdbcInsert`简化了插入数据的过程,允许我们基于表结构动态构造INSERT语句,而`SimpleJdbcCall`则用于执行存储过程,使得调用数据库...
总之,利用工具自动生成Bean和DAO层是现代软件开发中的常见实践,它有助于提高开发效率,保持代码一致性,并且便于团队协作。在.NET 2.0环境中,结合JDBC,我们可以构建高效的数据访问层,实现与数据库的无缝连接。...
JdbcTemplate是Spring提供的一个强大且灵活的JDBC工具,它包含了许多预定义的数据库操作方法,如update()、query()等,用于执行更新、查询等SQL语句。在上述示例中,通过调用getJdbcTemplate().update()方法,可以...
在Spring JDBC中,你需要定义DataSource bean和其他相关bean,以便Spring可以管理和注入到你的应用中。 在实际开发中,这些jar包的组合使用能够帮助你构建高效、灵活且易于维护的数据库访问层。例如,通过Spring ...
总之,Spring JDBC通过提供强大的模板类和工具类,降低了JDBC编程的复杂性,提高了代码的可维护性。在实际项目中,结合Spring的事务管理,可以构建出高效、健壮的数据库访问层。如果你对Spring JDBC感兴趣,这个资源...
总的来说,`org.springframework.jdbc.core.JdbcTemplate`是Spring框架中的一个强大工具,它通过提供一系列便捷的方法,简化了数据库操作,同时通过事务管理和异常处理保证了代码的健壮性。了解并熟练使用`...
4. **spring-jdbc-5.1.3.RELEASE.jar**:此包专注于数据库操作,提供了模板类如`JdbcTemplate`和`SimpleJdbcInsert`,使得数据库操作更加简洁,避免了手动管理连接和结果集。 5. **spring-aop-5.1.3.RELEASE.jar**...
在本文中,我们将深入探讨如何使用Spring JDBC进行数据库操作,并结合使用不同的连接池技术,包括Spring自带的、C3P0、DBCP和Druid。此外,我们还将介绍一个自定义的行映射器工具类,它在处理数据库查询结果时能提供...
为了解决这个问题,MyBatis提供了一种自动化工具,可以自动生成Bean和Mapper,大大提升了开发效率。 生成Bean和Mapper工具有很多种,不仅限于MyBatis官方提供的,还有许多第三方插件和工具。这些工具能够根据数据库...
在现代Web开发中,JSP(JavaServer Pages)和Servlet技术是构建动态网站的重要工具,它们与Java Bean和JDBC(Java Database Connectivity)相结合,可以创建功能强大的企业级应用。本项目是一个典型的“使用jsp+...
在开发过程中,手动编写Mapper接口、Mapper XML文件以及对应的实体类(bean)是一项繁琐的工作。为了提高开发效率,我们可以利用特定的工具来自动创建这些文件。 本话题主要涉及以下知识点: 1. **MyBatis框架**:...