1.postman用get请求出现的异常:
{
"flag": false,
"code": 20001,
"message": "Failed to parse multipart servlet request; nested exception is java.io.IOException:
org.apache.tomcat.util.http.fileupload.FileUploadException: the request was rejected
because no multipart boundary was found",
"data": null
}
原因:
多增加了请求头,去掉这个content-type就可以了,请求会自动给你增加上
2.连接数据库的时候,发现如果service层出现异常,但是已经配置了spring事务管理,事务没有回滚,最后发现事务压根没有控制住
连接数据库的时候,发现如果service层出现异常,但是已经配置了spring事务管理,事务没有回滚,最后发现事务压根没有控制住
事务没有控制住无非就是三个配置没有配好
事务管理类没配
aop里的切入点类名或者表达式写错
tx事务里的方法有问题
3.ajax异步请求的时候,执行到了对应的方法,但是能封装到user的javabean中
先直接访问地址,看下能不能访问,看下对应的json有没有问题
可能是json传递出错了×
可能是fatjson导包错了×
习惯问题.符号问题一定要闭合再写字符串
4.启动服务器的时候显示不能解析到这个dao文件
一般不能解析到这个dao
1.检查是否配置了支持注解配置
2.检查数据库的database是否完整
3.是否配置了MapperScannerConfigurer
4.是否配置了SqlSessionFactoryBean
配置模板方便
5.NoSuchMethodException
1.maven拆分工程的时候使用xml方式可以实现跳转页面,但是注解却不行,显示,values找不到,没有这个方法异常
2.怀疑是xml配置的问题,结果不是
确定没配错环境的,那就检查形参或者返回值,或者字母有没有写错
6.数据库连接
原因:配置SqlSessionFactoryBean的时候,配置的name写错了,应该是"typeAliasesPackage",而不是typeAliases
7.启动tomcat插件,service显示报错,找不到协议
问题分析:报错显示没有这个协议
问题原因:protocok协议的名称写错了
8.
dao文件里的命名空间错了
9.
看consle页面的控制台,发现找不到对应的前端方法,然后发现methods方法写在了外面
10
service层没有配置这个东西
@Service(interfaceClass = ICheckGroup.class)
@Transactional
11.拆分sql的时候
拆分sql的时候,多表关联查询,最后发现,注册中心出了问题,原因是sql里的parameterType写错了类型
记住就好,dao的xml也可能影响注册中心
12.
springcloud显示什么已经被注册–一般是重复依赖了
一般是重复依赖了,也就是依赖的时候增加了版本号了
13.运行图片微服务的时候显示没有数据源
原因是:项目依赖了数据库相关包(mybatis),springboot自动注入DataSourceAutoConfiguration类,所以找不到异常了
解决:@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)//排除掉数据源的自动配置类 不需要自动配置,不需要连接数据库
14.运行feign的调用的时候出现异常
PathVariable(value =“id”) Long id里的(value =“id”)没有加
PathVariable annotation was empty on param 0
15.feign显示这个异常
16.yml文件配置错误
18.
检查是否漏了@Component 注解
还不行的话就加入以下注解,这个错误不影响运行和效果
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<version>2.2.2.RELEASE</version>
</dependency>
这个解释器的作用是用来,填充javadoc也就是系统的文档注释什么的,然后要有setter,getter方法才行,然后再添加到什么JSON之前不会被处理
19.创建令牌失败授权不了,401
一般是配置错误,检查是否oauth和user账号密码是否正确,我这个是springsecurity里的UserDetailsService实现类的return加密了一次password
20.BeanCreationException: Error creating bean with name ‘com.changgou.goods.feign.SkuFeign’: FactoryBean threw exception on object creation; nested exception is java.lang.IllegalStateException: PathVariable annotation was empty on param 0.
21.Field userFeign in com.changgou.order.service.impl.OrderServiceImpl required a bean of type ‘com.changgou.user.feign.UserFeign’ that could not be found.
启动类中包没有扫描
21.xml文件里的方法找不到(重要)
原因是:
xml文件放在了src目录下,编译的时候只会编译java文件,并把他放在了target目录下,而xml就不会放,最终运行的是target下的目录,所以就不会存在xml这些文件了
解决:pom.xml中增加配置
让maven编译sec下的xml文件
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>
还需要在Spring Boot配置文件中添加配置,也就是.yml里的 ,让他运行的还是可以找到xml文件
#配置mapper xml文件的路径
mybatis-plus.mapper-locations=classpath:com/guli/edu/mapper/xml/*.xml
22.TransportException异常 —eureka配置
server端配置了server.context-path=/pancake
那么client的eurake地址是: eureka.client.serviceUrl.defaultZone=http:// e u r e k a . i n s t a n c e . h o s t n a m e : {eureka.instance.hostname}: eureka.instance.hostname:{server.port}/eureka/pancake
或者改server端为:server.context-path=/(或者不写这个配置,默认为/)
client端: eureka.client.serviceUrl.defaultZone=http://localhost:8763/pancake/eureka/
feign.hystrix.enabled=true
23.rabbitMQ出现连接不上queue
可能原因:
队列中没有对应的名称
yml中没有配置rabbitmq
provider没有先启动
24.ConcurrentModificationException
并发修改异常
就是,在对集合进行遍历等操作的时候又同时对他进行修改了
for (String e : list) {
System.out.println(e);
list.remove(e);// ConcurrentModificationException 并发修改异常
}
解决方法:使用CopyOnWriteArrayList
CopyOnWriteArrayList<String> list = new CopyOnWriteArrayList<>();
Collections.addAll(list,"jack","rose","lily","lucy");
for (String e : list) {
System.out.println(e);
list.remove(e);// ConcurrentModificationException 不会发生修改异常
}
或者通过迭代器的方法:remove()方法