对于MyBatis的模糊查询的实现+文本框、单选框以及复选框的数据回显的实现

MyBatis的模糊查询sql语句与之前使用的不太一样

主要是利用下面这种语句实现的(查了好久的,认真记一下吧!)

select * from huodong where theme like concat('%',#{theme},'%') or shijian like concat('%',#{shijian},'%') or lei like concat('%',#{lei},'%') or whe like concat('%',#{whe},'%')

这是实现了多种条件的模糊查询

文本框的数据回显

value="${user.shijian}"

利用EL表达式,在input标签里面加上value的属性就行

单选框的数据回显

<c:if test="${user.lei eq '社团竞赛'}"> checked="checked"</c:if>

利用c标签,在input标签里面加上这样一段话,因为单选框里面本来就有相对应的value值,只要利用if进行筛选就好啦!

复选框的数据回显

 <c:if test="${fn:contains(user.shui,'社团成员') }"> checked="checked"</c:if>

因为是复选框嘛,他得到的数据大都是一个数组,基本上就是使用contains包围起来,再进行筛选,除了要修改jsp页面的值,还需要修改updateServlet里面的值
本来是这样的:

String shui=req.getParameter("shui");

现在是需要先用数组接收数据为一个数组,然后再利用相关函数方法转为String字符串:

String[] shuis = req.getParameterValues("shui");
        String sh= Arrays.toString(shuis);

但是里面如果不做什么删除的话,两端会带有[]

posted @ 2022-10-29 22:21  yesyes1  阅读(71)  评论(0编辑  收藏  举报