时间:2021-05-20
本文为大家解决了Mybatis-Spring 连接 MySQL8.0 的配置步骤出错问题,供大家参考,具体内容如下
环境以及配置文件
测试路径如下图
配置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>测试
@Testpublic void selAll() { ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); UserDao userDao = context.getBean(UserDao.class); List<User> list = userDao.selAll(); System.out.println(list);}以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
使用mybatis-spring-boot-starter即可。简单来说就是mybatis看见springboot这么火,于是搞出来mybatis-spring
mysql5.x升级至mysql5.7后导入之前数据库date出错的解决方法如下所示: 修改mysql5.7的配置文件即可解决,方法如下: linux版:找
两种防水都可以,但是使用方式不同。@mapper需要mybatis和mybatis-spring的版本足够的高才可以。不然导入不到@mapper。补充知识:关于
之前写过一篇博客《Spring+Mybatis+Mysql搭建分布式数据库访问框架》描述如何通过Spring+Mybatis配置动态数据源访问多个数据库。但是之
为了梳理前面学习的《Spring整合MyBatis(Maven+MySQL)一》与《Spring整合MyBatis(Maven+MySQL)二》中的内容,准备做