SpringBoot整合mybatis碰到的问题
整合mybatis
1. 导包:在原有的web项目的基础上加上
<!--JDBC连接--> |
2. 其他步骤与普通的ssm步骤类似
这是dao层的文件的格式。
一.在这次配置中遇到的问题:
报错信息:Loading
class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is
`com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI
and manual loading of the driver class is generally unnecessary.
该异常是因为连接驱动的问题,可能com.mysql.jdbc.Driver已经过时,在application配置文件中将连接换位com.mysql.cj.jdbc.Driver即可
2.dao层的接口文件的配置:
1.
以前一直以为接口文件是不需要加上Repository的,但是在这次配置中如果接口文件不加上托管注解,在service层直接使用自动注入就会报bean找不到
3.1.
启动类的位置,一定要放在其他类的上一层,不然就需要加上注解来告诉他扫描的位置,不然是扫描不到Controller类等等的。MapperScan注解是因为下一个问题。
4.
终极问题:Invalid bound statement (not found)
1.
给我的提示是Invalid bound statement (not
found): com.zy100.dao.HouseMapper.findHouseInfo,
他的意思是找不到我的findHouseInfo方法,这种错误的原因百度如下:
1.
Namespace的值写错了,一定要是包名加上mapper文件名并且不带后缀
2.
接口文件的名字一定要和xml文件的名字相同,不然也可能会报错
3.
标签的id,这个问题一般不会犯错,因为都是复制的,我重新复制了好几遍,重启之后还是同样的报错,然后我就放弃了,百度上说的大致都是上面这三条
然后我开始怀疑会不会因为mapper文件并没有被扫描到,然后通过百度找到了一个扫描mapper文件的方法,也就是第三步中说过的@MapperScan注解
这个注解可以设置扫描的路径,放在主方法上面,如果在resources下的话只需要将路径改为classpath:com.zy100.dao即可,原以为一切皆大欢喜,谁知道运行后这个让人头大的问题又出来了!就算是我将路径改成了classpath:com.zy100.dao,并且在resources文件夹下创建与dao层接口文件相同的包名,将xml文件复制下来也不行。
4.百度上说xml文件必须放在resources下,但是我目前实现的是放在java文件夹下,因为我想到了idea不会扫描java文件夹下面的xml文件夹,但是可以在pom文件中进行配置让她扫描编译xml文件
<!--不添加的话java文件夹下Mapper文件不被扫描--> |
在加上这个之后,终于换了一个报错,其实在这样做之后就差不多成功了,我最后的包结构就是第一张图,xml文件和接口文件位于同一包下,主方法直接放在了与他们包同级的文件夹下,所以主方法上面那个SpringBootApplication注解中的内容可以加也可以不加,如果是在同一文件夹下或者是在上级包的上级的位置就需要加上。
1. 最后两个简单报错, java.sql.SQLException: The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zone”
这个是因为编码格式的问题
在application.properties中连接数据库的时候拼接
?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8 |
1. 粗心的报了一错误,大家估计不会遇到
java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES) |
这个错误是
这个是因为当时账号密码都是填写的root,后来想起来是123456
1.
报错信息:Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
该异常是因为连接驱动的问题,可能com.mysql.jdbc.Driver已经过时,在application配
SpringBoot整合mybatis碰到的问题的更多相关文章
- SpringBoot整合Mybatis之项目结构、数据源
已经有好些日子没有总结了,不是变懒了,而是我一直在奋力学习springboot的路上,现在也算是完成了第一阶段的学习,今天给各位总结总结. 之前在网上找过不少关于springboot的教程,都是一些比 ...
- SpringBoot整合Mybatis【非注解版】
接上文:SpringBoot整合Mybatis[注解版] 一.项目创建 新建一个工程 选择Spring Initializr,配置JDK版本 输入项目名 选择构建web项目所需的state ...
- SpringBoot整合Mybatis注解版---update出现org.apache.ibatis.binding.BindingException: Parameter 'XXX' not found. Available parameters are [arg1, arg0, param1, param2]
SpringBoot整合Mybatis注解版---update时出现的问题 问题描述: 1.sql建表语句 DROP TABLE IF EXISTS `department`; CREATE TABL ...
- springboot学习随笔(四):Springboot整合mybatis(含generator自动生成代码)
这章我们将通过springboot整合mybatis来操作数据库 以下内容分为两部分,一部分主要介绍generator自动生成代码,生成model.dao层接口.dao接口对应的sql配置文件 第一部 ...
- springboot整合mybatis出现的一些问题
springboot整合mybatis非常非常的简单,简直简单到发指.但是也有一些坑,这里我会详细的指出会遇到什么问题,并且这些配置的作用 整合mybatis,无疑需要mapper文件,实体类,dao ...
- springBoot整合mybatis、jsp 或 HTML
springBoot整合mybatis.jsp Spring Boot的主要优点: 1: 为所有Spring开发者更快的入门: 2: 开箱即用,提供各种默认配置来简化项目配置: 3: 内嵌式容器 ...
- SpringBoot系列七:SpringBoot 整合 MyBatis(配置 druid 数据源、配置 MyBatis、事务控制、druid 监控)
1.概念:SpringBoot 整合 MyBatis 2.背景 SpringBoot 得到最终效果是一个简化到极致的 WEB 开发,但是只要牵扯到 WEB 开发,就绝对不可能缺少数据层操作,所有的开发 ...
- SpringBoot整合Mybatis完整详细版二:注册、登录、拦截器配置
接着上个章节来,上章节搭建好框架,并且测试也在页面取到数据.接下来实现web端,实现前后端交互,在前台进行注册登录以及后端拦截器配置.实现简单的未登录拦截跳转到登录页面 上一节传送门:SpringBo ...
- SpringBoot整合Mybatis完整详细版
记得刚接触SpringBoot时,大吃一惊,世界上居然还有这么省事的框架,立马感叹:SpringBoot是世界上最好的框架.哈哈! 当初跟着教程练习搭建了一个框架,传送门:spring boot + ...
随机推荐
- 好好理解一下python的函数和python的缩进
缩进相当于其他语言的括号,括号中的语句才是一起执行的 这一个函数的功能应该是计算平均分 所以d这个dict应该是作为参数传进来的,而不是写到函数内部 正确的写法 d = { 'Adam': 95, ' ...
- 模板_BIT
#include<bits/stdc++.h> #define maxn 500005 //#define int long long using namespace std; inlin ...
- js for循环中i++与++i有什么区别
平时都是这样写的for循环, 1 2 3 for(var i = 0; i < 20 ; i++){ .... } 但我看有的人这样写 for (var i = 0; ...
- android日志优先级
Android 的日志分为如下几个优先级(priority): V —— Verbose(最低,输出得最多) D —— Debug I —— Info W —— Warning E —— Error ...
- python学习之路(25)
继承和多态 在OOP程序设计中,当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类.父类或超类(Base clas ...
- SPFA算法的SLF优化 ——loj#10081. 「一本通 3.2 练习 7」道路和航线
今天做到一道最短路的题,原题https://loj.ac/problem/10081 题目大意为给一张有n个顶点的图,点与点之间有m1条道路,m2条航线,道路是双向的,且权值非负,而航线是单向的,权值 ...
- java 强弱软虚 四种引用,以及用到的场景
1.利用软引用和弱引用解决OOM问题:用一个HashMap来保存图片的路径和相应图片对象关联的软引用之间的映射关系,在内存不足时,JVM会自动回收这些缓存图片对象所占用的空间,从而有效地避免了OOM的 ...
- 无法加载模块 TP3.2
报错 3.2的路由功能是针对模块设置的,所以URL中的模块名不能被路由,路由定义也通常是放在模块配置文件中. 'MODULE_DENY_LIST' => array('Common','User ...
- 网站运营文章LIST
如何建立网站地图(site map) ● 伤心SEO之太平洋 ● 关键字密度与网站排名 ● 哪些因素决定网站SEO的价格 ● SEO:站在Google背后的搜钱力量 ● 网站被一搜索屏蔽,郁闷! ● ...
- iptables添加、删除端口
简洁才是王道, 下面是添加一个udp端口,端口号8566,即接收到8566端口的所有udp包 /sbin/iptables -I INPUT -p udp --dport -j ACCEPT 要删除这 ...