jdbc访问数据库

package com.china.bill.java.jdbc;

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

public class DbConnection {
	private Connection conn = null;
	private PreparedStatement ps = null;
	private ResultSet rs = null;
	
	// 连接数据库
	private void open() 
	{
		try 
		{
			// 加载驱动
			Class.forName("com.mysql.jdbc.Driver");
			// 获得连接
			conn = DriverManager.getConnection("jdbc:" +
					"mysql://localhost:3306/bill?useUnicode=true&characterEncoding=UTF-8","root","root");
		} 
		catch (ClassNotFoundException e) 
		{
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}
	
	// 执行增、删、改
	public int update(String sql , Object...params)
	{
		int conut = 0;
		
		try 
		{
			// 打开数据库连接
			open();
			// 执行sql语句,获取结果
			ps = conn.prepareStatement(sql);
			//给占位符赋值
			for (int i = 0 ; i < params.length ; i++) 
			{
				ps.setObject(i+1, params[i]);
			}
			// 执行
			conut = ps.executeUpdate();
		} 
		catch (SQLException e) 
		{
			e.printStackTrace();
		}
		finally
		{
			close();
		}
		
		return conut;
	}
	
	/**
	 * 执行查询
	 */
	public ResultSet query(String sql,Object...params) 
	{
		try {
			// 打开连接
			open();
			// 执行sql语句,获得结果集
			ps = conn.prepareStatement(sql);
			//给占位符赋值
			for (int i = 0; i < params.length; i++) {
				ps.setObject(i+1, params[i]);
			}
			// 获得结果
			rs = ps.executeQuery();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return rs;
	}
	
	// 关闭连接
	private void close() {
		if (rs != null) {
			try {
				rs.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if (ps != null) {
			try {
				ps.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if (conn != null) {
			try {
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}
}
package com.china.bill.java.jdbc;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import org.apache.commons.codec.binary.Base64;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.commons.lang.RandomStringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.china.bill.java.entity.EmailAddress;
import com.china.bill.java.util.PortalUtil;

public class AddEmail {
	
	private static final Logger log = LoggerFactory.getLogger(AddEmail.class);
	private static final DbConnection dbConnection = new DbConnection();
	
	public static void main(String[] args) 
	{
		/*EmailAddress emailAddress = new EmailAddress("", "");
		int count = addEmail(emailAddress);
		if (count > 0) 
		{
			System.out.println("新增成功!");
		} 
		else 
		{
			System.out.println("新增失败!");
		}*/
		EmailAddress emailAddress = findEmilById(2);
		System.out.println("账号\t" + emailAddress.getEmail() + "\t密码\t" + emailAddress.getPasswd());
		// 解密
		String passwd = PortalUtil.desPasswd(emailAddress.getPasswd(), emailAddress.getKeyCode());
		System.out.println("密码\t" + passwd);
	}
	/**
	 * 新增管理员邮箱
	 * @param emailAddress
	 * @return
	 */
	public static int addEmail(EmailAddress emailAddress) 
	{
		Map
   
   
    
     map = PortalUtil.aesPasswd(emailAddress.getPasswd(), "");
		
		String passwd = null;
		String keyCode = null;
		
		if (map.size() == 2) 
		{
			passwd = map.get("passwd");
			keyCode = map.get("keyCode");
		} 
		else 
		{
			log.debug("加密失败!");
		}
		
		String sql = "insert into emailaddress (email, passwd, keyCode) values (?, ?, ?)";
		
		
		int count = dbConnection.update(sql, emailAddress.getEmail(), passwd, keyCode);
		return count;
	}
	
	public static EmailAddress findEmilById(Integer id) 
	{
		String sql = "select * from emailaddress where id = ?"; 
		ResultSet rs =  dbConnection.query(sql, id);
		EmailAddress emailAddress = null;
		
		try {
			while (rs.next()) 
			{
				emailAddress = new EmailAddress(rs.getString(2), rs.getString(3), rs.getString(4));
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		
		return emailAddress;
	}
}

   
   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值