mybatis.type-aliases-package之巨坑
mapper.xml中的resultType中经常会用到一些自定义POJO,你可以用完全限定名来指定这些POJO的引用
例如:
1
|
< select id = "getUsers" resultType = "com.majing.learning.mybatis.entity.User" >, |
又或者你可以通过在application.properties中指定POJO扫描包来让mybatis自动扫描到自定义POJO
如下:
1
|
mybatis.type-aliases-package=com.majing.learning.mybatis.entity |
但是,请千万注意,不要再mybatis.type-aliases-package=后面接classpath这个单词,否则,mybatis会找不到POJO。
mybatis.type-aliases-package作用和用法
在mapper.xml文件中的resultMap的type或者parameterType会用到自定义的POJO。
例如:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
< mapper namespace = "com.example.demo.mapper.UserMapper" > < select id = "findAll" resultType = "User" > select * from User </ select > < select id = "findByName" resultType = "User" > select * from User where username=#{username} </ select > < select id = "findPswByName" resultType = "String" > select password from user where username = #{username} </ select > < insert id = "save" > insert into user(username,password) value (#{username},#{password}) </ insert > </ mapper > |
其中resultType=“User”中,User就是自定义的POJO,此时可以使用完全限定名来指定这些POJO的引用
例如:
1
|
< select id = "findByName" resultType = "com.example.entity.User" > |
第二种方法就是使用mybatis.type-aliases-package来指定POJO扫描包来让mybatis自动扫描到自定义的POJO。
在application.propertites配置文件中配置如下信息:mybatis.type-aliases-package=com.example.entity
1
|
mybatis.type-aliases-package=com.example.demo.entity |
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://daijiguo.blog.csdn.net/article/details/82827430