引言:模糊查询作为后台常用的一种查询方式,我们可以根据相应的 关键字对其检索,从而获得所需要的记录,本次模糊查询我们通过名字的任何一个字段进行匹配查询。
另外声明,源码就是以下的部分,直接复制就可以使用了。此外,想要模糊查询,最好学会分页查询,分页查询我用了两种方法,一种是利用的pageHelper,另一种没用到插件.
需要源码的,或者demo,在我的资源下载,需要远程帮忙的可以加我QQ1728608455
关注我的微信公众号,送IT视频资料,和本项目的源码,希望额能帮到你;
https://blog.csdn.net/liqz666/article/details/81868619
https://blog.csdn.net/liqz666/article/details/81532292
看看这些,对你模糊查询是一个很好的铺垫,希望能帮到大家了。
1、数据表设计
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`password` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`role` varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`createtime` date NOT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 41 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
2、数据表里增添几条记录:
INSERT INTO `user` VALUES (11, '李庆照', '12344', '学生', '2018-09-11');
INSERT INTO `user` VALUES (12, 'al', '121221', '学生', '2018-08-11');
INSERT INTO `user` VALUES (13, '韩小虎', '12344', '学生', '2018-09-10');
INSERT INTO `user` VALUES (14, '狄云辉', '12345', '学生', '2018-09-01');
INSERT INTO `user` VALUES (15, '王鹏', '124434', '学生', '2018-09-09');
INSERT INTO `user` VALUES (16, '魏鹏', '12344', '学生', '2018-09-14');
INSERT INTO `user` VALUES (17, '吕老师', '123456', '老师', '2018-09-10');
INSERT INTO `user` VALUES (18, '李庆照', '123456', '管理员', '2018-09-09');
INSERT INTO `user` VALUES (19, '吕老师', '12344', '学生', '2018-09-11');
INSERT INTO `user` VALUES (21, '甘志伟', '12344', '学生', '2018-09-11');
INSERT INTO `user` VALUES (32, '夏平平', '123456', '学生', '2018-09-11');
INSERT INTO `user` VALUES (38, '', '', '学生', '2018-09-11');
INSERT INTO `user` VALUES (39, '', '', '学生', '2018-09-11');
INSERT INTO `user` VALUES (40, 'admin', '123456', '学生', '2018-09-11');
SET FOREIGN_KEY_CHECKS = 1;
3、创建接口
List
4、在mybatis 里编写sql语句
5、业务逻辑层代码实现
@Service
@Transactional
public class UserService {
@Autowired
UserMapper userMapper;//注入mapper文件
//模糊根据登陆账号查询
public List
return userMapper.findByName(username);
}
6、编写User类的实体类
package com.lysoc.jmi.teaching.model;
import java.util.Date;
public class User {
private Integer id;
private String username;
private String password;
private String role;
private Date createtime;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username == null ? null : username.trim();
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password == null ? null : password.trim();
}
public String getRole() {
return role;
}
public void setRole(String role) {
this.role = role == null ? null : role.trim();
}
public Date getCreatetime() {
return createtime;
}
public void setCreatetime(Date createtime) {
this.createtime = createtime;
}
}
7、首先要查询出所有的记录
@Controller
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/findByName")
public String findByName(
@RequestParam(defaultValue="1") Integer currentPage,
HttpServletRequest request,Map
String username=request.getParameter("search");
System.out.println(username);
PageHelper.startPage(currentPage,8);
List
PageInfo
map.put("pageInfo", pageInfo);
return "userinfo";
}
}
8、在userinfo.jsp里进行打印显示。
登陆账号 | 登陆密码 | 角色 | 创建日期 | 操作 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
${user.username} | ${user.password} | ${user.role} | ${user.createtime} | --%>
9、效果图
根据名字的任何一个字段进行查询 ,希望能帮到大家,模糊查询成功,需要视频资源的可以加我QQ1728608455