色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mybatis寫oracle

MyBatis是一種優(yōu)秀的ORM框架,它的主要作用是把Java對(duì)象和數(shù)據(jù)庫(kù)中的表進(jìn)行映射,并且通過(guò)自動(dòng)化地處理SQL,簡(jiǎn)化了操作JDBC的步驟,提高了程序員的開(kāi)發(fā)效率。

下面就以O(shè)racle數(shù)據(jù)庫(kù)為例,簡(jiǎn)單介紹一下如何使用Mybatis來(lái)訪問(wèn)Oracle。

第一步:配置數(shù)據(jù)庫(kù)連接

在Mybatis中,我們需要先在配置文件中配置數(shù)據(jù)庫(kù)連接。下面是一個(gè)配置文件的示例:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:XE"/>
<property name="username" value="your_username"/>
<property name="password" value="your_password"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="mapper.xml"/>
</mappers>
</configuration>

其中,我們需要修改的地方有:

  • driver:指定使用的數(shù)據(jù)庫(kù)驅(qū)動(dòng),這里是Oracle的驅(qū)動(dòng)類。
  • url:指定連接Oracle的JDBC URL。
  • username和password:登錄Oracle數(shù)據(jù)庫(kù)的用戶名和密碼。
  • mapper:指定映射文件(后面再提)。

第二步:創(chuàng)建數(shù)據(jù)源

Mybatis支持多種類型的數(shù)據(jù)源,我們這里使用的是PooledDataSource。在Java中創(chuàng)建數(shù)據(jù)源,我們需要按照如下步驟:

// 1. 加載配置文件
InputStream inputStream = Resources.getResourceAsStream("mybatis-config.xml");
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
// 2. 創(chuàng)建SqlSessionFactory對(duì)象
SqlSessionFactory sqlSessionFactory = builder.build(inputStream);
// 3. 獲取SqlSession對(duì)象
SqlSession sqlSession = sqlSessionFactory.openSession();
其中,上面提到的配置文件是我們剛剛編寫的mybatis-config.xml。SqlSessionFactory是Mybatis的核心類,用于創(chuàng)建SqlSession對(duì)象。

第三步:映射Java對(duì)象和數(shù)據(jù)庫(kù)表

Mybatis的核心功能是將Java對(duì)象和數(shù)據(jù)庫(kù)表進(jìn)行映射,現(xiàn)在我們來(lái)看一個(gè)具體的例子。

我們假設(shè)有一個(gè)User對(duì)象,對(duì)應(yīng)的數(shù)據(jù)庫(kù)表是users:

public class User {
private int id;
private String name;
private String email;
// setter和getter方法省略
}

對(duì)于這個(gè)User類,我們需要在映射文件中定義該如何映射:

<mapper namespace="com.example.dao.UserMapper">
<resultMap id="userMap" type="User">
<id column="id" property="id" />
<result column="name" property="name" />
<result column="email" property="email" />
</resultMap>
<select id="getUserById" resultMap="userMap">
SELECT
id,
name,
email
FROM users
WHERE id = #{userId}
</select>
</mapper>

在上面的映射文件中,我們定義了一個(gè)resultMap,用來(lái)描述User對(duì)象和數(shù)據(jù)庫(kù)表中的字段的映射關(guān)系。同時(shí),我們還定義了一個(gè)select節(jié)點(diǎn),用來(lái)查詢指定id的User對(duì)象。

現(xiàn)在我們把這個(gè)類和映射文件放在一起,可以通過(guò)SqlSession來(lái)訪問(wèn)數(shù)據(jù)庫(kù),并查詢指定的User對(duì)象:

// 獲取UserMapper
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
// 查詢id為1的用戶
User user = userMapper.getUserById(1);

通過(guò)以上步驟,我們已經(jīng)可以使用Mybatis來(lái)訪問(wèn)Oracle數(shù)據(jù)庫(kù)了。另外,還有一些其他的高級(jí)功能,例如動(dòng)態(tài)SQL、緩存等,感興趣的讀者可以自行搜索相關(guān)文檔進(jìn)行學(xué)習(xí)。