mybatis的定义别名

在parameterTyperesultType设置时,为了方便编码,定义别名代替pojo的全路径。

框架默认支持别名(int,string。。。)


定义别名两种方式


定义别名的位置是在全局的配置文件SqlMapConfig.xml中定义

注意:定义别名要放在全局配置文件的上面部分,放在下面部分会报错,我也不知道为什么,但是试了很多次都是会报错




1.主要定义pojo的别名

2.就是批量别名的定义


<!-- 定义别名 -->
<typeAliases>
	<!-- 
		单个别名的定义 
		type:pojo的全类名
		alias:这是pojo的别名
			
	-->
	<typeAlias type="com.mo.pojo.User" alias="user"/>
		
	<!--
		 批量定义别名 
		name:指定包名,将定义包下的所以pojo定义别名,别名为类名(首字母大写或小写都可以)
	 -->
	<package name="com.mo.pojo" />
</typeAliases>



然后就可以在parameterTyperesultType中使用别名了

<select id="findUserById" parameterType="int" resultType="user">
		SELECT * FROM USER  WHERE id = #{id}
</select>


1.主要定义pojo的别名

2.就是批量别名的定义


### MyBatis 中数据库别名配置及用法 在 MyBatis 的配置文件中,可以通过 `typeAliases` 标签来定义类的别名。这不仅简化了 XML 映射文件中的书写工作,还提高了可读性和维护性。 #### 别名的作用域和位置 为了确保别名能够被正确识别,在配置文件中应将 `<typeAliases>` 放置在 `<settings>` 之后的位置[^4]。如果顺序错误,则可能导致运行时异常。 #### 定义全局别名 可以使用 `type-aliases-package` 属性指定包路径下的所有类都将自动注册其简单名称作为默认别名: ```xml <configuration> <!-- 设置 --> <settings> ... </settings> <!-- 类型别名 --> <typeAliases> <package name="com.example.model"/> </typeAliases> </configuration> ``` 这样做的好处是可以减少重复劳动并保持一致性;对于位于该包内的每一个 Java Bean 对象来说,只需要按照驼峰命名法则即可直接调用而无需额外声明。 #### 自定义单个别名 当希望给某个特定实体赋予更加直观的名字时,也可以单独为其设定别名: ```xml <typeAlias alias="User" type="com.example.model.UserEntity"/> ``` 上述代码片段表示每当映射语句中遇到 "User" 这个字符串时都会替换为完整的类路径 `com.example.model.UserEntity`。 #### 应用于 Mapper 文件 一旦完成了以上配置,在编写 SQL 映射文件 (Mapper XML) 时就可以利用这些简短易记的别名代替冗长复杂的全限定类名了。例如查询用户列表的操作可能看起来像下面这样简洁明了: ```xml <select id="selectUsers" resultType="User"> SELECT * FROM users; </select> ``` 这里的结果集类型就用了之前自定义好的 User 别名而不是原始的 com.example.model.UserEntity 字符串形式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值