Mybatis-Spring连接mysql 8.0配置步骤出错的解决方法
本文为大家解决了Mybatis-Spring 连接 MySQL8.0 的配置步骤出错问题,供大家参考,具体内容如下
环境以及配置文件
- 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
测试路径如下图

配置db.properties
配置db.properties中填写以下内容
# 驱动名这样写 jdbc.driver=com.mysql.cj.jdbc.Driver # url这样写 jdbc.url=jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true # 数据库用户名 jdbc.username=root # 数据密码 jdbc.password=password
这里有一个错误点, 就是用户名的key用的是username, 这样的话, 在applicationContext.xml中配置数据源时用的是${username}, 这样会导致一个问题, 因为XML的表达式中${username}, 代表电脑环境路径下的username!!! 就是说用的是你电脑的用户名, 不是数据库的用户名!!! 总而言之, 别用username当key名 我用的是jdbc.username.
配置applicationContext.xml
1.在applicationContext.xml中, 引入db.properties 文件.
<context:property-placeholder location="db.properties"/>
2.配置数据源
<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>
3.配置 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>
4.扫描全部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);
}
上一篇:springboot+idea热启动设置方法(自动加载)
栏 目:JAVA代码
本文标题:Mybatis-Spring连接mysql 8.0配置步骤出错的解决方法
本文地址:http://www.codeinn.net/misctech/60256.html


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




