您好,登錄后才能下訂單哦!
這篇文章主要講解了“mybatis.type-aliases-package怎么用”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“mybatis.type-aliases-package怎么用”吧!
在mapper.xml文件中的resultMap的type或者parameterType會用到自定義的POJO。
例如:
<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的引用,例如:
<select id="findByName" resultType="com.example.entity.User">
第二種方法就是使用mybatis.type-aliases-package來指定POJO掃描包來讓mybatis自動掃描到自定義的POJO。
在application.propertites配置文件中配置如下信息:mybatis.type-aliases-package=com.example.entity
mybatis.type-aliases-package=com.example.demo.entity
mapper.xml中的resultType中經(jīng)常會用到一些自定義POJO,你可以用完全限定名來指定這些POJO的引用,例如
<select id="selectByStudentSelective" resultType="cn.wideth.entity.domain.Student"> SELECT T.* FROM student T </select>
我們需要查詢student表中所有學(xué)生的信息,定義了一個實體類student來映射表中所有的學(xué)生信息,把類的權(quán)限定類名放在resultType標(biāo)簽中即可,mybatis底層在返回數(shù)據(jù)庫信息的時候,會根據(jù)Class.forName(“cn.wideth.entity.domain.Student”)去生成對象實例;
如果我們想在resultType標(biāo)簽中僅僅使用類名Student可不可以呢
<select id="selectByStudentSelective" resultType="Student"> SELECT T.* FROM student T </select>
這樣也是可以的,只是需要在yml配置文件中提前進行配置
mybatis: config-location: classpath:mybatis/mybatis-config.xml mapper-locations: classpath:mybatis/mapper/*.xml type-aliases-package: cn.wideth.entity
這樣也是可以的,springboot在啟動的時候,會加載cn.wideth.entity包以及子包下所有的實體類,進行初始化操作。但是不同子包下面不可以存在同名的實體類。
子包下面存在同名實體類,結(jié)果報錯了。
感謝各位的閱讀,以上就是“mybatis.type-aliases-package怎么用”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對mybatis.type-aliases-package怎么用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。