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>
			&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
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值