Ⅰ 如何在java里做 模糊查询
可以使用正则表达式实现, 可以字符串本身的方法实现,请看示例:
importjava.util.regex.Pattern;
/**
*@authorArvin
*@time2016/11/821:38
*/
publicclassMain{
publicstaticvoidmain(String[]args){
Stringkeyword=".(你好)";
StringcontentOne="hello.(你好)asd";//LIKE匹配
StringcontentTwo="你好";//LIKE不匹配
//方法一:利用正则表达式
//构造正则表达式
Patternregex=Pattern.compile(keyword);
System.out.println(regex.matcher(contentOne).find());//true
System.out.println(regex.matcher(contentTwo).find());//false
//方法二:利用String的contain方法
System.out.println(contentOne.contains(keyword));//true
System.out.println(contentTwo.contains(keyword));//false
//方法三:利用indexOf方法,找得到说明包含
System.out.println(contentOne.indexOf(keyword)>-1);//true
System.out.println(contentTwo.indexOf(keyword)>-1);//false
}
}
Ⅱ JAVA方法,SQL语句模糊查询
这问题很眼熟
也可以这样:
String sql="select * from ARITCLE where type="+type+" and title like "++" and writer like "+writer+"";
改成
String sql="select * from ARITCLE where type="+type+" and title like '%"++"%' and writer like '%"+writer+"'%";
如果writer 这些参数是用户输入而且不经过处理的话
拼接字符串生成查询语句,会使SQL注入攻击变得相当容易
Ⅲ JAVA项目/JSP页面 中 怎样实现模糊查询
jsp实现模糊查询 实际就是在后台使用 like关键字和 % 符号做查询
比如查询所有姓 王 的人.
jsp文本框输入王 点击查询按钮 把文本框的值传入后台 在后台拼接sql语句
select * from user where name like '王%';
'王%' 代表 以'王'字开头 后面没有、一个或多个字符
'%王%' 标识 只要字符中 含有 王 字就可以查询
Ⅳ 如何在java List中进行模糊查询
这样一个List,里面存放的是多个Employee对象。然后我想对这个List进行按照Employee对象的名字进行模糊查询。有什么好的解决方案么?
比如我输入的查询条件为“wang”,那么应该返回只包含employee1的List列表。
List list = new ArrayList();
Employee employee1 = new Employee();
employee1.setName("wangqiang");
employee1.setAge(30);
list.add(employee1);