项目源码 :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>
&nbsp;&nbsp;&nbsp;
<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; }

最新文章

  1. C++11网络编程
  2. 【repost】document.write的用处
  3. URL、URN、URI的区别?
  4. PIC12F629帮我用C语言写个程序,控制三个LED亮灭
  5. SCII码表 键盘常用ASCII码
  6. tp中phpexcel导出实例
  7. win32收不到F10按键消息解决办法
  8. R语言学习——向量
  9. android 版本更新适配8.0,解决8.0手机无法更新自动安装apk
  10. [纯C#实现]基于BP神经网络的中文手写识别算法
  11. 20165305 学习基础和C语言基础调查
  12. Redux入门学习
  13. Java——使用File类递归遍历指定路劲下的所有文件
  14. 高可用OpenStack(Queen版)集群-12.Cinder计算节点
  15. flask源码解析之DispatcherMiddleware
  16. bzo1016: [JSOI2008]最小生成树计数
  17. BZOJ1432_Function_KEY
  18. POJ. 2253 Frogger (Dijkstra )
  19. 【找规律】Gym - 100923L - Por Costel and the Semipalindromes
  20. 《UNI|X环境高级编程》 源代码配置

热门文章

  1. PAT (Advanced Level) 1128~1131:1128N皇后 1129 模拟推荐系统(set&lt;Node&gt;优化) 1130 中缀表达式
  2. MAC 终端编辑完成后如何保存:
  3. angular.js开发 将多页面开发成单页面
  4. 《Netlogo多主体建模入门》笔记8
  5. Day5 - H - Supermarket POJ - 1456
  6. C++代写,代写C++,C++程序代写,C++ assignment代写
  7. eshop3-JDK 安装
  8. xaml与CSS中的Margin顺序不同
  9. Notepad2&amp;Notepad++
  10. leetcode1305 All Elements in Two Binary Search Trees