项目源码 :https://download.csdn.net/download/weixin_44718300/11091042

此处省略一段话。去上一篇查看

NO01:修改list.jsp

  1. <tr>
  2. <td colspan="8">
  3. 按姓名查询:<input type="text" name = "sname"/>
  4. 按性别查询:<select name="sgender">
  5. <option value="">--请选择--
  6. <option value="男">
  7. <option value="女">
  8. </select>
  9. &nbsp;&nbsp;&nbsp;
  10. <input type="submit" value="查询">
  11. <a href="add.jsp">添加</a></td>
  12. </tr>

还要套上一层form

  1. <form action="SearchStudentServlet" method="post">

NO02:新建Servlet


  1. /*
  2. * 负查询所有所有学生信息,呈现到list.jsp页面上
  3. */
  4. public class StudentListServlet extends HttpServlet {
  5. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  6. try {
  7. //1查出所有学生
  8. StudentService service = new StudentServiceImpl();
  9. List<Student> list = service.findAll();
  10. //2.把数据传到作用于中
  11. request.setAttribute("list", list);
  12. //3跳转
  13. request.getRequestDispatcher("list.jsp").forward(request, response);
  14. } catch (SQLException e) {
  15. // TODO Auto-generated catch block
  16. e.printStackTrace();
  17. }
  18. }
  19. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  20. doGet(request, response);
  21. }
  22. }

NO03:创建一个Util为了判断字符串是否为空

  1. public class TextUtil {
  2. public static boolean isEmpty(CharSequence s) {
  3. return s==null || s.length() == 0;
  4. }
  5. }

NO04:修改Service接口和实现类

  1. //迷糊查询,根据姓名或者性别,或者都有
  2. List<Student> searchStudent(String sname,String sgender) throws SQLException;
  1. @Override
  2. public List<Student> searchStudent(String sname, String sgender) throws SQLException {
  3. StudentDao dao = new StudentDaoImpl();
  4. return dao.searchStudent(sname, sgender);
  5. }

NO05:修改Dao接口和实现类

  1. //迷糊查询,根据姓名或者性别,或者都有
  2. List<Student> searchStudent(String sname,String sgender) throws SQLException;
  1. @Override
  2. public List<Student> searchStudent(String sname, String sgender) throws SQLException {
  3. QueryRunner runner = new QueryRunner(JDBCUtil.getDataSouce());
  4. String sql = "select * from stu where 1=1";
  5. List<String> list = new ArrayList<String>();
  6. //判断有没有姓名,有的话组拼
  7. if(!TextUtil.isEmpty(sname)) {
  8. sql = sql+" and sname like ?";
  9. list.add("%"+sname+"%");
  10. }
  11. //判断有没有性别,有的话组拼
  12. if(!TextUtil.isEmpty(sgender)) {
  13. sql=sql+" and gender = ?";
  14. list.add(sgender);
  15. }
  16. System.out.println(sql);
  17. List<Student> liststu = runner.query(sql,
  18. new BeanListHandler<Student>(Student.class),list.toArray());
  19. return liststu;
  20. }

