这次是做的一个简单的前端和数据库结合实现的一个注册功能.
DAO类
package com.softeem.dao;
import com.softeem.entity.User;
import com.softeem.db.DBUtils;
import sun.security.util.Password;
import java.sql.Connection;
import java.util.List;
/**
* @Author liqiuyang 2020/8/21 15:40
*/
public class RegDAO {
private Connection conn;
public RegDAO() {
}
public RegDAO(Connection conn) {
this.conn = conn;
}
public boolean insert(User u){
String sql = "insert into tbuser (name,password,age) values(?,?,?)";
return DBUtils.exeUpdate(sql,u.getName(),u.getPassword(),u.getAge());
}
public User selectUser(String name,String password){
String sql = "select * from tbuser where name=? and password=?";
return DBUtils.queryOne(User.class,sql,name,password);
}
public List<User> selectlist(){
return DBUtils.queryList(User.class,"select * from tbuser");
}
public boolean delete(int id){
String sql = "delete from tbuser where id=?";
return DBUtils.exeUpdate(sql,id);
}
public boolean update(User u){
String sql = "update tbuser set password=? where id=?";
return DBUtils.exeUpdate(conn,sql,u.getPassword(),u.getId());
}
}
工具类
package com.softeem.db;
import com.alibaba.druid.pool.DruidDataSource;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Field;
import java.sql.*;
import java.util.*;
/**
* 数据库工具类v2.0 将访问数据的公共代码抽取: 1.加载驱动 2.连接获取 6.关闭资源
*
* @author Magicbookpro
*
*/
public class DBUtils {
/** 驱动类路径 */
private static String DRIVER_CLASS;
/** url地址 */
private static String URL;
/** 数据库服务器登录用户名 */
private static String USER;
/** 数据库服务器登录密码 */
private static String PASSWORD;
/**最大活动链接数*/
private static int MAX_ACTIVE;
/**最长等待连接获取的时间*/
private static long MAX_WAIT;
/**初始链接数*/
private static int INIT_SIZE;
/**声明连接池的引用*/
private static DruidDataSource ds;
static {
try {
//读取属性文件后去连接数据库相关的字符串
InputStream is = DBUtils.class.getResourceAsStream("/jdbc.properties");
//创建属性对象
Properties p = new Properties();
//加载包含属性信息的输入流
p.load(is);
//根据属性名获取属性值
DRIVER_CLASS = p.getProperty("driver");
URL = p.getProperty("url");
USER = p.getProperty("user");
PASSWORD = p.getProperty("password");
//获取连接池相关配置
MAX_ACTIVE = Integer.parseInt(p.getProperty("pool.maxActive"));
MAX_WAIT = Long.parseLong(p.getProperty("pool.maxWait"));
INIT_SIZE = Integer.parseInt(p.getProperty("pool.initSize"));
//初始化连接池
init();
} c