环境以及配置文件
- JDBC jar版本 : 8.0.11
- Mybatis jar版本 : 3.4.6
- Spring jar版本 : 4.3.18
- Mybatis-Spring jar版本 : 1.3.1
- 配置信息文件 : db.properties
- Spring配置文件 : applicationContext.xml
- 测试路径如下图
Mybatis-Spring 连接 MySQL8.0 的配置步骤出错解决
配置db.properties
配置applicationContext.xml
- 在applicationContext.xml中, 引入db.properties 文件.
- 配置数据源
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
- 配置 Mybatis 扫描mapper.XML文件
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<!-- 写一些数据库的配置, 因为我没用到, 所以用不着 -->
<!-- <property name="configLocation" value="sqlMapConfig.xml"/> -->
<property name="mapperLocations" value="com/dao/mapper/*.xml"/>
</bean>
- 扫描全部dao层接口
<!-- 扫描所有dao -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.dao" />
<!-- 单数据源可以不写sqlSessionFactoryBeanName属性 -->
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
</bean>
配置dao 层接口与 mapper文件
- dao接口
public interface UserDao {
public List<User> selAll();
}
- mapperXML文件
<mapper namespace="com.dao.UserDao">
<select id="selAll" resultType="com.entity.User">
select * from user
</select>
</mapper>
测试
@Test
public void selAll() {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
UserDao userDao = context.getBean(UserDao.class);
List<User> list = userDao.selAll();
System.out.println(list);
}