![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MyBatis
绿头龙
don't think,feel it
展开
-
Mybatis中当实体类中的属性名和表中的字段名不一样时,如何解决
当实体类的名称与数据库中不同时,如下所示实体类中为驼峰命名法,而数据库中为下划线命名,该如何解决查询时遇到的问题?解决方案:写sql语句时起别名select user_id from t_user where username=#{username}在mybatis-config.xml开启驼峰命名规则<!-- 开启驼峰命名规则,可以将数据库中的下划线映射为驼峰命名 ex:last_Name==>>lastName --> <原创 2020-07-05 17:21:37 · 888 阅读 · 0 评论 -
Cannot find class: BlogResult
resultMap和resultType写混淆了,resultType的类型只能是简单类型和引用类型而不能是map!原创 2020-06-03 16:01:50 · 276 阅读 · 0 评论 -
Mapped Statements collection already contains value for xxx
意思是这个sql绑定了一个ResultMap了,不要重复绑定。太奇葩了 <select id="getByUserName" parameterType="String" resultMap="BloggerResult"> select * from t_blogger where userName=#{userName} </select><!-- <select id="getByUserNam原创 2020-06-02 20:45:07 · 291 阅读 · 0 评论 -
MyBatis中#{}或${}的区别
mybatis中我们通常会使用#{}或${}来获取pojo对象的变量值。select * from books where bookName = #{bookName}select * from books where bookName = ‘${bookName}’这两个区别为 : #{}会在 变量外侧 加上 单引号 如: select * from books where nam...原创 2020-04-17 17:14:46 · 132 阅读 · 0 评论 -
MyBatis中的模糊查询用法
在整合SSM小项目中,需要用的模糊查询,参考了几篇博客,总共有一些用法:1. sql中字符串拼接concat拼接字符串 mysql独有的函数:SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('%',#{text}),'%');2.使用$ {…}代替#{…}SELECT * FROM tableName WHERE name ...原创 2020-04-17 17:05:43 · 243 阅读 · 0 评论 -
org.xml.sax.SAXParseException; lineNumber: 14; columnNumber: 100; 对实体 "characterEncoding" 的引用必须以 ';'
在写xml时报错org.xml.sax.SAXParseException; lineNumber: 14; columnNumber: 100; 对实体 “characterEncoding” 的引用必须以 ‘;’将“;”改成“& amp;”更改前:<property name="url" value="jdbc:mysql://localhost:3306/mybati...原创 2020-04-13 17:22:46 · 598 阅读 · 0 评论 -
Error serializing object. Cause: java.io.NotSerializableException: com.qi
mybatis缓存异常,正在序列化对象错误,原因是不能序列化异常。看异常发现说comqi.pojo.User这个实体类没有序列化,然后我在User类中加上implements Serializable再运行一次就不报错了。什么是序列化,为什么要序列化呢???...原创 2020-04-12 22:03:37 · 2122 阅读 · 1 评论 -
MyBatis--动态SQL之Where
trim、where、set前面几个例子已经合宜地解决了一个臭名昭著的动态 SQL 问题。现在回到之前的 “if” 示例,这次我们将 “state = ‘ACTIVE’” 设置成动态条件,看看会发生什么。<select id="findActiveBlogLike" resultType="Blog"> SELECT * FROM BLOG WHERE <...转载 2020-04-12 17:08:44 · 351 阅读 · 0 评论 -
java.io.IOException: Could not find resource com/xxx/xxxMapper.xml
忘了给实体类起别名就直接用了。(真想锤自己!!!)select * from student然后网上的还有以下原因:1.多级目录建立的原因:IDEA创建多级目录A.B.C和A/B/C2.IDEA不会编译SRC的java的目录的XML文件所以要在pom.xml中配置resources,来防止我们资源导出失败的问题<build> <resources...原创 2020-04-10 23:16:51 · 980 阅读 · 0 评论 -
mybatis插入中文变成???
在配置文件中将url修改为:url = jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=UTF-8即可原创 2020-04-10 15:54:08 · 292 阅读 · 0 评论 -
使用Mybatis注解进行更新操作成功,数据库却没更新
deBug发现autoCommit=false事务没有提交,加上== sqlSession.commit()==即可原创 2020-04-10 15:49:44 · 2646 阅读 · 2 评论 -
Mybatis 解决属性名和字段名不一致的问题---ResultMap
数据库中表的字段如下:public class User { private int id; private String name; private String password;}运行结果:解决方法:起别名select id,name,pwd as password from mybatis.user where id=#{id}2.Resu...原创 2020-04-08 23:21:12 · 543 阅读 · 0 评论 -
Mybatis 类型别名(typeAliases)
类型别名可为 Java 类型设置一个缩写名字。 它仅用于 XML 配置,意在降低冗余的全限定类名书写没有配置别名typeAliases之前的使用:<select id="getUserList" resultType="com.qi.pojo.User" > select * from mybatis.user</select>配置别名之后的使用:<...原创 2020-04-08 21:23:45 · 214 阅读 · 0 评论 -
Mybatis 属性(properties)
我们可以通过properties属性实现引用配置文件这些属性可以在外部进行配置,并可以进行动态替换。你既可以在典型的 Java 属性文件中配置这些属性,也可以在 properties 元素的子元素中设置。编写个配置文件db.propertiesdriver = com.mysql.jdbc.Driverurl = jdbc:mysql://localhost:3306/mybatisus...原创 2020-04-08 21:21:48 · 372 阅读 · 0 评论 -
Mybatis映射器(mappers)
既然 MyBatis 的行为已经由上述元素配置完了,我们现在就要来定义 SQL 映射语句了。 但首先,我们需要告诉 MyBatis 到哪里去找到这些语句。 在自动查找资源方面,Java 并没有提供一个很好的解决方案,所以最好的办法是直接告诉 MyBatis 到哪里去找映射文件。方式一:<!-- 每个Mapper。xml都需要在Mybatis核心配置文件中注册--><m...原创 2020-04-08 21:16:58 · 426 阅读 · 0 评论 -
Mybatis配置映射文件中parameterType的用法小结
在mybatis映射接口的配置中,有select,insert,update,delete等元素都提到了parameterType的用法,parameterType为输入参数,在配置的时候,配置相应的输入参数类型即可。parameterType有基本数据类型和复杂的数据类型配置。1.基本数据类型,如输入参数只有一个,其数据类型可以是基本的数据类型,也可以是自己定的类类型。包括int,Str...转载 2020-03-08 15:56:54 · 74 阅读 · 0 评论 -
1字节的UTF-8序列的字节1无效
<?xml version="1.0" encoding="UTF-8" ?>解决方法:把xml的encoding属性值UTF-8改为UTF8原创 2020-03-08 11:23:52 · 1593 阅读 · 0 评论 -
解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题,即在mybatis中dao接口与mapper配置文件在做映射绑定的时候出现问题,简单说,就是接口与xml要么是找不到,要么是找到了却匹配不到。找了大半天,发现 中的getUserList的User少写了s<mapper na...原创 2020-03-08 11:18:56 · 247 阅读 · 0 评论