//dbhelper:数据库连接类
public static Connection getConnection() throws Exception{
//JDBC连接驱动
Class.forName("com.mysql.jdbc.Driver");
//数据库 用户名密码 连接的数据库
String user="";
String password="";
String url="jdbc:mysql://localhost:3306/roco?characterEncoding=utf-8";//characterEncoding=utf-8防止乱码
// 建立给定的数据库 URL 的连接。
Connection conn=DriverManager.getConnection(url, user, password);
return conn;
}
//UserDao接口类interface
public boolean register(userBean userbean);//注册
public List<userBean>query();//查询
public boolean delete(String yonghum) ;//根据id删除用户
public boolean update(String yonghum,String username,String password) ;//更新用户信息
/*userBean 用户封装类 yonghum- username- password-- bean(userBean)封装的属性 */
//userdaoimpl 继承接口类 implements关键字继承UserDao接口类 add unimplemented methods 添加未实现的方法
//注册 or添加
public boolean register(userBean userbean) {
Connection conn;
int num=0;
try {
//dbhelper数据库连接类 点上getConnection() 连接数据库类的连接方法
conn = dbhelper.getConnection();
//sql添加语句(可以先在数据库里运行一次查询语句有没有问题)
String sql="insert into user(yonghum,username,password) values(?,?,?)";
//PreparedStatement 预编译语句对象,用于执行预编译的SQL语句,执行效率比Statement高
PreparedStatement pst=conn.prepareStatement(sql);
//注意bean层封装的数据类型
pst.setString(1, userbean.getYonghum());
pst.setString(2, userbean.getUsername());
pst.setString(3, userbean.getPassword());
//exeupdate用于执行 INSERT(增加)、UPDATE(更新) 或 DELETE(删除) 语句以及 SQL DDL(数据定义语言)语句
//executeQuery 通常用于SELECT查询语句
//在此 PreparedStatement 对象中执行 SQL 语句,该语句必须是一个 SQL 数据操作语言(Data Manipulation Language,DML)语句,比如 INSERT、UPDATE 或 DELETE 语句;或者是无返回内容的 SQL 语句,比如 DDL 语句。
num=pst.executeUpdate();
//Exception 捕捉异常
} catch (Exception e) {
e.printStackTrace();
}
// 判断num 并返回Boolean值true or false
return num>0?true:false;
}
//查询
public List<userBean> query() {
Connection conn;
//创建list容器放入userBean对象
List<userBean> list = new ArrayList<userBean>();
try {
conn = dbhelper.getConnection();
String sql="select * from user";
PreparedStatement pstm=conn.prepareStatement(sql);
//在此 PreparedStatement 对象中执行 SQL 查询,并返回该查询生成的 ResultSet 对象。
ResultSet rs= pstm.executeQuery();
//循环遍历出数据库的所有数据
while(rs.next()){
//实例化UserBean
userBean user = new userBean();
user.setYonghum(rs.getString(1));
user.setUsername(rs.getString(2));
user.setPassword(rs.getString(3));
//放入list集合
list.add(user);
}
} catch (SQLException e) {
//捕捉sql运行时发生的异常
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
//返回list
return list;
}
//删除 根据yonghum删除
public boolean delete(String yonghum) {
Connection conn;
int i=0;
boolean de= false;
try {
conn=dbhelper.getConnection();
String sql="delete from user where yonghum='"+yonghum+"'";
PreparedStatement pstm=conn.prepareStatement(sql);
i=pstm.executeUpdate();
//判断
if(i>0){
de= true;
}
} catch (Exception e) {
e.printStackTrace();
}
//返回Boolean值
return de;
}
//更新 修改
public boolean update(String yonghum, String username, String password) {
Connection conn;
boolean up= false;
int i=0
try {
conn=dbhelper.getConnection();
String sql="update usern set username ='"+username+"',password ='"+password+"' where yonghum='"+yonghum+"'";
PreparedStatement pstm=conn.prepareStatement(sql);
i=pstm.executeUpdate();
if(i>0){
up= true;
}
} catch (Exception e) {
e.printStackTrace();
}
return up;
}
最后copy连接数据库的jar包 至工程 -webroot-WEB-INF-lib