ssm pageheleper 模糊查询语句出错 20C

@RequestMapping("mohu")
public String mohuchaxun(@RequestParam(value="pn",defaultValue="1")Integer pn,Model model,books bk){
//从第一条开始 每页查询五条数据
PageHelper.startPage(pn, 3);
List users = userService.mohu(bk);

    System.out.println("测试集合有没有获取到数据"+bk.getBookuser());

        System.out.println("大小"+users.size());



    //将用户信息放入PageInfo对象里
    PageInfo page1 = new PageInfo(users,7);
    model.addAttribute("pageInfo2", page1);
    return "mohu";
}
    -----------------------------------------------------------------controller

    <select id="mohu" parameterType="books" resultType="books">
    select * from
    books where bookuser LIKE '%' #{bookuser} '%'
</select>

-------------------------------------------------------------------dao.xml


  <c:forEach items="${pageInfo2.list }" var="user">
                    <tr>
                    <td>${user.bid}</td>
                    <td>${user.bookuser }</td>
                        <td>${user.booktype }</td>
                          <td><img src="${user.bookimg}" width="200" height="100" ></td>
                        <!-- 
                        <td><img src="${user.bookimg}" width="200" height="300" ></td>
                         -->
                        <!-- <td><a  class="edit">编辑</a> <a
                             class="delete">删除</a></td> -->

                    </tr>
                </c:forEach>
            </table>
        </div>
    </div>

    <hr style="height:1px;border:none;border-top:1px solid #ccc;" />
    <!-- 分页导航栏 -->

    <!-- 分页信息 -->
    <div class="row">
        <!-- 分页文字信息,其中分页信息都封装在pageInfo中 -->
        <div class="col-md-6">
            当前第:${pageInfo2.pageNum}页,总共:${pageInfo2.pages}页,总共:${pageInfo2.total}条记录
        </div>

    <!-- 分页条 -->
        <div class="col-md-6">
            <nav aria-label="Page navigation">
              <ul class="hvtulli"  style="list-style-type:none"> 
                <li><a href="${path}/user/mohu?pn=1">首页</a></li>
                <c:if test="${pageInfo2.hasPreviousPage }">
                     <li>
                      <a href="${path}/user/mohu?pn=${pageInfo2.pageNum-1}" aria-label="Previous">
                        <span aria-hidden="true">上一页</span>
                      </a>
                    </li>
                </c:if>

                <c:forEach items="${pageInfo2.navigatepageNums }" var="page_Num">
                    <c:if test="${page_Num == pageInfo2.pageNum }">
                        <li class="active"><a href="#">${ page_Num}</a></li>
                    </c:if>
                    <c:if test="${page_Num != pageInfo2.pageNum }">
                        <li><a href="${path}/user/mohu?pn=${ page_Num}">${ page_Num}</a></li>
                    </c:if>
                </c:forEach> 
                <c:if test="${pageInfo2.hasNextPage }"><a href="${path}/user/mohu?pn=${pageInfo2.pageNum+1}" aria-label="Next">下一页
                      </a>

                </c:if>   
                <a href="${path}/user/mohu?pn=${pageInfo2.pages}">末页</a> 

-----------------------------------------------------------jsp
普通的查询这样都可以做到。 但是这个模糊查询,点击首页或者末页就会报错,
Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'null '%') tmp_count' at line 2

The error may exist in com/ssm/dao/Userdao.xml

The error may involve com.ssm.dao.Userdao.mohu-Inline

The error occurred while setting parameters

SQL: select count(0) from (select * from books where bookuser LIKE '%' ? '%') tmp_count

知道是sql的错误, 请大神帮我看看怎么办。 我是初学者。

1

7个回答

0
weixin_42225175
xue^ying^ 不错
8 个月之前 回复
weixin_41777664
Rokie-770880 涛高生了
8 个月之前 回复
qq_28930619
qq_28930619 我第一次能查到, 点击换页的时候出错。 貌似不是那些问题
8 个月之前 回复

模糊查询要使用CONCAT函数连接%与变量

