Mybatis常用配置示例
一.属性(properties)
使用标签properties,其中属性可以在外部进行配置,并可以进行动态替换。既可以在典型的 Java 属性文件中配置这些属性,也可以在 properties 元素的子元素中设置。
参考官网:https://mybatis.net.cn/configuration.html#properties
首先创建数据库配置文件db.properties
driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306?useSSL=true&useUnicode=true&characterEncoding=UTF-8
username=root
password=123
然后在mybatis配置文件中加入properties标签,引入上述配置文件(其中变量以${}包裹,且如果配置文件中的属性和properties标签中的属性存在冲突,mybatis优先读取配置文件中的属性值):
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"https://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<properties resource="db.properties" />
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper class="com.wcj.dao.UserMapper" />
</mappers>
</configuration>
最后使用Junit测试访问:
@Test
public void test_getUser() {
SqlSession connect = MybatisUtil.getConnect();
UserMapper mapper = connect.getMapper(UserMapper.class);
List<User> users = mapper.getUser();
for (User user : users) {
System.out.println(user);
}
connect.close();
}
二.别名(typeAliases)
使用标签typeAliases,存在的意义仅用于减少JAVA类的完全限定名的冗余
方式一:对类起别名
<typeAliases>
<typeAlias type="com.wcj.pojo.User" alias="user">
</typeAliases>
<select id="getUserById" parameterType="int" resultType="user" >
select * from mybatis.user where id = #{id}
</select>
方式二:指定包名,对同一个包下的所有java bean都起别名,默认为小写
<typeAliases>
<package name="com.wcj.pojo"/>
</typeAliases>
如果需要指定java bean别名,可以在实体类下显示设置:
@Alias("user2")
public class User {
...
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架