首页 > 代码库 > 02 - Unit08:搜索笔记功能、搜索分页、处理插入数据库乱码问题

02 - Unit08:搜索笔记功能、搜索分页、处理插入数据库乱码问题

搜索笔记功能

按键监听事件

    $("#search_note").keydown(function(event){
        var code=event.keyCode;
        if(code==13){
            请求发送
        }
    })

select * from cnshare cnshare_title like ‘%‘

发送Ajax请求

  • 事件绑定:键盘监听事件(keydown)

  • 获取参数:keyword,作为模糊查询的基础

  • 发送请求:/share/find.do

服务器处理

  • ShareController.searchNote(String keyword)

  • ShareService.searchNote(String keyword)

    String title="%";
    
    if(keyword!=null){
    
        title="%"+keyword+"%";
    
    }
    
    shareDao.findLikeTitle(title);
    
    1. 不输入关键字,实现全表查询(‘%‘)

    2. 输入关键字,进行模糊查询(‘%keyword%‘)

  • ShareDao.findLikeTitle(String keyword)

  • Mapper: select *

        from cn_share 
    
        where cn_share_title like #{keyword}
    

Ajax回调处理

  • success:

    1. pcpart6显示,隐藏pcpart2

    2. 将li元素添加到$("#search_ul")列表中

      sli+=‘

    3. ‘;

      sli+=‘‘;

      sli+=‘<i class="fa fa-file-text-o" title="online"

      rel="tooltip-bottom">‘;

      sli+=shareTitle;

      sli+=‘<button type="button" class="btn btn-default btn-xs

      btnposition btnslide_down"><i class="fa fa-chevron-

      down">‘;

      sli+=‘‘;

      sli+=‘

    4. ‘;
  • error: 提示搜索笔记失败

搜索分页需求

    select * from cn_share 

    where cn_share_title like #{title}

    limit #{begin},3

    n:抓取记录的起点,从0开始(0表示第一条)

    m:抓取记录的最大数

    1 - 0

    2 - 3

    3 - 6

    n - (n-1)*3

处理插入数据库乱码问题

    "jdbc:mysql:///cloud_note?

    useUnicode=true&amp;charaterEncoding=utf8"

作业:实现搜索分享笔记的分页功能(重点)

技术分享

02 - Unit08:搜索笔记功能、搜索分页、处理插入数据库乱码问题