异常错误总结

1.发现自己在项目某个模块文件夹下新建了git仓库,去对应模块目录删除删除即可
2.restful风格@PathVariable消费方调用必须指定远程形参,即@public User fingById(PathVarible(value=“username”) String username) 不然会出现@PathVariable不能为空的错误
3.webapp以骨架创建没有小蓝点设置web项也没用,最后结论是工程频繁删减模块导致工程可能被搞坏了,所以删除整个工程,以jar构建,补充webapp,pom文件war得以解决
4.实在没办法:删模块重建、删工程重建、进入工作空间删.dea和.iml文件重新导入、重启idea、关机重启
5.打包插件出现can not main。解决办法:打包的jar模块加个空的main方法
和提示找不到具体包,把打包插件不要放到pom父工程直接放到模块下以及重新安装找不到类的那个依赖包重新install即可
6.daocker容器部署访问的docker的容器id
7.未能实例化,找不到tokendecode,原因是启动了错误的启动类
2Field addressFeign in com.changgou.web.order.controller.OrderController required a bean of type ‘com.changgou.user.feign.AddressFeign’ that could not be found.
原因:启动类未实例化
8.远程调用feign为null,形参名未统一

9.ALI物流接口报错HTTPCLIENTBUIDLER错误升级了版本还是不行报Register错误,与2.14版本的springbootweb自动配置不匹配,解决办法封装成工具类工程直接调用
10.pathvariable wasnot is null原因@PathVariable需要指定url里的参数名
11.rabbitmq.client fauiled:浏览器访问rabbitmq客户端一次即可,或者rabbitmq未配置地址
12.调用阿里物流接口,整合时出现httpclientbuilder异常解决办法把它封装成工具类,通过正常的工程直接使用该工具类
13.页面资源js效果加载不出,发现重复导入了js文件
14.object–>Json,feign调用接口返回Result数据,再次封装成List,封装给报表时cell时,报错LinkedHashMap与实体类数据转换异常,与json转换工具转换机制有关。解决办法不通过feign调用,放在数据controller层
15.样式加载不出来:路径不对,网关没有在static放行
16.网关等于一个大过滤器,拦截与增强
17.vue层级太深数据无法赋值前端debug查数据
18.thymeleaf返回结国页面直接获取"对象.属性"报错,解决办法,Response.getBody获取
19.//There is no getter for property named ‘字段1’:mapper文件出错,或没有指定@Param,或者没有getter/setter方法
20,错误使用系统自带的ComHttpClient.doPost(); 导致无法发送请求,使用封装过的Commonhttpclient httClient,httpClient.httpPost()后问题解决
21.未使用切面注解(接口数据加密。进来时是一个加密串,该注解也同样用于解密),在单元测试时虽然使用post调用成功,但数据无法解析。所以接口虽然没问题,但实际测试仍然需要做
22.继承父类,发现序列化json多了"parms:{,“a”:“1”}",导致无法重新还原成对象,原因是我继承的实体类又继承了BaseEntity,它里面有个Map<String,Object> params,导致序列化时出现重复添加,不仅在对象内添加了该属性也在params里面添加了,删除后即可。
23.http调用超时异常:.当有多条调用链,建议直接在最后一层打断点,只要进入该断点即可,这样在入口报错一般都是超时异常,其实可以不用管。此时把最后一层断点放开,直接运行,不走debug会发现是正常的。其实你的程序正确,只是http工具类设置了超时或其他情况的保护行为
24.小技巧:赋值异常关键字,右击,findPath查询引用即可
25.navicat使用:筛选:确定字段确定值查询
26.序列化json出错:关于json的网络传输,当一遍序列化的json数据属性大于接收的数据实体,传入多余的字符串会被丢弃,少了的实体类属性为null
27.shr256本地调本地,本地调线上都没问题,线上调线上就行。原因:明文的编码问题不是utf8,可能跟idea的一些设置有问题,重新(设置)换成utf8即可或者不用shr256加密
27.数据库长度小于存入的数据长度,会报一个length有关的错误。解决办法是将数据库长度增大
28.java.lang.reflect.UndeclaredThrowableException.Error attempting to get column ‘identity_no’ from result set。签名秘钥加密的clientkey配置不正确导致
29.Error updating database. Cause: java.lang.IllegalStateException
The error may involve com.wise.mpt.mapper.TPeopleInfoMapper.updateTPeopleInfo-Inline
The error occurred while setting parameters
Cause: java.lang.IllegalStateException
原因:mapper.xml文件没有加入为 ’ ’ 空串的判断,如下
<if test="lon != null>lon = #{lon}</if>实际传入了参数 lon = ’ ’
所以要加为空判断
30.invalid comparison: java.util.Date and java.lang.String
原因:mapper.xml中<if test=“createTime != null and createTime=’ ’ “>create_time = #{createTime}</if>
解决:<if test=“createTime != null “>create_time = #{createTime}</if>
31.You have an error in your SQL syntax; check the manual that corresponds to your sql
mapper.xml的更新sql没有加逗号
32.source字段发现完成更新、新增出现 org.springframework.jdbc.BadSqlGrammarException:
Error updating database. Cause: java.sql.SQLException: No value specified for parameter 1
The error may involve com.wise.mpt.mapper.TPeopleInfoMapper.insertTPeopleInfo-Inline
The error occurred while setting parameters
SQL: insert into t_people_info ( insurance_num,files_num, social_securit_num, xm, identity_type, sex, mz, nationility, education,hr_type,reg_province,reg_city, reg_county, reg_street, contactor_one_relation, contactor_two_relation, co_ord_manage,blame_area, magment_office, ss_flag,people_type, source, del_flag, create_time ) values ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ‘0’, ? )
Cause: java.sql.SQLException: No value specified for parameter 1
; bad SQL grammar []; nested exception is java.sql.SQLException: No value specified for parameter 1的异常提示。原因是source是thymeleaf关键字
解决方案:source换成messageSource(数据库source–>message_source)即可或者在mapper文件中为所有source添加飘号 `source`
33 在替换上述完成后,发现又提示messageSource没有getter方法,但@Data(lombok注解)存在,在mapper.xml文件中均正常,但是就是无法发现错误
解决方案:重新生成代码
34.使用开源若依框架的jquery-cxselect插件,发现数据返回数目正确,但全部显示为undefine
原因:数据结构与提供的数据格式不对
解决:修改后台返回数据属性与对象结构包括实体类,以保证与样例一致,最终得以完成
经验之谈:使用样例,要先看样例返回的数据格式再去写后台
35.若依提示json_result字段too long原因是若依进行全局控制会对用户返回数据进入插入数据库操作,如果返回数据过长即会报错
解决:更改json_result varchar 2000变更为longtext 2000
36.Caused by: java.lang.NumberFormatException: For input string: “cityData”:
原因:后台缺乏对应controller”/cityData”
解决:补充对应controller即可
37.测试接口nullpointexception 和error.request.ignore
原因:未通过安全证书校验
解决方案:将如下内容注掉
#访问接口客户端证书校验
#server:
# ssl:
# key-store: classpath:fmcorvtest.pfx
# key-store-type: PKCS12
# key-store-password: 4YCTJWdq
38.org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘corActivityServiceImpl’: Unsatisfied dependency expressed through field ‘corActivityMapper’; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘corActivityMapper’ defined in file Data sources cannot be empty.
原因:
解决:
39.com.fasterxml.jackson.core.JsonParseException: Unrecognized token ‘GLGOn93V5JALJepYfxTXrf’: was expecting (‘true’, ‘false’ or ‘null’)
原因:单元测试的方法引用不对,图片上传不允许加密
解决:换一个api得以解决
40使用mysql查出的行字段全为null但并没有被省略
原因:尚未解决
41springboot启动报错不能创建bean
原因:依赖了错误jar包,根据自动配置,出现的异常
解决:删除了错误依赖的jar包
42.nullpoint空指针异常:
原因:1.sql查询出的对象为空2.list的size==0,然后get(i),得到的对象属性值3.json转成对象,getX()是null,但我们以为它有值,进行+1操作就回异常
43.mybatis报没有字段映射,实际我们开启了驼峰和全名映射规则
原因:是有collection和association参与,实体类是基本类型的List,我们制定了字段名,所以如果是基本类型的List或数组一定要出现在select列表里
结局:select 补全空缺的字段
44.mybatis报错,字段没有getter方法
原因:基本类型一定要在mapper制定@Param(“映射名”)不然会报错
解决:mapper方法参数加上@Param(“id”)
45.合并代码后启动出现Result Maps collection already contains value com.wise.UserMapp.xml等
原因:实际发现时多了一个跟mapper文件包同级的包
解决:删除即可
46.sql查询显示有一行数据,但全部为null
原因:使用左连接,优先保证左边,id此时不为null,但查询字段没有id,其他字段都是null,所以查出一行但全部为null的数据
解决:把id加入查询列表或者加where条件 is not null
47.bad request…TLS
原因:开启了应用证书校验,比如使用https访问
解决:在yml注释掉如下内容
server:
ssl:
key-store: classpath:fmcorvtest.pfx
key-store-type: PKCS12
key-store-password: 4YCTJWdq
48.BadSqlException…
原因:在mybatis内的where标签存在注释掉的内容,mybatis不是说注释掉就一定一定不会编译
解决:删除注释内容即可
49.Neither BindingResult nor plain target object for bean name
原因:
解决(链接):https://blog.csdn.net/java_xth/article/details/88424153?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1.control
50.后台查出两个degree,一个取别名rDegree,页面degree,rDegree去接收;后台返回数据正确,前台debug的preview获取response只接收了degree,另一个rDegree没有
原因:可能是rDegree是网络传输关键字
解决:别名取为resumeDegree
51.某字段前端传参正确,但执行sql无法插入
原因:实体类Long类型,后台数据库时varchar
解决:实体类Long–>String
52.若依mapper文件插入顺序导致加密异常,异常报错index越界。MyBatis Cause: java.lang.IndexOutOfBoundsException: Index: 5, Size: 5
53.导出异常Parameter ‘userName’ not found name,mapper文件去掉模糊查询,未指定userName别名并映射
54.更新时返回参数类型
55.页面js加密无效,待解决。若依版本问题,加入权限和对应formatter即可满足
56.no viable alternative at input”mapper没加”#”
57.若依后台提示权限,联系管理员。解决方案:加菜单并赋予用户即可
58。提示403没有访问权限 解决方案:后台 @RequiresPermissions(“fmtown:user:list”)说明用户没有菜单权限,创建并赋予权限即可
59.若依框架报实体类没有找到字段但实际都已经配好了,检查实体类和xml映射配置都没发现问题,最后在页面发现注释了但没有删掉,可能是编译时仍然没有忽视注释的div,删掉后恢复正常
60.若依报500,发现是thyleaf语法name没有和th:field一致导致报错
61.thymeleaf说页面错误,原因是目录是smslog,而页面跳转是smsLog,在windows没问题,但线上linux对大小写敏感报错
62.jdk.nashorn.internal.ir不存在 解决方案:更换jdk
63.can not bean *impl,原因是我全局替换某个文件名时,mapper文件的内容不会也跟着替换,修改内容错误的地方即可
64.发现无法解析【Xx】[Mm]【Ll】这样的内容,发现编译时候mapper.xml文件拒绝访问头文件空出了一行,删除这一行空行即可
65.无法找到实体类。原因是mapper文件内内容没有匹配实体类名
66不支持get请求 code500.
var teamAppraiseId= $("#teamAppraiseId").val(); createUrl: prefix + “/add/”+teamAppraiseId,
/
function add() {
var teamAppraiseId = $("#teamAppraiseId").val();
$.operate.add(teamAppraiseId);
}
/这个方法注释掉即可
67.template解析异常,由于页面目录结构变化,子controller吧prefix加个上级controller的前缀即可
68.Caused by: org.attoparser.ParseException: Exception evaluating SpringEL expression: “#dates.format(teamappraiseScoreMapping.appraiseTime, ‘yyyy-MM-dd’)” (template: “autonomousfund/teamAppraise/teamAppraiseScoreMapping/detail” - line 54, col 52)

 正确: <div class="form-group">    
               <label class="col-sm-3 control-label">项目开始时间:</label>
               <div class="col-sm-8">
                   <div class="input-group date">
                       <input name="startTime" th:field="*{startTime}" class="form-control time-input" placeholder="yyyy-MM-dd" type="text">
                       <span class="input-group-addon"><i class="fa fa-calendar"></i></span>
                   </div>
               </div>
           </div>
                 错误
                   <div class="form-group">    
               <label class="col-sm-3 control-label">评审日期:</label>
               <div class="col-sm-8">
                   <div class="input-group date">
                       <input name="appraiseTime" th:value="${#dates.format(teamAppraise.appraiseTime, 'yyyy-MM-dd')}" class="form-control time-input" placeholder="yyyy-MM-dd" type="text">
                       <span class="input-group-addon"><i class="fa fa-calendar"></i></span>
                   </div>
               </div>
           </div>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一些异常练习题以及实验总结: 1. 编写一个程序,要求实现两个整数相除的功能,如果分母为0,抛出一个自定义的异常。 ```java class MyException extends Exception { public MyException(String message) { super(message); } } public class Divide { public static void divide(int a, int b) throws MyException { if (b == 0) { throw new MyException("除数不能为0!"); } else { System.out.println(a / b); } } public static void main(String[] args) { try { divide(8, 2); divide(8, 0); } catch (MyException e) { System.out.println(e.getMessage()); } } } ``` 2. 编写一个程序,要求实现对一个数组的操作,如果数组下标越界,抛出一个自定义的异常。 ```java class MyException extends Exception { public MyException(String message) { super(message); } } public class ArrayTest { public static void arrayTest(int[] arr, int index) throws MyException { if (index < 0 || index >= arr.length) { throw new MyException("数组下标越界!"); } else { System.out.println(arr[index]); } } public static void main(String[] args) { int[] arr = {1, 2, 3, 4, 5}; try { arrayTest(arr, 2); arrayTest(arr, 5); } catch (MyException e) { System.out.println(e.getMessage()); } } } ``` 实验总结: 在 Java 中,异常是一种处理错误的机制。当程序出现错误时,异常会被抛出,如果没有被处理,程序就会崩溃。因此,我们需要在程序中使用 try-catch 块来捕获异常并进行处理。同时,Java 也提供了一些标准的异常类,比如 NullPointerException、IndexOutOfBoundsException 等等,我们可以使用这些类来处理常见的异常情况。如果需要自定义异常,可以继承 Exception 类或其子类,并重写构造方法。在处理异常时,我们可以使用 getMessage() 方法来获取异常信息,也可以使用 printStackTrace() 方法来输出异常信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值