欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mybatis oracle

林玟書1年前7瀏覽0評論

Mybatis是一個開源的Java持久化框架,它可以幫助我們通過XML或注解的方式來映射Java對象和SQL語句之間的關系,從而使得我們的代碼更加簡潔易懂。

而Oracle,則是一種非常流行的關系型數據庫,許多企業都使用Oracle作為自己的數據庫。

在實際的項目中,我曾經使用過Mybatis對接Oracle數據庫,下面就來分享一下我的經驗。

首先,我們需要在pom.xml中添加Mybatis和Oracle的依賴:

<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc8</artifactId>
<version>12.2.0.1</version>
</dependency>
</dependencies>

接下來是配置Mybatis的SqlSessionFactory,我們可以定義一個MybatisConfig類:

import javax.sql.DataSource;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
@Configuration
public class MybatisConfig {
private final DataSource dataSource;
@Autowired
public MybatisConfig(@Qualifier("dataSource") DataSource dataSource) {
this.dataSource = dataSource;
}
@Bean
public SqlSessionFactory sqlSessionFactory() throws Exception {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
sessionFactory.setDataSource(dataSource);
sessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath*:mapper/*.xml"));
return sessionFactory.getObject();
}
@Bean
public DataSourceTransactionManager transactionManager() {
return new DataSourceTransactionManager(dataSource);
}
}

這里我們將mapper文件存放在classpath*:mapper/路徑下,通過PathMatchingResourcePatternResolver來進行掃描。

接下來,我們就可以定義一個Mapper文件了,比如這里我定義了一個UserMapper.xml:

<mapper namespace="com.example.mapper.UserMapper">
<select id="getUserById" parameterType="int" resultMap="userResultMap">
select * from users where id = #{id}
</select>
<resultMap id="userResultMap" type="com.example.entity.UserEntity">
<result property="id" column="id"/>
<result property="name" column="name"/>
<result property="age" column="age"/>
</resultMap>
</mapper>

這里我們定義了一個getUserById的select語句,參數類型為int,返回值為UserEntity類型;同時我們還定義了一個userResultMap,將從數據庫中查詢出來的結果映射到UserEntity類中。

最后,我們就可以在業務類中使用Mybatis來查詢數據了:

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.mapper.UserMapper;
import com.example.entity.UserEntity;
@Service
public class UserService {
private final UserMapper userMapper;
@Autowired
public UserService(UserMapper userMapper) {
this.userMapper = userMapper;
}
public UserEntity getUserById(int id) {
return userMapper.getUserById(id);
}
}

這里我們直接注入了UserMapper,然后調用getUserById方法即可。

綜上所述,Mybatis和Oracle的結合使用非常簡單,只需要添加依賴、配置SqlSessionFactory和Mapper文件,就可以在業務代碼中方便地使用了。