0
0

sql改一下:

select * from books where bookuser LIKE CONCAT('%', #{bookuser}, '%')

0

把sql改一下应该可以:select * from books where bookuser LIKE CONCAT('%', #{bookuser}, '%')
试一试吧

0

select * from books where bookuser LIKE '%'||#{bookuser}||'%' 这样也可以

0

parameterType="books" 是否进行了注入 ,或者改为 parameterType="hashmap"试一下

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
SSM模糊查询语句
接口 //模糊查询用户信息 public List&amp;lt;User&amp;gt; likeName(@Param(&quot;name&quot;) String name);mapper.xml&amp;lt;select id=&quot;likeName&quot; parameterType=&quot;String&quot; resultType=&quot;com.hp.bean.Hyou&quot;&amp;gt; select*from `user` where usernam
终极解决sqlserver、MySQL、Oracle三种数据库模糊查询语句,ssm框架mybatis操作数据库
SELECT      *  FROM      z_user  WHERE      if test = "name != null and name != ''" >          AND name LIKE           if test = "dbName == 'oracle'" >               '%' || #{name}||'%'          if>  
mybatis 模糊查询简单sql
这篇文章算是一个记录吧。我最近事比较多,然后可能会忘一些东西,所以写下来以后可以翻出来查看一下子 mybatis 调用 和 的时候需要在mapper里面传入一些参数 会调用@param 这个标签 不然测试时候会出现不能调用string这个参数的错误 话不多说开始上代码 // 模糊查询所有的帖子 (含通过和未通过的) List findByTitle(@Param("title") St
mybatis中模糊查询的sql语句
<select id="goodsList" parameterType="goods" resultMap="goodsResult"> select * from ssm_goods <where> <if test="text_find != null and text_find != ''">
MyBatis Like模糊查询参考解决策略
双引号”直接连接<select id="getUsersByName" parameterType="string" resultType="com.buaa.mybatis.po.User"> SELECT * FROM USER WHERE username LIKE "%"#{name}"%" </select>评价:best。利用MySQL内置函数CONCAT()<select id
ssm批量删除和模糊查询
1.Dao层方法 package com.tcc.dao; import java.util.List; import org.apache.ibatis.annotations.Param; import com.tcc.bean.student; import com.tcc.bean.type; public interface usermappe
ssm框架实现模糊查询
ssm框架实现模糊查询
mybatis中模糊查询sql语句
select id="searchUserBySearchName" parameterType="java.lang.String" resultType="com.urm.entity.User">     select * from t_user where user_name like CONCAT('%',#{search_name},'%')   select>      se
SSM框架的分页模糊查询代码(精)
【学习SSM分页模糊查询必备】 .zip格式,方便Windows和Unix用户 登录页地址:http://localhost:8080/ssm3/user/login 账号密码为数据库中所有用户名和密码(admim 123) tomcat配置文件和jdbc不匹配的请自行修改 环境:基于SSM框架(Spring+SpringMVC+MyBatis) + Mysql数据库 + Tomcat7 功能:登录、首页显示用户名和身份、分页http://u.download.csdn.net/images/btn_submit.png、模糊查询、 页面跳转(首页、上一页、下一页、末页、指定页跳转(用户输入),第几/几页,总数据行数) 以及跳转页数的溢出判断、非整形正则判断 数据视图的隔行变色和光棒效果
ssm框架分页及模糊查询
初学ssm框架,网上的分页及模糊查询大多语焉不详,对于初学者来说无法理解,自己通过好几天的查询,写出了一个这么一个简单的东西,希望对大家有点帮助(旧版。不推荐.分页有bug)
Mybatis中mapper模糊查询语句LIKE
最近做学校安排的课程设计作业,用到SSM框架,在自己写mapper代码是遇到了模糊查询的问题 困扰好久 下面是我解决这个问题的方法,其他网上好多方法我尝试过却没有实现 下面试sql语句 select * from goodsinfo where goodsname like '%' #{goodsname} '%' 注意代码中的空格  空格 空格   #{ } 方式还可以
ssm下写模糊查询与组合查询
-
ssm框架下模糊查询分页
本资源适合初学者学习物理分页技术
Spring MVC 使用SQL进行模糊查询
Spring MVC SQL模糊匹配实现 namespace="com.frmscs.repository.mapper.sys.SysRoleMapper" > id="BaseResultMap" type="com.frmscs.entity.sys.SysRole" > column="ROLE_ID" property="roleId" jdbcType="IN
SSM动态分页模糊查询
1.实体类 /** * 空气质量实体类 * * @author Administrator * */ public class AirQualityIndex { // 属性 private Integer id; private Integer district_id; private String moni...
hibernate 模糊查询语句出错
我有一个方法对表workersinfo中的姓名,职位进行模糊查询,方法如下rnpublic class AAAArnpublic List testfindby(String name, String posts) rn Query query = this.getSession()rn .createQuery("form com.system.bean.Workersinfo as t where t.name like :name and t.posts like :posts ");rn query.setString("name", "%" + name + "%");rn query.setString("posts", "%" + posts + "%");rn return query.list();rn rnrnrn对该方法进行测试,我现在要查询姓陈的人的记录,主要内容如下:rnrnAAAA a = new AAAA();rnList list = a.testfindby("陈","");rnrn报错信息如下:rnorg.hibernate.hql.ast.QuerySyntaxError: unexpected token: form near line 1, column 1 [form com.system.bean.Workersinfo as t where t.name like :name and t.posts like :posts ]rn at org.hibernate.hql.ast.ErrorCounter.throwQueryException(ErrorCounter.java:63)rn at org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:215)rn at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:127)rn at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:83)rn at org.hibernate.impl.SessionFactoryImpl.getQuery(SessionFactoryImpl.java:427)rn at org.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:884)rn at org.hibernate.impl.SessionImpl.list(SessionImpl.java:834)rn at org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)rn at com.system.DAO.WorkersinfoDAO.testfindby(WorkersinfoDAO.java:370)rn at com.system.service.WorkersinfoService.fi(WorkersinfoService.java:60)rn at com.system.service.test.test.test(test.java:52)rn at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)rn at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)rn at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)rn at java.lang.reflect.Method.invoke(Unknown Source)rn at org.junit.internal.runners.TestMethodRunner.executeMethodBody(TestMethodRunner.java:99)rn at org.junit.internal.runners.TestMethodRunner.runUnprotected(TestMethodRunner.java:81)rn at org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34)rn at org.junit.internal.runners.TestMethodRunner.runMethod(TestMethodRunner.java:75)rn at org.junit.internal.runners.TestMethodRunner.run(TestMethodRunner.java:45)rn at org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod(TestClassMethodsRunner.java:66)rn at org.junit.internal.runners.TestClassMethodsRunner.run(TestClassMethodsRunner.java:35)rn at org.junit.internal.runners.TestClassRunner$1.runUnprotected(TestClassRunner.java:42)rn at org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34)rn at org.junit.internal.runners.TestClassRunner.run(TestClassRunner.java:52)rn at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:38)rn at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)rn at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)rn at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)rn at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)rn at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)rnCaused by: line 1:1: unexpected token: formrn at org.hibernate.hql.antlr.HqlBaseParser.statement(HqlBaseParser.java:156)rn at org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:209)rn ... 29 morernrn我哪里错了呀,如何解决呀~~~~请高手指教!
mybatis 模糊查询 mapper.xml的写法
1. sql中字符串拼接    SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('%', #{text}), '%');   2. 使用 ${...} 代替 #{...}    SELECT * FROM tableName WHERE name LIKE '%${text}%';
Mybatis 多字段模糊查询
and CONCAT(d.name,d.hospital) LIKE CONCAT(CONCAT('%', #{searchKey1}),'%')
在mybatis中实现oracle分页和模糊查询
        今天在工作中,遇到一个业务需求,就是需要在oracle里进行模糊查询并分页,SQL语句如下:        select m.label,m.building_loc_id,m.shape.minx x,m.shape.miny y from              (select rownum rnm ,t.* from table_test  t  where rownum ...
mysql 模糊查询语句
--语句: select * from 表名 where 列名1 like '%关键字1%' and 列名2 like '%关键字2%' and 列名3 like '%关键字3%' and 列名4 like '%关键字4%' ;--示例: select * from bank_branch_number where bankName like '%工商%' and provinceName like
跟博客配套的ssm框架做一个简单的带分页的增删改查
就是我个人博客里写的那个小demo 适合刚学习完ssm框架的朋友练习一下
【ssm个人博客项目实战08】博客的分页显示以及模糊查询,删除。
前言 我在这里给大家道个歉,楼主因为毕业季拍毕业照 找工作事情比较多,所以博客实战给拉下来了,对不起大家,这只是暂时的拉下,楼主是不会放弃的。 1、上篇回顾在上一节中我们是完成了博客的回台部分,现在我需要在前台拿到回台传来的数据并且给以显示出来。 不知道大家还记得我们在博客类别管理里面,easyui的datagrid用法吗?在这里我们继续使用datagrid 只不过多了一个模糊查询。 接下来
【mybatis】模糊查询
最近项目中遇到mybatis模糊查询,项目使用SSM框架,如下:<select id="selectByName" parameterType="String" resultType="company"> select * from company c where c.name like "%"#{name}"%"; </select>
Mybatis模糊查询语句整理
Mybatis模糊查询语句的几种写法: mysql: select * from tbl_school where school_name like concat('%',#{name},'%')      oracle: select * from tbl_school where school_name like '%'||#{name}||'%'      SQL Serv
mybatis里面的mysql和oracle简单模糊查询
mysql和oracle模糊查询都可以用下面语句: select * from V_IB_BATCHCN v  where  v.FCUSTOMERNAME   like CONCAT(CONCAT('%', #{fcustomername}), '%')
MyBatis中xml文件中模糊查询的写法
数据库中某表的一个字段为name,我需要对它进行模糊查询的时候使用了下面的方法,解决了这个问题。 SELECT FROM v_dwfx_gzysxl a AND a.name LIKE '%'||#{name}||'%' '%'+#{name}+'%' concat('%',#{name},'%')
Oracle SQL模糊查询的语法为
    SQL模糊查询的语法为    “SELECT column FROM table WHERE column LIKE pattern;”。        SQL提供了四种匹配模式:    1. % 表示任意0个或多个字符。如下语句:        SELECT * FROM user WHERE name LIKE %三%;    将会把name为“张三
模糊查询在mybatis配置xml文件中的写法
由于不希望在使用ssm框架时,手动添加为模糊查询添加%,对字段又修改,容易出错,所以模糊查询的%%写在xml里面。 常见写法有    拼接方式, AND user_name like '%#{user_name}%' 这种方式如果参数为空格,查询错误 拼接方式补充 AND user_name like ”%‘#{user_name}’%“ 这种方式查询不完整, 最后确定  C
Mybatis 时间段查询 和 模糊查询
select * from t_branch b left join (select branchno as num, advancedays from t_warning w) w on w.num = b.branchno where 1=1 and branchName like '%'||#{params.branchName}||'%' and li
SSM框架下一个简单的模糊查询(超级详细)
引言:模糊查询作为后台常用的一种查询方式,我们可以根据相应的 关键字对其检索,从而获得所需要的记录,本次模糊查询我们通过名字的任何一个字段进行匹配查询。 如果想学习java后台开发或者前端开发,可以加我的群:java爱好者学习群:893474028,我lqz带你们共同学习。 另外声明,源码就是以下的部分,直接复制就可以使用了。此外,想要模糊查询,首先必须要学会分页查询,分页查询我用了两种方法,...
【SQL】拼接SQL语句-参数化查询-模糊查询
What?什么是拼接SQL语句         拼接SQL语句主要操作于有条件的增删改查,即条件一不定,也可以叫做组合查询。 HOW?怎么做?         1、这里先来一个最简单的连接数据库的代码补给站:         下面是我做的一个简单小功能,选择你需要的条件查询显示~~                 要想使用连接数据库的功能,需要引用:       us
mybatis环境搭建、模糊查询、分页、增删改、事务处理
最近研究了下mybatis,它和hibernate创建和操作类似 1. 从配置文件(通常是XML配置文件中)得到 sessionfactory. 2. 由sessionfactory 产生 session 3. 在session 中完成对数据的增删改查和事务提交等. 4. 在用完之后关闭session 。   废话不多说我就直接上图写代码。 先在scott数据库中建一个表 crea
ssm框架动态查询和模糊查询
一、动态查询  1)一张表的动态查询 &amp;lt;select id=&quot;queryMore&quot; resultMap=&quot;pw.Blog&quot;&amp;gt; SELECT * FROM `t_blog` &amp;lt;where&amp;gt; &amp;lt;if test=&quot;bname != null&quot;&amp;gt; AND `b_name` LIKE concat('%',#{bname},'%') &amp;lt;/if&amp;gt
Mybatis模糊查询SQL语句
模糊查询  &amp;lt;sql id=&quot;where_case&quot;&amp;gt; &amp;lt;if test=&quot;username!=null and username != ''&quot;&amp;gt; and username like concat('%',#{username},'%') &amp;lt;/if&amp;gt; &amp;lt;if test=&quot;userrole!=null&quot;&amp;gt; and
Mybatis中使用oracle的模糊查询的SQL语句写法
在学习mybatis的学习中,用到模糊查询的时候,发现直接拼接成‘%’#{description}'%'会报错,然后整理了三种模糊查询的SQL语句写法: 1.在传参的时候,就把参数拼接为"%"+#{description}+"%"  然后传到XML文件的SQL语句中,这样就避免了在SQL语句中拼接出错(在ORACLE数据库中或许会报“ORA-01722: 无效字符”错误,针对ORACLE可以
php中简单模糊查询的sql语句
从topics表中查询字段subject与传进来的参数'$_POST['topic']进行比较模糊查询设subject字段数据为:数学,英语,物理,化学,英文$subject=$_POST['topic']; $sql = "select * from topics where subject like '%" .$subject. "%'";$result = mysql_query($sql);若从表单提交的‘topic’值为“学”,得到的结果将是:数学,化学
sql语句的各种模糊查询语句
一般模糊语句如下:SELECT 字段 FROM 表 WHERE 某字段 Like 条件其中关于条件,SQL提供了四种匹配模式:1、%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。比如 SELECT * FROM [user] WHERE u_name LIKE ‘%三%’将会把u_name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“
Hibernate中的HQL模糊查询语句
@Query("SELECT entity FROM PartsChange entity WHERE entity.num like ?") List findByNumLike(String yearStr); 注意: %放在传入的字符串参数中; 占位符不能带数字;
Ibatis 的 模糊查询 SQL
对于一条简单的sql语句,例如:Select * from user where id=#id#Ibatis会把sql预编译为select * from user where id=?接着会把传入的值进行填充,类似于 jdbc 的 preparestatment 的形式。之前的sql是简单的形式,加入需要用到模糊查询的like就比较麻烦,而且可能会出现sql注入的情况。假如需要查询
关于SQL查询语句中的LIKE模糊查询的解释
在SQL语言中,LIKE语句有时候有着强大的作用。LIKE语句的语法格式为:select * from 表名 where 字段名 like 对应值(字符串);注:主要是针对字符型字段的,它的作用是在一个字符型字段列中检索包含对应字符串的。下面列举常用的几种标识含义;A:% 表示零个或多个字符的任意字符串:     1. LIKE'Mi%' 将搜索以字母 Mi开头的所有字符串(如 Michael)。...
文章热词 Java spring cloud内部服务出错 机器学习 机器学习课程 机器学习教程 深度学习视频教程
相关热词 c#sql查询语句 c#sql查询语句参数化 bootstrap-table与ssm python教程+chm python教程百家号