天天看点

bug大全

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
}
           

原因:

bug大全

多增加了请求头,去掉这个content-type就可以了,请求会自动给你增加上

2.连接数据库的时候,发现如果service层出现异常,但是已经配置了spring事务管理,事务没有回滚,最后发现事务压根没有控制住

bug大全

连接数据库的时候,发现如果service层出现异常,但是已经配置了spring事务管理,事务没有回滚,最后发现事务压根没有控制住

事务没有控制住无非就是三个配置没有配好

事务管理类没配

aop里的切入点类名或者表达式写错

tx事务里的方法有问题

3.ajax异步请求的时候,执行到了对应的方法,但是能封装到user的javabean中

bug大全

先直接访问地址,看下能不能访问,看下对应的json有没有问题

可能是json传递出错了×

可能是fatjson导包错了×

习惯问题.符号问题一定要闭合再写字符串

4.启动服务器的时候显示不能解析到这个dao文件

bug大全

一般不能解析到这个dao

1.检查是否配置了支持注解配置

2.检查数据库的database是否完整

3.是否配置了MapperScannerConfigurer

4.是否配置了SqlSessionFactoryBean

配置模板方便

5.NoSuchMethodException

bug大全

1.maven拆分工程的时候使用xml方式可以实现跳转页面,但是注解却不行,显示,values找不到,没有这个方法异常

2.怀疑是xml配置的问题,结果不是

确定没配错环境的,那就检查形参或者返回值,或者字母有没有写错

6.数据库连接

bug大全

原因:配置SqlSessionFactoryBean的时候,配置的name写错了,应该是"typeAliasesPackage",而不是typeAliases

7.启动tomcat插件,service显示报错,找不到协议
bug大全
bug大全

问题分析:报错显示没有这个协议

问题原因:protocok协议的名称写错了

8.

bug大全

dao文件里的命名空间错了

9.

bug大全

看consle页面的控制台,发现找不到对应的前端方法,然后发现methods方法写在了外面

10

bug大全

service层没有配置这个东西

@Service(interfaceClass = ICheckGroup.class)

@Transactional

11.拆分sql的时候

bug大全

拆分sql的时候,多表关联查询,最后发现,注册中心出了问题,原因是sql里的parameterType写错了类型

记住就好,dao的xml也可能影响注册中心

12.

bug大全

springcloud显示什么已经被注册–一般是重复依赖了

一般是重复依赖了,也就是依赖的时候增加了版本号了

13.运行图片微服务的时候显示没有数据源

bug大全

原因是:项目依赖了数据库相关包(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显示这个异常

bug大全
bug大全
bug大全

16.yml文件配置错误

bug大全

18.

bug大全

检查是否漏了@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

bug大全
bug大全

一般是配置错误,检查是否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.

bug大全

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文件里的方法找不到(重要)

bug大全

原因是:

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

bug大全

可能原因:

队列中没有对应的名称

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()方法

上一篇: 依赖bug
下一篇: Bug records

继续阅读