精华内容
下载资源
问答
  • Java实现模糊搜索

    千次阅读 2019-08-18 13:35:24
    Java实现模糊搜索 select * from classification where name like CONCAT(CONCAT('%',#{name}),'%')

    Java实现模糊搜索

    
    select * from classification where name like CONCAT(CONCAT('%',#{name}),'%') 
    
    
    展开全文
  • java实现模糊搜索算法

    2020-08-15 12:55:40
    java实现模糊搜索算法介绍代码 介绍 这里说的模糊查询不是sql中like的效果,是相当于lucene中的FuzzyQuery效果。 比如:搜索值是"hella",匹配的数据是"hello",则模糊度为1匹配上该数据。 代码 算法: public ...

    java实现模糊搜索算法

    介绍

    这里说的模糊查询不是sql中like的效果,是相当于lucene中的FuzzyQuery效果。
    比如:搜索值是"hella",匹配的数据是"hello",则模糊度为1匹配上该数据。

    代码

    算法:

        public static boolean fuzzySearch(String query, String data){
            int allowCount = 0;// 允许改动数
            int counted = 0;// 已改动数
            int searchIndex = 0;// 搜索值的指针
            int dataIndex = 0;// 待匹配数据值的指针
            boolean flag = true;// 上一值是否确认
            int i;
    
            // 切割搜索值获取给定的允许改动数
            if ((i=query.indexOf("~")) > -1){
                if ((i+1) < query.length()){
                    allowCount=Integer.valueOf(query.substring(i+1));
                }else{
                    allowCount=2;
                }
            }
    
            // 搜索值数组
            char[] searchArrays = query.substring(0,i).toCharArray();
            // 待匹配的数据数组
            char[] dataArrays = data.toCharArray();
    
            // 开始处理
            A:
            while(true){
                if (counted>allowCount){
                    return false;
                }
                if (dataIndex >= dataArrays.length){
                    counted+=(searchArrays.length-searchIndex);
                    break;
                }
    
                if (flag){
                    boolean match = false;
                    for (int j=0;j<=(allowCount-counted);j++){
                        if ((j+searchIndex)>=searchArrays.length){
                            counted+=(dataArrays.length-dataIndex);
                            break A;
                        }
                        if (dataArrays[dataIndex]==searchArrays[j+searchIndex]){
                            if (j>1){
                                break;
                            }
                            counted+=j;
                            searchIndex+=(j+1);
                            match = true;
                            break;
                        }
                    }
                    if (!match){
                        counted+=1;
                        flag = false;
                    }
                } else{
                    boolean match = false;
                    for (int j=0;j<=(allowCount-counted+1);j++){
                        if ((j+searchIndex)>=searchArrays.length){
                            counted+=(dataArrays.length-dataIndex-1);
                            break A;
                        }
                        if (dataArrays[dataIndex]==searchArrays[j+searchIndex]){
                            if (j>2){
                                break;
                            }
                            if (j>1){
                                counted+=(j-1);
                            }
                            searchIndex+=(j+1);
                            match = true;
                            flag = true;
                            break;
                        }
                    }
                    if (!match){
                        counted+=1;
                        flag = false;
                    }
                }
                dataIndex++;
            }
            if (counted>allowCount){
                return false;
            }
            return true;
        }
    

    测试

        public static void main(String[] args) throws Exception {
            boolean flag = fuzzySearch("ellho~2","hello");
            System.out.println(flag);
        }
    
    展开全文
  • 模糊搜索模块,根据汉字的拼音进行数据库的模糊匹配
  • Java 实现模糊查询

    千次阅读 2019-08-05 19:20:22
    1,数据保存到数据库,多条件可以用mybatis的if标签来进行查询,关键字:like 2,Pattern 和 Matcher实现正则匹配 3,利用redis的keys实现模糊查询。

    1,数据保存到数据库,多条件可以用mybatis的if标签来进行查询,关键字:like
    2,Pattern 和 Matcher实现正则匹配
    3,利用redis的keys实现模糊查询。

    展开全文
  • Java实现模糊查询

    2020-09-22 09:40:57
    一、前端页面的代码 ...var="category"> ${category.cid}">${category.cname}</option> </c:forEach> </select> <input type="text" name="pname"> 搜索"> </form> </div> 页面的样式: ...

    一、前端页面的代码

    	<div>
    			<form action="${pageContext.request.contextPath}/ProductServlet" method="get">
    				<input type="hidden" name="action" value="findAllProductsByTJ">
    				<select name="cid">
    					<c:forEach items="${categoryList}" var="category">
    						<option value="${category.cid}">${category.cname}</option>
    					</c:forEach>
    				</select>
    				<input type="text" name="pname">
    				<input type="submit" value="搜索">
    			</form>
    		</div>
    

    页面的样式:

    <style type="text/css">
    			div{
    				position:absolute;/*绝对定位*/
    				left:529px;
    				top:80px;
    			}
    		</style>
    

    点击搜索,提交表单后,跳转到ProductServlet执行代码:

    /*
        *多条件组合查询
        * */
        public void findAllProductsByTJ(HttpServletRequest request, HttpServletResponse response) throws ServletException,
                IOException {
            //获得请求参数 cid pname
            String cid=request.getParameter("cid");
            String pname=request.getParameter("pname");
            //调用service 层多条件组合查询的方法
            List<Product> productList=service.findAllProductsByTJ(cid,pname);
            //将查询结果保存request域中
            request.setAttribute("productList",productList );
            //转发到product_list.jsp
            request.getRequestDispatcher("/product_list.jsp").forward(request,response );
        }
    

    service层代码:

    /*
        * 多条件组合查询
        * */
        public List<Product> findAllProductsByTJ(String cid, String pname) {
            return dao.findAllProductsByTJ(cid,pname);
        }
    

    dao层代码:

    /*
        * 多条件查询
        * */
        public List<Product> findAllProductsByTJ(String cid, String pname) {
            //1.获得JDBCTemplate
            JdbcTemplate template=new JdbcTemplate(DRUIDUtils.getDataSource());
            //2.编写临时SQL语句
            StringBuilder sb=new StringBuilder("select * from product where 1=1 ");
            //3.定义一个list集合存储SQL语句占位符的值
            ArrayList<Object> list=new ArrayList<>();
            //判断cid
            if(cid!=null && !cid.trim().equals("")){
                sb.append("and cid=? ");
                list.add(cid);
            }
            //判断pname
            if(pname!=null && !pname.trim().equals("")){
                sb.append("and pname like ?");
                list.add(pname);
            }
            //生成最终SQL语句
            String sql=sb.toString();
            //设置实际参数
            Object[] params=list.toArray();
            //执行查询操作
            List<Product> products=template.query(sql,new BeanPropertyRowMapper<>(Product.class) ,params );
            return products;
        }
    
    展开全文
  • import java.util.ArrayList; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.LinkedList; import java.util.List; import java.util.Map; import java...
  • 二进制串模糊搜索Java实现

    千次阅读 2011-06-04 21:37:00
    感觉是这个模糊查询效率不高,从文件读取出的数据并不多,就这么慢了...而且多线程的情况下并发吞度量并没有明显提高。 也许是本人程序水平,代码不多,希望有高手能指点一下 代码放这里了: ...
  • 主要介绍了jQuery实现模糊搜索功能的方法,结合实例形式总结分析了jQuery关键字搜索、模糊查询、动态删除table数据等相关操作技巧,需要的朋友可以参考下
  • java模糊查询

    万次阅读 多人点赞 2017-06-26 22:23:55
    由于项目中有很多地方设置了搜索框,所以搜索框之模糊查询势在必得;今晚笔者将详细讲解java模糊查询的细节及要点,希望能给大伙带来启发。 2.实现方案 后台代码: ①UserInfo实体类的定义 public class ...
  • 1、利用StringTokenizer将...3、利用like关键字实现数据库字符串过滤,配合like关键字使用是%表示任意适配的字符。   具体源代码: import java.util.StringTokenizer; public class SQLStringTester {...
  • 在之前版本http://download.csdn.net/source/3339688 上增加修改了一些
  • http://blog.csdn.net/lgnlgn/archive/2010/11/14/6008498.aspx 中提到的论文中的算法部分,整个eclipse工程打包了。
  • WWW07的 Detecting Near-Duplicates for Web Crawling 算法部分,eclipse工程整个打包了
  • java模糊查询、自动补全的实现

    千次阅读 2019-04-24 11:29:00
    java模糊查询、自动补全的实现1使用场景2 maven依赖3 拼音的工具类4 模糊搜索具体的实现5 模糊搜索字段的含义和用法 1使用场景 在平时的开发过程中,我们可能会遇到需要使用到模糊搜索的地方,类似这样的场景: ...
  • java 代码实现模糊查询

    千次阅读 2019-09-17 17:26:53
    转载于:https://my.oschina.net/u/3774949/blog/1923563
  • js实现模糊搜索

    千次阅读 2017-05-04 15:29:20
    功能一:关键字搜索 总结:1、搜索出的结果,前台先要清空原有表格 $("#tbody").empty;  2、后台返回的json格式字符串 js eval 专成对象var stus = eval("(" + msg + ")");,在循环进行字符串拼接到表格上 $("#...
  • Java web模糊查询的实现

    千次阅读 2019-04-20 15:53:57
    2.实现原理 首先在前端的<input>标签中输入你期望输入的数据,通过servlet传到后台,然后再dao,servlet层执行相应的操作业务。最后将学生的信息以一个list返回给前端界面 3.注意事项 需要注意的事项主要是...
  • 二进制串模糊搜索Java实现(续)

    千次阅读 2011-06-18 15:49:00
    上一篇具体讲了怎么做的,后来又一直在想如何提高. 因为不太明白如何提高效率,我又做了一些无谓的尝试,比如把同前缀的写到一个小文件里,例如8K,如果数据量小,多个前缀的数据都写在一块里,猜想从路径直接定位到...
  • 在给一个单元格设置怎样的函数去调用一个隐藏sheet的一行数据实现模糊查询
  • java 实现百度搜索框自动补全

    热门讨论 2013-01-16 15:19:14
    这个源码实现了类似于百度自动补全的功能,通过简单的异步操作进行实现 ajax+mysql模糊搜索,一个简单小demo。
  • Span使用之利用系统Span样式实现模糊搜索,匹配变色的特殊UI效果在上一篇博客中,演示了基本的Span的使用,实现了对于字体的放大,缩小,变色等等。而这篇博客便是对于上一篇博客所讲解的东西加以利用。如果对于上一...
  • 比如想要在云数据库中查找Java 相关书籍, 输入java ,书名中有JAVA,xxxjavaxxx,...但是小程序没有提供这种模糊搜索的封装,请问怎么实现 全部查询下来再提取的方式就不要说了,数据量没那么小。
  • java中如何实现模糊分页查询

    千次阅读 2017-06-22 22:05:51
    2.模糊分页查询的方法要注意语句的合并写法 步骤1.提供一个PageUtils类,其中包含四个属性 currPage当前页,totalSize总记录数, totalPage总页数, PageSize每页显示数, 实现四个属性的set
  • 1、直接在服务器搜索,拼接Linux命令实现 2、把文件从服务器下载到本地,通过读取文件并匹配内容的方式实现,缺点是文件过多时时效很慢,过大时可能会搜索不准确 暂时只实现第二种方式 工具类: 搜索文件内容后返回...
  • MongoDB模糊查询java实现样例

    千次阅读 2017-11-21 15:25:16
    其中只有密云和延庆是县,其他的为区,现在要将这两个例外查出来直接用mongoDB shell命令是这样查询的:db.country.find({'name':{$regex:/县/},'sheng':'11','level':3})java实现如下: package com.adtec.mongodb;...
  • 模糊搜索实现

    千次阅读 2017-08-23 20:55:00
    实现模糊搜索的功能,及在模糊搜索框内输入要查询的信息,会在用户基础信息栏显示模糊搜索的结果 以用户名模糊搜索为例 页面上实现点击回车键即可进行搜索的功能 &lt;%@ page language="java&...
  • //这个就是key,支持模糊搜索 redisTemplate.opsForValue().set(keys,"this is a test content!",1000, TimeUnit.SECONDS); String content=redisTemplate.opsForValue().get(keys).toString(); System.out.println(...
  • java仿google模糊搜索框 已经封装成jsp的tag标签,尽量实现通过。 使用时,只需要导入tag 标签即可,非常方便与快捷。
  • 三、实现的图形用户界面如下: ![![图片说明](https://img-ask.csdn.net/upload/201506/19/1434692767_590496.png)图片说明](https://img-ask.csdn.net/upload/201506/19/1434692761_289634.png)

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 30,526
精华内容 12,210
关键字:

java实现模糊搜索

java 订阅