MVC学生管理系统-阶段V(模糊查询)
项目源码 :https://download.csdn.net/download/weixin_44718300/11091042
此处省略一段话。去上一篇查看
NO01:修改list.jsp
<tr>
<td colspan="8">
按姓名查询:<input type="text" name = "sname"/>
按性别查询:<select name="sgender">
<option value="">--请选择--
<option value="男">男
<option value="女">女
</select>
<input type="submit" value="查询">
<a href="add.jsp">添加</a></td>
</tr>
还要套上一层form
<form action="SearchStudentServlet" method="post">
NO02:新建Servlet
/*
* 负查询所有所有学生信息,呈现到list.jsp页面上
*/
public class StudentListServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
try {
//1查出所有学生
StudentService service = new StudentServiceImpl();
List<Student> list = service.findAll();
//2.把数据传到作用于中
request.setAttribute("list", list);
//3跳转
request.getRequestDispatcher("list.jsp").forward(request, response);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
NO03:创建一个Util为了判断字符串是否为空
public class TextUtil {
public static boolean isEmpty(CharSequence s) {
return s==null || s.length() == 0;
}
}
NO04:修改Service接口和实现类
//迷糊查询,根据姓名或者性别,或者都有
List<Student> searchStudent(String sname,String sgender) throws SQLException;
@Override
public List<Student> searchStudent(String sname, String sgender) throws SQLException {
StudentDao dao = new StudentDaoImpl();
return dao.searchStudent(sname, sgender);
}
NO05:修改Dao接口和实现类
//迷糊查询,根据姓名或者性别,或者都有
List<Student> searchStudent(String sname,String sgender) throws SQLException;
@Override
public List<Student> searchStudent(String sname, String sgender) throws SQLException {
QueryRunner runner = new QueryRunner(JDBCUtil.getDataSouce());
String sql = "select * from stu where 1=1";
List<String> list = new ArrayList<String>();
//判断有没有姓名,有的话组拼
if(!TextUtil.isEmpty(sname)) {
sql = sql+" and sname like ?";
list.add("%"+sname+"%");
}
//判断有没有性别,有的话组拼
if(!TextUtil.isEmpty(sgender)) {
sql=sql+" and gender = ?";
list.add(sgender);
}
System.out.println(sql);
List<Student> liststu = runner.query(sql,
new BeanListHandler<Student>(Student.class),list.toArray());
return liststu;
}
MVC学生管理系统-阶段V(模糊查询)的更多相关文章
- MVC学生管理系统-阶段IV(修改学生信息)
项目源码 :https://download.csdn.net/download/weixin_44718300/11091042 前期准备,主体框架, 学生列表显示 请看阶段一文章 添加学生信息 ...
- MVC学生管理系统-阶段I(显示学生列表)
项目源码 :https://download.csdn.net/download/weixin_44718300/11091042 目录 MVC设计模式 前期准备: NO01:新建一个index.js ...
- MVC学生管理系统-阶段III(删除学生信息)
项目源码 :https://download.csdn.net/download/weixin_44718300/11091042 前期准备,主体框架,学生列表显示 请看阶段一文章 添加学生信息 ...
- MVC学生管理系统-阶段II(添加学生信息)
项目源码 :https://download.csdn.net/download/weixin_44718300/11091042 前期准备,主体框架,学生列表显示 请看上一篇文章 本文是对阶段 ...
- jsp学习之基于mvc学生管理系统的编写
mvc开发模式:分别是 model层 view层 Control层 在学生管理系统中,model层有学生实体类,数据访问的dao层,view层主要是用于显示信息的界面,Control层主要是servl ...
- Mybatis 模糊查询 中文问题
IDE编码:GBK ,换成UTF-8也不行! @Testpublic void testSearchStudents() {logger.info("查询学生(带条件)");Map ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(20)-多条件模糊查询和回收站还原的实现
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(20)-多条件模糊查询和回收站还原的实现 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架 ...
- Java学生管理系统(连接数据库查询)超详细
这几天逼着交Java,借鉴各位师傅的做出来这么个简陋的东西,各位大师傅不要笑我.(学都没有学过Java的我,QAQ~) 下面针对的都是SQL Server系列的连接,如果你使用MySQL那么不必看关于 ...
- 详细介绍idea实现javaweb项目登入注册(华东交通大学教务处信息管理系统)、模糊查询
详细介绍idea实现javaweb项目登入注册(华东交通大学教务处信息管理系统).模糊查询 1,创建数据库,我的用户名:root 密码:root,数据库名称:lianwei,表名:login 2,效果 ...
随机推荐
- k-近邻算法原理入门-机器学习
//2019.08.01下午机器学习算法1——k近邻算法1.k近邻算法是学习机器学习算法最为经典和简单的算法,它是机器学习算法入门最好的算法之一,可以非常好并且快速地理解机器学习的算法的框架与应用.2 ...
- Bug的等级及定位
缺陷等级一般划分为四个等级:致命.严重.一般.低 一.致命(一级bug) 通常表现为:系统无法运行,崩溃或严重资源不足,应用模块无法启动或者异常退出,主要功能模块无法使用. 比如: 1.系统崩溃(蓝屏 ...
- 区块链 - 哈希(Hash)
章节 区块链 – 介绍 区块链 – 发展历史 区块链 – 比特币 区块链 – 应用发展阶段 区块链 – 非对称加密 区块链 – 哈希(Hash) 区块链 – 挖矿 区块链 – 链接区块 区块链 – 工 ...
- 1_01_MSSQL课程_基础入门2
1.数据库的迁移方案 ->分离 附加 ->权限问题: ->启用Administrator账号 ->把数据库文件放到默认的数据库文件存放目录. ->数据库文件兼容级别,设置 ...
- Emergency
题意:有N个点,M条边,每个点有权值,问从起点到终点最短路的个数以及权值最大的最短路的权值. 分析:修改Dijstra模板. #include<bits/stdc++.h> using n ...
- vue - data 接收 props 的值
<template> <div> <div v-for="todo in a" :key="todo.id"> ...
- 024、Java中字符串连接字符串拼接
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- JS 选择电脑中的文件目录
按钮调用方法function CarryOut(){ var inputObj=document.createElement('input') inputObj.setAttribute('id',' ...
- javaboot+es
说明:可能有些书教你学es的时候,叫你下载什么kibana,crul……之类的也要版本对应,但实际上这些东西写代码不是必须.当时为了搞这些东西花了一天时间.我们用postman也可以写命令的. 正文: ...
- 会话控制——Cookie和Session
Cookie简介 l HTTP是无状态协议,服务器不能记录浏览器的访问状态,也就是说服务器不能区分中两次请求是否由一个客户端发出.这样的设计严重阻碍的Web程序的设计.如:在我们进行网购时,买了一条 ...