【插入用户信息、删除、查询方法的代码如下:】
package cn.neusoft.mybatis.dao;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import cn.neusoft.mybatis.jdbc.Dbutils;
import cn.neusoft.mybatis.pojo.Userinfo;
public class UserinfoDaoImpl implements userinfoDao {
@Override
public boolean addUser(Userinfo userinfo) {
// 读取Userinfo实体类的信息,然后把信息插入到数据库
//1、编写sql语句
String sql = "insert into userinfo (username,pwd) value (?,?)";
//2、如果sql语句中有问号,我们需要对应信息
//obj 对象中 userinfo.getUsername()在本方法对应第一个问号
// userinfo.getPwd()在本方法中对应第二个问号
Object[] obj = new Object[]{userinfo.getUsername(),
userinfo.getPwd()};
//3、把sql语句以及obj对象放入Dbutils 的executeUpdate方法中进行执行
//注意,Dbutils 的executeDate方法类型是int类型,只能使用int类型接收
int a = Dbutils.executeUpdate(sql, obj);
if(0!=a){//如果insert 能执行,那么a的值就不会是0,那么我们认为操作成功,返回true
return true;
}
return false;
}
@Override
public boolean updateUser(Userinfo userinfo){
String sql = "update userinfo set pwd=‘"+userinfo.getPwd()+
"‘ where username=‘"+userinfo.getUsername()+"‘";
System.out.println(sql);
//由于以上sql文 我们没有写? 所以不适用object[]对象做填充
int a = Dbutils.executeUpdate(sql, null);
if(0!=a){
return true;
}
return false;
}
@Override
public boolean deleteUser(String username){
String sql = "delete from userinfo where username = ?";
Object[] obj = new Object[]{username};
int a = Dbutils.executeUpdate(sql, obj);
if(0!=a){
return true;
}
return false;
}
//查询所有用户信息,最后返回一个List集合
@Override
public List<Userinfo> findAll() {
// TODO Auto-generated method stub
List<Userinfo> list = new ArrayList<Userinfo>();
String sql = "select * from userinfo";
//把sql文查询结果返回给ResultSet对象
ResultSet rs = Dbutils.executeQuery(sql, null);
try {
while(rs.next()){
//由于查询所有信息意味着userinfo需要重复使用,那么就会再循环体中多次使用
//Userinfo
Userinfo userinfo = new Userinfo();
//把rs对象中查询到的每一组信息放入Userinfo的实体类中
userinfo.setUserid(rs.getInt("userid"));
userinfo.setUsername(rs.getString("username"));
userinfo.setPwd(rs.getString("pwd"));
list.add(userinfo);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}