javamybatis框架配置详解
⼀个框架的使⽤,必然离不开其中的组件⽀持。我们在下载完mybatis框架后,因为⼤部分的内部结构还没有启动,就要⼿动的对其进⾏配置。在之前有提到,mybatis框架的作⽤就有数据库⽅⾯的,所以本篇⽂章带来了数据库和sql⽅⾯的配置⽅法,⼤家⼀起往下⾯看看具体操作。
1.配置数据库
创建mybatis的配置⽂件,配置数据库的信息。数据库我们可以配置多个,但是默认的只能⽤⼀个。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-////DTD Config 3.0//EN"
"/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 加载类路径下的属性⽂件 -->
<properties resource="db.properties"/>
<!-- 设置⼀个默认的连接环境信息 -->
<environments default="mysql_developer">
<!-- 连接环境信息,取⼀个任意唯⼀的名字 -->
<environment id="mysql_developer">
<!-- mybatis使⽤jdbc事务管理⽅式 -->
jpa mybatis<transactionManager type="jdbc"/>
<!-- mybatis使⽤连接池⽅式来获取连接 -->
<dataSource type="pooled">
<!-- 配置与数据库交互的4个必要属性 -->
<property name="driver" value="${mysql.driver}"/>
<property name="url" value="${mysql.url}"/>
<property name="username" value="${mysql.username}"/>
<property name="password" value="${mysql.password}"/>
</dataSource>
</environment>
<!-- 连接环境信息,取⼀个任意唯⼀的名字 -->
<environment id="oracle_developer">
<!-- mybatis使⽤jdbc事务管理⽅式 -->
<transactionManager type="jdbc"/>
<!-- mybatis使⽤连接池⽅式来获取连接 -->
<dataSource type="pooled">
<!-- 配置与数据库交互的4个必要属性 -->
<property name="driver" value="${oracle.driver}"/>
<property name="url" value="${oracle.url}"/>
<property name="username" value="${oracle.username}"/>
<property name="password" value="${oracle.password}"/>
</dataSource>
</environment>
</environments>
</configuration>
2.配置SqlSessionFactory
MyBatis 的SqlSessionFactory 接⼝除了使⽤基于 XML 的配置创建外也可以通过 Java API 编程式地被创建。每个在 XML 中配置的元素,都可以编程式的创建。
使⽤ Java API 创建 SqlSessionFactory,代码如下:
public static SqlSessionFactory getSqlSessionFactoryUsingJavaAPI() {
if (javaSqlSessionFactory == null) {
try {
DataSource dataSource = DataSource();
TransactionFactory transactionFactory = new JdbcTransactionFactory();
Environment environment = new Environment("development", transactionFactory, dataSource);
Configuration configuration = new Configuration(environment);
configuration.addMapper(StudentMapper.class);
javaSqlSessionFactory = new SqlSessionFactoryBuilder().build(configuration);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
return javaSqlSessionFactory;
}
这个配置⾥,加载了⼀个映射类。映射类是包含了 SQL 映射注解的 Java类,可以⽤来取代 XML。然⽽,由于 Java 注解的⼀些限制和 MyBatis 映射的复杂性,⼀些⾼级的映射还是要⽤ XML 来配置,⽐如嵌套映射等。由于这个原因,MyBatis 会⾃动查和加载已经存在的 XML。
内容扩展:
Mybatis参数的设置
数据库进⾏添加操作需要注意的问题
①.主键⾃增:在建⽴数据库表的时候可以设置主键⾃增
②.主键不⾃增:可以⾃⼰⼿动设置
<insert id="save" parameterType="Book" keyColumn="id" keyProperty="id" useGeneratedKeys="true">
insert into jpa_book (author,createTime,name,price,sales,stock) values (#{author},#{createTime},#{name},#{price},#{sales},#{stock});
</insert>
keyColumn=“id” 指定数据库表主键字段
keyProperty=“id” 设置数据库表对应实体类的属性名
useGeneratedKeys=“true” 开启主键⾃增
③.主键不⽀持⾃增:例如Oracle数据库就不⽀持⾃增
<selectKey keyProperty="id" resultType="int" keyColumn="id" order="BEFORE">
select LAST_INSERT_ID <!--或者使⽤ select UUID()⽣成-->
</selectKey>
order=“BEFORE” 表⽰先⽣成主键再进⾏⾃增
select LAST_INSERT_ID 或者使⽤ select UUID() 通过函数⽣成主键值
到此这篇关于java mybatis框架配置详解的⽂章就介绍到这了,更多相关java mybatis框架的配置内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论