mybaits的pagehelper插件和模糊查询的使用

1.在pom文件中添加依赖

<!--引入pageHelper分页插件  PageInfo -->
    <dependency>
      <groupId>com.github.pagehelper</groupId>
      <artifactId>pagehelper</artifactId>
      <version>5.0.0</version>
    </dependency>

2.在spring-core.xml中添加插件

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">	   
	<property name="dataSource" ref="ds"></property>		
	<!--  扫描我们制定目录下的mapper.xml文件 
	      EmployeeMapper.xml
	      DeptMpper.xml
	-->		
	<property name="mapperLocations" value="classpath:mybatis/mapper/*.xml"></property>
	<!-- 加载mybatis的配置文件 -->
	<property name="configLocation" value="classpath:mybatis/sqlMapConfig.xml"></property>
	<!-- 引入pagehelper分页插件 -->
	<property name="plugins">
		<array>
			<bean class="com.github.pagehelper.PageInterceptor">
				<property name="properties">
					<value>
						helperDialect=mysql
						reasonable=true
						supportMethodsArguments=true
						params=count=countSql
						autoRuntimeDialect=true
					</value>
				</property>
			</bean>
		</array>
	</property>	
</bean>

3.前端JS

 $(function () {

            search(1);
        });
        function search(obj) {
            $.ajax({
                type: 'GET',
                url: '${pageContext.request.contextPath}/analysis/showAnalysisInfo',
                data: {
                    "currentPage": obj,
                    "keyindex": $("#condition").val(),
                    "keyCode": "%" + $("#info").val() + "%",
                    "num": $("#num").val()
                },
                dataType: 'json',
                success: function (rs) {
                    $(".datattr").remove();
                    $(rs.list).each(function (index, analysis) {
                        var tr = "<tr align='center' class=\"datattr\" bgcolor=\"#FFFFFF\" onMouseMove=\"javascript:this.bgColor='#FCFDEE';\"onMouseOut=\"javascript:this.bgColor='#FFFFFF';\" height=\"22\" >\n" +
                            "\t<td><input name=\"id\" type=\"checkbox\" id=\"id\" value=\"101\" class=\"np\"></td>\n" +
                            "\t<td>" + analysis.id + "</td>\n" +
                            "\t<td>" + analysis.title + "</td>\n" +
                            "\t<td align=\"center\"><a href=''><u>" + analysis.project.pname + "</u></a></td>\n" +
                            "\t<td>2015-02-03</td>\n" +
                            "\t<td>2015-06-03</td>\n" +
                            "\t<td><a href='${pageContext.request.contextPath}/project-need-edit.jsp?id=" + analysis.id + "'>编辑</a> | <a href=\"${pageContext.request.contextPath}/project-need-look.jsp?id=" + analysis.id + "\">查看详情</a></td>\n" +
                            "</tr>";
                        $("#attr").after(tr);
                    });
                    $("#mm").each(function () {
                        $(this).find("td").remove();
                    });
                    var td = "<td height=\"28\" colspan=\"12\">&nbsp;\n" +
                        " <a href=\"javascript:cheAll()\" class=\"coolbg\">全选</a>\n" +
                        "<a href=\"javascript:unCheAll()\" class=\"coolbg\">反选</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "<a href=\"javascript:BatchDel()\" class=\"coolbg\">&nbsp;删除&nbsp;</a>\n" +
                        "<a href=\"\" class=\"coolbg\">&nbsp;导出Excel&nbsp;</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                                     &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "当前是第" + rs.pageNum + "页\n" +
                        "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "<a href=\"javascript:search(1)\" class=\"coolbg\">首页</a>\n" +
                        "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "<a href=\"javascript:search(" + rs.prePage + ")\" class=\"coolbg\">上一页</a>\n" +
                        "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "<a href=\"javascript:search(" + rs.nextPage + ")\" class=\"coolbg\">下一页</a>\n" +
                        "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "<a href=\"javascript:search(" + rs.pages + ")\" class=\"coolbg\">尾页</a>\n" +
                        "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n" +
                        "共有" + rs.pages + "页";
                    $("#mm").append(td);
                }
            });
        };

4.Controller层

 @RequestMapping("showAnalysisInfo")
    @ResponseBody
    public PageInfo<Analysis> showAnalysisInfo(@RequestParam(value = "currentPage",required = false,defaultValue = "1")int pageNum,
                                               @RequestParam(value = "size",required = false,defaultValue = "3")int pageSize,
                                               AnalysisVo vo){
        //mybatis分页插件
        //pageInfo:分页信息,----数据源----哪一页--每一页的数据量
        PageHelper.startPage(pageNum,pageSize);
        List<Analysis> list = analysisService.pageList(vo);
        PageInfo pageInfo = new PageInfo(list);
        return pageInfo;
    }

5.service层

@Override
    public List<Analysis> pageList(AnalysisVo vo) {
        return analysisMapper.pageList(vo);
    }

6.mapper层

<resultMap id="newmap" type="com.ujiuye.pro.bean.Analysis" extends="BaseResultMap">
    <association property="project" column="id" javaType="com.ujiuye.pro.bean.Project" select="com.ujiuye.pro.mapper.ProjectMapper.selectByPrimaryKey"></association>
  </resultMap>
  <select id="pageList" resultMap="newmap" parameterType="com.ujiuye.pro.bean.AnalysisVo">
    select
    <include refid="Base_Column_List"/>
    from analysis
        <where>
          <if test="keyindex == 1">
            proname like #{keyCode}
          </if>
          <if test="keyindex == 2">
            title like #{keyCode}
          </if>
          <if test="num == 1">
            order by id
          </if>
        </where>

  </select>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值