Mybtatis配置学习笔记
来源:互联网 发布:收费软件 编辑:程序博客网 时间:2024/05/21 07:13
1.<dataSource type="POOLED">
的type属性、其有三种取值: - a:如果将类型设置成UNPOOLED,MyBatis会为每一个数据库操作创建一个新的连接,并关闭它。该方式
适用于只有小规模数量并发用户的简单应用程序上。
b: 如果将属性设置成 POOLED,MyBatis会创建一个数据库连接池,连接池中的一个连接将会被用作数据
库操作。一旦数据库操作完成,MyBatis 会将此连接返回给连接池。在开发或测试环境中,经常使用此
种方式。
c:如果将类型设置成 JNDI,MyBatis从在应用服务器向配置好的 JNDI数据源 dataSource 获取数据库
连接。在生产环境中,优先考虑这种方式。
2.在 <transactionmanager type="JDBC"> </transactionmanager> 这个配置中有type也有JDBC,JTA,EXTERNAL.我想问下基于JDBC,及JTA的事务可以应用到哪中程度.而对EXTERNAL在什么情况下会用到?
JDBC使用 数据库自己的事务(局部事务),connect.beginTranstion(), connect.commit()等
MANAGED : 这个配置几乎没做什么。它从来不提交或回滚一个连接。而它会让 容器来管理事务的整个生命周期(比如 Spring 或 JEE 应用服务器的上下文) 默认 情况下它会关闭连接。 然而一些容器并不希望这样, 因此如果你需要从连接中停止 它,将 closeConnection 属性设置为 false。例如:
<transactionManager type="MANAGED"><property name="closeConnection" value="false"/></transactionManager>
常用的是External,应为在我的应用中,事务都是用spring托管的,如果不是,那就就用jdbc,如果在app server中,你又不想使用容器托管事务,那就用JTA
可以同时配置两个数据库,
<environments default="shoppingcart">
<environment id="shoppingcart">
<transactionManager type="MANAGED" />
<dataSource type="JNDI">
<property name="data_source" value="java:comp/jdbc/ ShoppingcartDS" />
</dataSource>
</environment>
<environment id="reports">
<transactionManager type="MANAGED" />
<dataSource type="JNDI">
<property name="data_source" value="java:comp/jdbc/ReportsDS" />
</dataSource>
</environment>
<environment id="shoppingcart">
<transactionManager type="MANAGED" />
<dataSource type="JNDI">
<property name="data_source" value="java:comp/jdbc/ ShoppingcartDS" />
</dataSource>
</environment>
<environment id="reports">
<transactionManager type="MANAGED" />
<dataSource type="JNDI">
<property name="data_source" value="java:comp/jdbc/ReportsDS" />
</dataSource>
</environment>
我们可以如下为每个环境创建一个 SqlSessionFactory:
inputStream = Resources.getResourceAsStream("mybatis-config.xml");
defaultSqlSessionFactory = new SqlSessionFactoryBuilder().
build(inputStream);
cartSqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream, "shoppingcart");
defaultSqlSessionFactory = new SqlSessionFactoryBuilder().
build(inputStream);
cartSqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream, "shoppingcart");
reportSqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream,"reports");
3.类型别名typeAliases
在 SQLMapper 配置文件中,对于 resultType 和 parameterType 属性值,我们需要使用JavaBean 的完全限定名。
在 SQLMapper 配置文件中,对于 resultType 和 parameterType 属性值,我们需要使用JavaBean 的完全限定名。
resultType为实体类的路径
4.SQL 映射定义Mappers
Mapper XML 文件中包含的SQL 映射语句将会被应用通过使用其statementid 来执行。我们需要在mybatisconfig.xml 文件中配置SQL Mapper 文件的位置。
XML Code
<mappers>
<mapper resource="com/mybatis3/mappers/StudentMapper.xml"/>
<mapper url="file:///D:/mybatisdemo/app/mappers/TutorMapper.xml"/>
<mapper class="com.mybatis3.mappers.TutorMapper"/>
<package name="com.mybatis3.mappers"/>
</mappers>5.environment
MyBatis 支持配置多个 dataSource 环境,可以将应用部署到不同的环境上,如DEV(开发环境),TEST(测试换将),
QA(质量评估环境),UAT(用户验收环境),PRODUCTION(生产环境),可以通过将默认environment 值设置成想要的
environment id 值
以上每一个<mapper> 标签的属性有助于从不同类型的资源中加载映射mapper:
resource 属性用来指定在 classpath 中的 mapper 文件。
url 属性用来通过完全文件系统路径或者web URL 地址来指向 mapper 文件
class 属性用来指向一个mapper 接口
package 属性用来指向可以找到 Mapper 接口的包名
4.SQL 映射定义Mappers
Mapper XML 文件中包含的SQL 映射语句将会被应用通过使用其statementid 来执行。我们需要在mybatisconfig.xml 文件中配置SQL Mapper 文件的位置。
XML Code
<mappers>
<mapper resource="com/mybatis3/mappers/StudentMapper.xml"/>
<mapper url="file:///D:/mybatisdemo/app/mappers/TutorMapper.xml"/>
<mapper class="com.mybatis3.mappers.TutorMapper"/>
<package name="com.mybatis3.mappers"/>
</mappers>5.environment
MyBatis 支持配置多个 dataSource 环境,可以将应用部署到不同的环境上,如DEV(开发环境),TEST(测试换将),
QA(质量评估环境),UAT(用户验收环境),PRODUCTION(生产环境),可以通过将默认environment 值设置成想要的
environment id 值
以上每一个<mapper> 标签的属性有助于从不同类型的资源中加载映射mapper:
resource 属性用来指定在 classpath 中的 mapper 文件。
url 属性用来通过完全文件系统路径或者web URL 地址来指向 mapper 文件
class 属性用来指向一个mapper 接口
package 属性用来指向可以找到 Mapper 接口的包名
阅读全文
0 0
- Mybtatis配置学习笔记
- tomcat配置学习笔记
- 环境配置学习笔记
- proftpd学习配置笔记
- Doxygen 配置学习笔记
- log4j 配置学习笔记
- Iptables 配置学习笔记
- Android学习笔记【配置】
- GoldGate 配置学习笔记
- IRF学习笔记-配置
- MySQL配置学习笔记
- webpack 配置学习笔记
- struts学习笔记---配置数据源
- solaris学习笔记----------配置nfs
- dottext学习笔记1 配置
- debian学习笔记--配置中文
- OSWorkflow学习笔记 JDBC配置
- Java Spring 配置学习笔记
- Oracle学习笔记 读一致性(ORA-01555错误机制分析)及Undo表空间大小设置
- 人工智能爆发 中美AI芯片大比拼
- 算法与数据结构
- 过山车 HDU
- ubuntu 下出现E: Sub-process /usr/bin/dpkg returned an error code
- Mybtatis配置学习笔记
- css基本选择器,id选择器,class选择器,标签选择器,*通配符选择器,逗号 空格 + >
- HTML5按比例缩略图片并上传的实例
- java编程加载窗口,制作动画(屏保泡泡)
- 设计模式-原型模式
- 欢迎使用CSDN-markdown编辑器
- SpringBoot+Mybatis框架项目的单元测试和集成测试(下)
- 【知乎答案】2018校招,笔试应该怎么准备?|牛客网回答
- Centos Android开发环境配置-Android Tools -android list sdk --extended --all