JAVA操作MySQL数据库类

转载 2006年06月01日 12:03:00
数据库操作可以中WEB开发中最常用到的,很多Java开发工具都提供了自动的Data bean WinZard.只要数据库建立好,相应的操作数据库的Bean就基本可以自动完成,本人使用Jcreator开发bean,手工录入觉得也不是很麻烦的事情,下面我常用的数据库操作bean,完全可以对付访问量不是很大的系统 :

Mysql类:

import java.sql.*;
import java.io.*;
/**
* 处理数据库的连接和访问
* @author sanware bqlr
* @version 1.01
*/
public class Mysql {

private Connection conn = null;
private Statement stmt = null;
private PreparedStatement prepstmt = null;

//这是一个全局类,里面放置数据库的参数,如数据库主机 访问用户名 密码等
private static BeansConstants CONST = BeansConstants.getInstance();

/**
* 构造数据库的连接和访问类
*/
public Mysql() throws Exception {
Class.forName(CONST.dbdriver);
conn = DriverManager.getConnection(CONST.dburl);
stmt = conn.createStatement();
}
public Mysql(String sql) throws Exception {
Class.forName(CONST.dbdriver);
conn = DriverManager.getConnection(CONST.dburl);
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() {
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;
}
}

Mysql建立好后,以后涉及数据库的操作,只要对象化Mysql就可以:

private String page_navlink_insert="insert into page_navlink values (?,?,?,?)";

public void insertnavlink() throws Exception
{
  ResultSet rs=null;
  try {
    Mysql mysql = new Mysql(page_navlink_insert);
    mysql.setInt(1,this.siteid);
    mysql.setInt(2,this.pageid);
    mysql.setString(3,this.navlinkname);
    mysql.setString(4,this.pagefile);
    mysql.executeUpdate();

    mysql.close();
    mysql = null;

  } catch (Exception ex) {
    throw new Exception("insertnavlink()"+ex.getMessage());
  }

}

在Jsp中,就可以直接使用一句语句使用insertnavlink()了:



........
NAV.insertnavlink();
......

频繁访问数据库,需要使用连接池,在tomcat 4.0中配置JNDI,稍微修改一下上面程序就可使用连接池.Tomcat的连接池配置和J2EE类似,因此程序不用修改,也可直接运行在J2EE上.
也可以使用第三方连接池, 如很有名的Poolman.

JAVA 数据库操作工具类----mysql

封装了一个JAVA操作mysql的工具类,如果有需要的,可以直接使用。1、MysqlHelper类,包括对数据库的CRUD操作,其中查询有单记录返回和多记录返回。另外,我使用了反射封装类,希望和大家多...
  • qqylc0011
  • qqylc0011
  • 2015年03月25日 20:19
  • 5513

Java对MySQL数据库进行操作【java】

数据库几乎是每一个应用型的程序都会用到,学会如何高效操作数据库也是开发一个重点。今天我总结了具体的操作步骤以及注意点。Java访问数据库主要用的方法是JDBC,它是java语言中用来规范客户端程序如何...
  • u010297791
  • u010297791
  • 2016年09月23日 14:28
  • 3637

JDBC实现用于操作数据库Mysql的工具类JDBCTools和DAO--完整可用版

用JDBC实现用于操作数据库Mysql的工具类JDBCTools和DAO,这是一个完整可用的版本,以后JDBC作为业务逻辑时候是可以直接使用的...
  • u013871100
  • u013871100
  • 2016年03月09日 10:36
  • 4523

Java操作Mysql数据库辅助类

本工具类既可以作为基类也可用于直接操作数据库。使用时建议的做法就是。创建UserDao继承自BaseDao即可。 操作SQLite,Orecle,SQL server等数据库替换驱动名极ja...
  • dong_18383219470
  • dong_18383219470
  • 2017年05月27日 14:57
  • 312

JAVA操作MySQL数据库类

数据库操作可以中WEB开发中最常用到的,很多Java开发工具都提供了自动的Data bean WinZard.只要数据库建立好,相应的操作数据库的Bean就基本可以自动完成,本人使用Jcreator开...
  • atco
  • atco
  • 2013年08月26日 14:23
  • 579

JAVA软件开发、MySQL数据库操作、HTML语言学习

  • 2013年07月17日 08:08
  • 32KB
  • 下载

java操作mysql数据库,不写sql语句版

  • 2008年08月28日 12:01
  • 3KB
  • 下载

java语言操作pageoffice自带印章连接mysql数据库

  • 2015年06月01日 09:40
  • 438KB
  • 下载

java连接MySQL数据库操作

  • 2013年10月10日 08:45
  • 187KB
  • 下载

java连接mysql数据库,并且实现增增删改查操作

  • 2013年06月04日 12:40
  • 75KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA操作MySQL数据库类
举报原因:
原因补充:

(最多只允许输入30个字)