一、运行截图
二、核心功能
模糊查询
@Override
public int findTotalCount(Map<String, String[]> condition) {
//1.定义模板初始化sql
String sql = "SELECT count(*) FROM user WHERE 1 = 1 ";
StringBuilder sb = new StringBuilder(sql);
//2.遍历map
Set<String> keySet = condition.keySet();
//定义参数的集合
List<Object> params = new ArrayList<Object>();
for (String key : keySet) {
//排除分页条件参数
if ("currentPage".equals(key) || "rows".equals(key)){
continue;
}
//获取value
String value = condition.get(key)[0];
//判断value是否有值
if (value != null && !"".equals(value)){
//有值
sb.append(" AND "+key+" LIKE ? ");
params.add("%"+value+"%");//加?条件的值
}
}
return template.queryForObject(sb.toString(), Integer.class, params.toArray());
}
分页
@Override
public List<User> findByPage(int start, int rows, Map<String, String[]> condition) {
//1.定义模板初始化sql
String sql = "SELECT * FROM user WHERE 1 = 1 ";
StringBuilder sb = new StringBuilder(sql);
//2.遍历map
Set<String> keySet = condition.keySet();
//定义参数的集合
List<Object> params = new ArrayList<Object>();
for (String key : keySet) {
//排除分页条件参数
if ("currentPage".equals(key) || "rows".equals(key)){
continue;
}
//获取value
String value = condition.get(key)[0];
//判断value是否有值
if (value != null && !"".equals(value)){
//有值
sb.append(" AND "+key+" LIKE ? ");
params.add("%"+value+"%");//加?条件的值
}
}
//添加分页查询
sb.append(" LIMIT ?, ? ");
//添加分页查询参数值
params.add(start);
params.add(rows);
return template.query(sb.toString(),new BeanPropertyRowMapper<User>(User.class),params.toArray());
}
删除多选
@Override
public void delSelectedUser(String[] ids) {
if (ids != null && ids.length > 0){
//1.遍历数组
for (String id : ids) {
//2.调用dao删除
dao.delete(Integer.parseInt(id));
}
}
}
@Override
public void delete(int id) {
//1.定义sql
String sql = "DELETE FROM user WHERE id = ?";
//2.执行sql
template.update(sql, id);
}