在mybatis的mapper.xml文件中编写了一段SQL语句如下:
我编写的SQL如下:
<!-- 根据角色ID、角色类型、用户ID查询出角色列表--> <select id="getUsersByRoleAuthorize" resultMap="RoleResultMap"> SELECT u.USER_ID, u.user_name, u.user_status, ur.ROLE_ID, r.role_name, ur.ROLE_TYPE, ur.created_by, ur.creation_date, ur.modified_by, ur.modified_date FROM t_user_roles ur,t_user u ,t_roles r WHERE ur.user_id = u.user_id AND r.role_id = ur.role_id <if test="roleAuthorize.roleAuthorizeId != null and roleAuthorize.roleAuthorizeId != ''"> and ur.role_id = #{roleAuthorize.roleAuthorizeId} </if> <if test="roleAuthorize.roleAuthorizeType != null and roleAuthorize.roleAuthorizeType != ''"> and ur.roleType = #{roleAuthorize.roleAuthorizeType} </if> <if test="roleAuthorize.userId != null and roleAuthorize.userId != ''"> and ur.user_id = #{roleAuthorize.userId} </if> </select>
解决方案:
错误的原因在于在Mybatis接口类传入进来的对象不需要xxx对象.xxx属性,如果使用这种就会抛出以下异常,. 直接使用属性名即可。
改成以下就没有问题了:
<!-- 根据角色ID、角色类型、用户ID查询出角色列表--> <select id="getUsersByRoleAuthorize" resultMap="RoleResultMap"> SELECT u.USER_ID, u.user_name, u.user_status, ur.ROLE_ID, r.role_name, ur.ROLE_TYPE, ur.created_by, ur.creation_date, ur.modified_by, ur.modified_date FROM t_user_roles ur,t_user u ,t_roles r WHERE ur.user_id = u.user_id AND r.role_id = ur.role_id <if test="roleAuthorizeId != null and roleAuthorizeId != ''"> and ur.role_id = #{roleAuthorizeId} </if> <if test="roleAuthorizeType != null and roleAuthorizeType != ''"> and ur.roleType = #{roleAuthorizeType} </if> <if test="userId != null and userId != ''"> and ur.user_id = #{userId} </if> </select>
异常信息:
org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException: The entity name must immediately follow the '&' in the entity reference.
at org.apache.ibatis.parsing.XPathParser.createDocument(XPathParser.java:238)
at org.apache.ibatis.parsing.XPathParser.<init>(XPathParser.java:107)
at org.apache.ibatis.builder.xml.XMLMapperBuilder.<init>(XMLMapperBuilder.java:61)
at org.apache.ibatis.builder.xml.XMLMapperBuilder.<init>(XMLMapperBuilder.java:56)
at org.apache.ibatis.builder.annotation.MapperAnnotationBuilder.loadXmlResource(MapperAnnotationBuilder.java:118)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:232)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:284)
at org.apache.ibatis.parsing.XPathParser.createDocument(XPathParser.java:236)
... 60 more
相关推荐
如果你遇到这样的问题: The entity name must immediately follow the '&' in the entity reference 说明你的& 符号写的有问题
`org.apache.http.entity.mime`是Apache HttpClient库中的一个模块,主要负责处理MIME(Multipurpose Internet Mail Extensions)格式的数据,特别是在HTTP请求中用于上传文件或复杂数据时。这个模块是Apache ...
在提供的信息中,我们关注的是两个特定的模块:"org.apache.http.entity.mime" 和 "org.apache.http.legacy"。 首先,`org.apache.http.entity.mime` 是 Apache HttpClient 库的一个子模块,专门用于处理MIME(多...
MySQL.Data.Entity.6.10.9 和 MySQL.Data.6.10.9 是两个针对MySQL数据库操作的重要组件,主要用于.NET Framework环境中的Entity Framework(EF)集成。在本篇文章中,我们将深入探讨这两个库以及它们如何协同工作,...
《深入理解System.Data.Entity》 System.Data.Entity是.NET框架中一个关键的部分,它构成了Entity Framework的核心,这是一个强大的对象关系映射(ORM)框架,用于简化数据库操作。ORM允许开发人员使用面向对象的...
《深入理解Z.EntityFramework.Extensions.EFCore6.13.1:多版本支持与BulkInsert功能》 Z.EntityFramework.Extensions是一款针对Entity Framework Core(简称EF Core)的扩展库,它提供了丰富的功能,增强了数据库...
Z.EntityFramework.Extensions 破解 注册机,详细破解方法
Z.EntityFramework.Extensions,基于2019年7月,3.21.2.0去除每月验证和强签名。适合.net4.0及以上
替换C:\Users\xxxxx\.nuget\packages\z.entityframework.extensions.efcore\2.1.49\lib\netstandard2.0下的Z.EntityFramework.Extensions.EFCore.dll。适用于.net core的ef,解除了1个月使用的限制。
Z.EntityFramework.Extensions.dll 破解版,我们在用EF开发时 会有版权报错 要求license,这个dll是我用工具破解的
《Wrox Professional ADO.NET 3.5 with LINQ and the Entity Framework》是针对.NET Framework 3.5中数据访问技术的重要参考资料。该书详细介绍了ADO.NET 3.5、LINQ(Language Integrated Query)以及Entity ...
MySql.Data.Entit
《Wrox Professional ADO.NET 3.5 with LINQ and the Entity Framework》是针对.NET Framework 3.5中数据访问技术的重要参考资料。本书深入探讨了ADO.NET 3.5、LINQ(Language Integrated Query,语言集成查询)以及...
**Z.EntityFramework.Extensions注册机** 在IT行业中,Entity Framework(EF)是.NET框架下的一款非常流行的对象关系映射(ORM)工具,它允许开发者使用面向对象的编程方式来操作数据库,而无需关注底层的SQL语句。...
《Wrox.Professional.ADO.NET.3.5.with.LINQ.and.the.Entity.Framework》这本书是针对.NET Framework 3.5版本中ADO.NET的重大更新,特别是引入了LINQ(Language Integrated Query,语言集成查询)和Entity Framework...
import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; import org.apache.http.conn.scheme.Scheme; ...
Z.EntityFramework.Extensions注册机 破解 内含使用截图
被donet坑了,nuget里更新的dll既然有试用期,有张表数据莫名被删,查时间点,极度怀疑是z.entityframework.extensions的问题,csdn里的太坑,要43个积分,穷人只好找别的地方弄了一个,2个积分拿走不谢
... ...它主要关注MIME(Multipurpose Internet Mail Extensions)规范,用于定义邮件和其他互联网协议中的数据格式。... - 在4.1.2版本中,这个库已经相当成熟,解决了许多早期版本的已知问题,增强了稳定性和兼容性。...