gpt4 book ai didi

java - jsp 中的过滤字符串不适用于括号 []

转载 作者:行者123 更新时间:2023-11-30 11:36:20 24 4
gpt4 key购买 nike

我有一个 jsp 页面,它向 servlet 发送请求,以根据选定的下拉值过滤表中列的结果,该值由对 MSSQL 数据库的 SQL 查询填充。现在我遇到了下拉列表中的一个项目有括号( something[something] )的问题,并且出于某种原因,当我选择该项目并过滤表格时,它不会返回任何结果,即使显然有在过滤器之前与该项目一起显示的数据行。这是我现在在过滤器下拉列表的 jsp 页面上的内容:

<select title="Something Filter" name="${MODULE.REQUEST_SOMETHING}"
id="${MODULE.REQUEST_SOMETHING}" tabindex="30"
onkeydown="typeSelect(this, -1, 'xbin', 1);" onchange="clearTTID();"
onblur="clearTTID();">
<option value=""></option>
<c:forEach items="${requestScope.something}" var="row">
<option value="${row.something}"
<c:set var="setSelected" value="${row.something }" />
<c:if test="${requestScope.something eq setSelected}">selected</c:if>
>${row.something}</option>
</c:forEach>
</select>

所有其他项目工作正常,只有文本、数字或括号,过滤器将按预期按这些项目过滤表格。

最佳答案

您需要使用 [] 转义左括号 [。因此,如果您要查找名称 t[t],您的查询将是

select * from student where name like '%t[[]t]%'

更新

第二种方法是在左括号 [ 上使用转义选项(这对我来说是新的,WOOHOO)

select * from student where name like '%t\[t]%' escape '\'

关于java - jsp 中的过滤字符串不适用于括号 [],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14585670/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com