如果代码检查没有错误,尝试清下缓存
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException:
No qualifying bean of type 'com.xxx.dao.BookDao' available:
expected at least 1 bean which qualifies as autowire candidate.
Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
解决:1.bookDao中没加Repository注解
2.springMVC.xml中没写包扫描
springcloud错误
1.predicates忘记加s
2.mysql配置中的URL忘加jdbc:
编写项目时遇到的maven问题
1.maven依赖报红
a.尝试了去本地maven仓库删除对应的jar包所在的文件夹,但是无济于事,
b.CSDN尝试搜索maven爆红,mybatis-plus依赖爆红给出的解答都是网络问题,删库重下;下载不完全,重下;存在lastupdate即下到一半被停止后又继续下会导致冲突,重下。
但是均没有解决实际问题
c.有尝试过invalidate Caches / Restart ,也是无效
d.但是在保持爆红的情况下,运行测试程序通过(一开始不通过)
e.将mybatis-plus的依赖注释掉后,刷新maven,然后放开注释,爆红消失
mbg导包没导入
显示依赖存在,但是没法在java文件中导入,
rebuild后生效。
org.apache.ibatis.binding.BindingException: Invalid bound statement
首先有几点是必须要注意的,不然就会莫名其妙的出现这个问题:
1. DAO 接口名一定要与 Mapper 文件的名称一模一样
2. Mapper 文件中的 namespace 路径一定要与 DAO 接口的路径一致
3. 还有一点特别重要,即 Mapper 文件必须要放置到 resources 目录中,否则不会被编译
4. resources 目录中的 Mapper 文件的路径一定要与 DAO 接口的路径完全一致
这和之前ssm阶段的问题一样,就是xml和mapper接口的位置问题
要么不同包,要么加配置
最终问题出在启动类上的@ComponentScan被误写成@MapperScan了,
找不到mapper可以看下启动类有没加mapperscan注解
v-for没有提示
1.可能是原来的vue-helper不起作用了,
有帖子推荐用Vue 3 Snippets,
卸载vue-helper安装Vue 3 Snippets后解决
路由出不来
页面变成了失去超链接的样子
排查发现是path写成了paths。。。
const Welcome = {'path': '/welcome', 'component':{ 'template': '<div>欢迎</div>' }},
在最后抽取的routes部分,3条平行语句用逗号分隔,会导致另外两条语句不起作用
应使用分号或者不写
小结:只能说,vue中符号导致的一些小问题还是挺多的
const Welcome = {'path': '/welcome', 'component':{ 'template': '<div>欢迎</div>' }}
const Student = {'path': '/student', 'component':{ 'template': '<div>student list</div>'}}
const Teacher = {'path': '/teacher', 'component':{ 'template': '<div>teacher list</div>'}}
前端代码请求方式错误也会报跨域问题的错误
因为请求方式是由tomcat解析的
在更新方法中我将method写成了post,3个报错信息中有一条居然是跨域(协议,端口,ip地址)错误
今天又遇到sm的Maven错误
场景:之前热部署忘记配了,想补上热部署的配置,复制依赖到pom中,在maven中查看,报红,显示版本号为unknown
解决:
1.还是尝试仓库删除对应jar包所在的文件夹,然后刷新maven组件,一如既往的不管用
2.将该依赖注释后,重启idea,报红消失,放开注释,还是一样报红,unknown
3.最后尝试加版本号,没有自动提示,手打过程中,发现在仓库对应的文件夹下生成了过程中的所有文件夹
比如,版本号为2.2.1.RELEASE,
生成了2、2.2.1、2.2.1.REALEASE等文件夹以及一直阴魂不散的unknown
将错误的包都删除后,从别的仓库拷贝正确的包到本地
再次尝试,有提示后,刷新后成功导入
小结:推测生成的不正确的包大概率是maven包自动导入的锅
可以尝试先关闭下,把正确的jar包下载好后,再开启
自动导入有时也坑人啊
mapper接口和xml文件的绑定错误
报告异常:
ResultCodeEnum(success=false, code=20001, message=未知错误)
Invalid bound statement (not found):
com.atguigu.guli.service.edu.mapper.SubjectMapper.selectNestedListByParentId
1、问题分析
dao层编译后只有class文件,没有mapper.xml,
因为maven工程在默认情况下src/main/java目录下的所有资源文件是不发布到target目录下的
2、解决方案
(1)在edu的pom中配置如下节点
项目打包
<build>
<!-- 项目打包时会将java目录中的*.xml文件也进行打包 -->
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>
重新打包项目会发现target目录下出现了xml文件夹
(2)还需要在Spring Boot配置文件中添加配置
#mybatis-plus:
mapper-locations: classpath:com/atguigu/guli/service/edu/mapper/xml/*.xml
启动类启动时报缺少数据库启动不了
1.分析原因:因为spring启动时会自动配置数据,因此回去找数据库的配置,但是这个微服务不需要连接数据库(如VOD,oss服务),所以就没有配置,导致了报错
2.问题解决:在@springBootApplication后加(exclude = DataSourceAutoConfiguration.class)将自动数据源配置屏蔽
Error creating bean with “XXX”
这个一般是有类没有注入到容器中的问题,可以检查@Service,@Repository等的注解是否没有加上
与之相近,报该错误的同时,还有信息说Unsatisfied Dependency
就是有依赖没有加入或是没有正确加入
前端404
场景:写到幻灯片数据展示的时候,写完async异步方法,报404,
解决:前端调用的接口在后台找不到,原来是后台新增了一个接口后没有热部署,
重启后生效
Your password does not satisfy the current policy requirements
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
场景
在配置mysql主从复制的时候,由于mysql默认不支持远程访问,因此需要给当前用户授予权限,在授予权限
grant all privileges on . to root@’%’ identified by ‘123456’; 的时候,报该错误
分析
该错误字面理解为密码不符合当前策略需求,那么将密码策略改为符合当前密码
或是将密码改为符合策略就行
解决
1.用SHOW VARIABLES LIKE ‘validate_password%’;来查看当前密码策略;
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name | Value |
+--------------------------------------+--------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 8 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | MEDIUM |
| validate_password_special_char_count | 1 |
+--------------------------------------+--------+
7 rows in set (0.00 sec)
2.修改各项参数
关于 mysql 密码策略相关参数;
- 、validate_password_check_user_name 设置为ON的时候表示能将密码设置成当前用户名。
1)、validate_password_length 固定密码的总长度;
2)、validate_password_dictionary_file 指定密码验证的文件路径;
3)、validate_password_mixed_case_count 整个密码中至少要包含大/小写字母的总个数;
4)、validate_password_number_count 整个密码中至少要包含阿拉伯数字的个数;
5)、validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM;
关于 validate_password_policy 的取值:
0/LOW:只验证长度;
1/MEDIUM:验证长度、数字、大小写、特殊字符;
2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;
6)、validate_password_special_char_count 整个密码中至少要包含特殊字符的个数;
修改方式:如将密码长度设置为6(默认为8)
set global validate_password_length=6;
3.使其符合密码
4.flush privileges;即可完成修改
或是修改密码
ALTER USER ‘用户名’@‘localhost’ IDENTIFIED BY ‘密码’;
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘root’;
以符合策略
参考: https://blog.csdn.net/Hello_World_QWP/article/details/79551789
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
seata no available service ‘null’ found, please make sure registry config correct
–seata注册不上问题
看seata的版本,在seata1.1版本后,配置中的vgroup_mapping改成vgroupMapping了。
参考:https://www.cnblogs.com/javashare/p/12529434.html
Slf4j注解无法添加
如果是springboot环境,缺少lombok依赖
如果是spring,就是缺3个依赖
在本地仓库删除文件,但是远端没有删除
在本地仓库中删除文件,也要把该文件添加到暂存区一起提交,远端仓库才会把该文件删除,因为git保存的是状态,而删除文件也是对该文件状态的一种修改