Java 数据库编程之mysql(一)

2014-11-24 02:31:39 · 作者: · 浏览: 0

Java 数据库编程之mysql

一、基本知识

1、 JDBC 提供了与平台无关的执行sql的API

2、 JDBC操作步骤

a.加载数据库驱动程序,将开发包的地址加载classpath中

b.建立连接

c.使用语句进行数据库操作。

d.关闭数据库

二、mysql中建立连接和关闭连接的功能类 (背景:李兴华 人员管理系统)

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class DataBaseConnection {
//定义mysql的数据库驱动程序
	private static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
//定义链接地址
	private static final String DBURL = "jdbc:mysql://localhost:3306/test3" ;
//定义链接用户名
	private static final String DBUSER = "root" ;
//定义密码
	private static final String DBPASS = "123456" ;
	private Connection conn = null ;
	public DataBaseConnection(){
		try {
			Class.forName(DBDRIVER) ;//加载驱动程序
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		try {
//链接mysql数据库时要加上链接的用户名和密码
			conn = DriverManager.getConnection(DBURL, DBUSER,DBPASS) ;
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	public Connection getConnection(){
		return this.conn ;
	}
	public void close(){
		if(this.conn!=null){
			try {
				this.conn.close() ;
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
}

三、mysql增删改查功能类使用的代理模式

package org.lxh.useradmin.dao.proxy;
import java.util.List;
import org.lxh.useradmin.dao.IUserDAO;
import org.lxh.useradmin.dao.impl.IUserDAOImpl;
import org.lxh.useradmin.dbc.DataBaseConnection;
import org.lxh.useradmin.vo.User;

public class IUserDAOProxy implements IUserDAO {
	private DataBaseConnection dbc = null;
	private IUserDAO dao = null;

	public IUserDAOProxy() {
		this.dbc = new DataBaseConnection();
		this.dao = new IUserDAOImpl(this.dbc.getConnection());
	}

	@Override
	public boolean doCreate(User user) throws Exception {
		boolean flag = true;
		try {
			flag = this.dao.doCreate(user);
		} catch (Exception e) {
			throw e;
		} finally {
			this.dbc.close();
		}
		return flag;
	}

	@Override
	public boolean doDelete(int id) throws Exception {
		boolean flag = true;
		try {
			flag = this.dao.doDelete(id);
		} catch (Exception e) {
			throw e;
		} finally {
			this.dbc.close();
		}
		return flag;
	}

	@Override
	public boolean doUpdate(User user) throws Exception {
		boolean flag = true;
		try {
			flag = this.dao.doUpdate(user);
		} catch (Exception e) {
			throw e;
		} finally {
			this.dbc.close();
		}
		return flag;
	}

	@Override
	public List
  
    findAll(String keyWord) throws Exception {
		List
   
     all = null; try { all = this.dao.findAll(keyWord); } catch (Exception e) { throw e; } finally { this.dbc.close(); } return all; } @Override public User findById(int id) throws Exception { User user = null; try { user = this.dao.findById(id); } catch (Exception e) { throw e; } finally { this.dbc.close(); } return user; } } 
   
  

package org.lxh.useradmin.dao.impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import org.lxh.useradmin.dao.IUserDAO;
import org.lxh.useradmin.vo.User;

public class IUserDAOImpl implements IUserDAO {
	private Connection conn = null;

	public IUserDAOImpl(Connection conn) {
		this.conn = conn;
	}

	@Override
	public boolean doCreate(User user)