MVC学生管理系统-阶段V(模糊查询)的更多相关文章

  1. MVC学生管理系统-阶段IV(修改学生信息)

    项目源码 :https://download.csdn.net/download/weixin_44718300/11091042 前期准备,主体框架, 学生列表显示  请看阶段一文章 添加学生信息 ...

  2. MVC学生管理系统-阶段I(显示学生列表)

    项目源码 :https://download.csdn.net/download/weixin_44718300/11091042 目录 MVC设计模式 前期准备: NO01:新建一个index.js ...

  3. MVC学生管理系统-阶段III(删除学生信息)

    项目源码 :https://download.csdn.net/download/weixin_44718300/11091042 前期准备,主体框架,学生列表显示  请看阶段一文章 添加学生信息   ...

  4. MVC学生管理系统-阶段II(添加学生信息)

    项目源码 :https://download.csdn.net/download/weixin_44718300/11091042 前期准备,主体框架,学生列表显示    请看上一篇文章 本文是对阶段 ...

  5. jsp学习之基于mvc学生管理系统的编写

    mvc开发模式:分别是 model层 view层 Control层 在学生管理系统中,model层有学生实体类,数据访问的dao层,view层主要是用于显示信息的界面,Control层主要是servl ...

  6. Mybatis 模糊查询 中文问题

    IDE编码:GBK ,换成UTF-8也不行! @Testpublic void testSearchStudents() {logger.info("查询学生(带条件)");Map ...

  7. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(20)-多条件模糊查询和回收站还原的实现

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(20)-多条件模糊查询和回收站还原的实现 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架 ...

  8. Java学生管理系统(连接数据库查询)超详细

    这几天逼着交Java,借鉴各位师傅的做出来这么个简陋的东西,各位大师傅不要笑我.(学都没有学过Java的我,QAQ~) 下面针对的都是SQL Server系列的连接,如果你使用MySQL那么不必看关于 ...

  9. 详细介绍idea实现javaweb项目登入注册(华东交通大学教务处信息管理系统)、模糊查询

    详细介绍idea实现javaweb项目登入注册(华东交通大学教务处信息管理系统).模糊查询 1,创建数据库,我的用户名:root 密码:root,数据库名称:lianwei,表名:login 2,效果 ...

随机推荐

  1. spring事务代码实践

    事务一般是指数据库事务,是指作为一个程序执行单元执行的一系列操作,要么完全执行,要么完全不执行.事务就是判断以结果为导向的标准. 一.spring的特性(ACID) (1).原子性(atomicity ...

  2. ffmpeg 学习:002-代码架构

    前言 使用 ffmpeg 库时,最好先理解好ffmpeg的代码结构图. 下面这张图表明了FFmpeg在解码一个视频的时候的函数调用流程,为了保证结构清晰,其中仅列出了最关键的函数,剔除了其它不是特别重 ...

  3. 使用Ubuntu系统编译安装Zabbix企业级监控系统

    使用Ubuntu系统编译安装Zabbix企业级监控系统   作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Ubuntu系统部署笔记:https://www.cnblogs.com/ ...

  4. C# log4net相关配置说明

    添加相关文件到工程 链接: https://pan.baidu.com/s/1o83Juo6 密码: inkg 下载附件, 把里的log4net.dll 和 log4net.config 复制到工程目 ...

  5. django ajax发送post请求

    第一种:将csrf_token放在from表单里 <script> function add_competion_goods() { $.ajax({ url: "{% url ...

  6. Java生鲜电商平台-优惠券系统设计详解

    Java生鲜电商平台-优惠券系统设计详解 优惠券作为电商最常用的营销手段,对于商家而言可以起到拉新.促活.提高转化的作用,对用户而言也可以获得实惠,今天就来谈谈优惠券系统的设计逻辑. 我对于优惠券系统 ...

  7. qq群的表设计探究

    2018年3月21日  课题组管理就如qq的群是一样的,课题组有课题组组长:qq群有群主:课题组有组员:qq群有群人员 对于一个课题组来说,组长可以对课题组进行修改,组员只能看得见,但是不能修改.所以 ...

  8. jenkins + gitlab 快速搭建(docker-compose) 时间,时区 同步

    记录一下吧   算打一下 tag   最近在整得 swarm + jenkins 实现自动化部署 回滚 #构建jenkins 镜像 #dockerfile:      docker build -t  ...

  9. 基于 Annotation 的装配(注解)

    注解:就是一个类,使用@注解名称 开发中:使用注解 取代 xml配置文件. 1. @Component取代<bean class=""> @Component(&quo ...

  10. FULLTEXT INDEX全文索引

    给现有的wxinfo表的sourceUrl 字段创建全文索引 ALTER TABLE wxinfo ADD FULLTEXT INDEX sourceUrl (sourceUrl) 创建全文索引前: ...