https://www.longkui.site/program/java/mybatis-xml%e5%b8%b8%e7%94%a8%e9%85%8d%e7%bd%ae%e8%a7%a3%e6%9e%90/831/
myBatis.xml模板文件如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
<? xml version = "1.0" encoding = "UTF-8" ?> <! DOCTYPE configuration PUBLIC "-//mybatis.org//DTD config 3.0//EN" < configuration > < environments default = "development" > < environment id = "development" > < transactionManager type = "JDBC" ></ transactionManager > < dataSource type = "POOLED" > < property name = "driver" value = "com.mysql.jdbc.Driver" /> < property name = "url" value = "jdbc:mysql://127.0.0.1:3306/msg" /> < property name = "username" value = "root" /> < property name = "password" value = "root" /> </ dataSource > </ environment > </ environments > < mappers > < mapper resource = "com/xxx/xxx/StudentsMapper.xml" /> </ mappers > </ configuration > |
其中,整个文件mybatis.xml主要作用是用来配置和连接数据库的。
1.
<environments default="development">
这段代码的主要意思是当前选中的环境名称叫做development,这个名字可以自定义,但是要和下面的某一个environment的id做匹配。
2.
<environment id="development">
这段代码的主要意思是 新建一个environment,id是development。名字可以自定义,而且这样的environment可以有很多个,表示可能有多个不同的数据库。通过上面的environments 中的id选中某一个具体的数据库。例如下面这种。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
< environments default = "orgin" > < environment id = "development" > < transactionManager type = "JDBC" ></ transactionManager > < dataSource type = "POOLED" > < property name = "driver" value = "com.mysql.jdbc.Driver" /> < property name = "url" value = "jdbc:mysql://127.0.0.1:3306/msg" /> < property name = "username" value = "root" /> < property name = "password" value = "root" /> </ dataSource > </ environment > < environment id = "orgin" > < transactionManager type = "JDBC" ></ transactionManager > < dataSource type = "POOLED" > < property name = "driver" value = "com.mysql.jdbc.Driver" /> < property name = "url" value = "jdbc:mysql://123.45.6.7:3306/msg" /> < property name = "username" value = "root" /> < property name = "password" value = "123456" /> </ dataSource > </ environment > </ environments > |
3.
<transactionManager type="JDBC"></transactionManager>
固定写法,type是JDBC,指定事务管理类型是JDBC
4. <dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://127.0.0.1:3306/msg"/>
<property name="username" value="msg"/>
<property name="password" value="88888888"/>
</dataSource>
名称 | 参数 | 说明 | |
type | POOLED | 指定数据源类型是连接池 | |
driver | com.mysql.jdbc.Driver | 驱动是mysql | |
url | jdbc:mysql://127.0.0.1:3306/msg | 中间部分是你数据库所在的IP地址,后面是端口和你要连接的数据库名 | |
username | root | 数据库用户名 | |
password | root | 数据密码 |
需要注意的是,数据源配置信息中的参数,driver、url、username、password是固定写法,不要自己乱写,经常犯得错误是把username写成user。
5.
<mappers>
<mapper resource="com/xxx/xxx/StudentsMapper.xml"/>
</mappers>
这个是加载映射文件,这个StudentMapper.xml 中写的是sql语句,这这个地方把sql语句和数据信息进行连接。还可以有如下方式:
<mappers>
<mapper url="file://xxx/xxx/StudentsMapper.xml"/>
</mappers>
使用资源定位符。
<mappers>
<mapper class="com.xxx.xxx.StudentsMapper"/>
</mappers>
使用映射器接口实现类的完全限定类名。
<mappers>
<package name="com.xxx.xxx"/>
</mappers>
将包内的映射器接口全部实现。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具