SqlMapConfig.xml的使用
2018-05-26 本文已影响59人
幻影翔
mybatis开发过程小结
1、编写SqlMapConfig.xml
2、编写mapper.xml 定义了statement
3、编程通过配置文件创建SqlSessionFactory
4、通过SqlSessionFactory获取SqlSession
5、通过SqlSession操作数据库
如果执行添加、更新、删除需要调用SqlSession.commit()
6、SqlSesion使用完成要关闭
xml路径问题(都放在src下的mapper文件夹下)
加载SqlMapConfig.xml
String resource = "mapper/SqlMapConfig.xml";
加载Usermapper.xml
<mappers>
<mapper resource="mapper/Usermapper.xml"/>
批量mapper配置通过package进行自动扫描包下边的mapper接口,注意:需要mapper.xml和mapper.java同名并且在一个目录
中
<package name="mapper" />
</mappers>
利用properties元素
在src下添加一个db.properties的配置文件
在SqlMapConfig.xml中配置,environments外面
<properties resource="db.properties" />
<!--定义别名-->
<typeAliases>
<typeAlias type="pojo.User" alias="user"/>
</typeAliases>
<!-- 和spring整合后 environments配置将废除-->
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
注意:MyBatis 将按照下面的顺序来加载属性:
-
在properties元素体内定义的属性首先被读取。
-
然后会读取properties 元素中resource或url 加载的属性,它会覆盖已读取的同名属性。
-
最后读取parameterType传递的属性,它会覆盖已读取的同名属性。
-
建议使用properties,不要在properties中定义属性,只引用定义的properties文件中属性,并且properties文件中定义的key要有一些特殊的规则。