bug记录

 此段代码导出excel功能在swagger里调试可以下载正常打开excel,从前台页面调用接口时确无法打开文件报错信息如下,打开之后也是一堆乱码

 一开始以为时用流传输,转化的流出现了问题,可是swagg能打开说明流没有问题,于是猜测是和前台进行交互的过程中出现问题,仔细排查后发现前端传参用的是Post而后端用的是Get,统一Get传参后问题解决

———————————————————————————————————————————

在编写过程中经常遇到的报错:

NullPointerException: null     空指针

ERROR o.a.c.c.C.[.[localhost].[/].[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.NullPointerException] with root cause
java.lang.NullPointerException: null

总结了一下这个报错我遇到的原因有以下几点:

1、字符串变量未初始化

2、接口类型的对象没有用具体的类初始化

3、当一个对象的值为空时,没有判空

Unparseable date: "XXXX"

 ERROR o.a.c.c.C.[.[localhost].[/].[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.text.ParseException: Unparseable date: "202004"] with root cause
java.text.ParseException: Unparseable date: "202004"

原因:数据库存储的字段数据类型与传过来的数据类型不一样

Parameter 'XXXX' not found. Available parameters are [XXX, param1]

ERROR o.a.c.c.C.[.[localhost].[/].[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'job_id' not found. Available parameters are [userinformation, param1]] with root cause
org.apache.ibatis.binding.BindingException: Parameter 'job_id' not found. Available parameters are [userinformation, param1]

参数传递错误,出现的原因:接口方法没用@Param注解

For input string: "XXX"

ERROR o.a.c.c.C.[.[localhost].[/].[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.NumberFormatException: For input string: "string"] with root cause
java.lang.NumberFormatException: For input string: "string"

参数类型转换时报错:把不符合数字格式的字符串转换为数字时抛出的格式化异常;

Expected one result (or null) to be returned by selectOne(), but found: XX

ERROR o.a.c.c.C.[.[localhost].[/].[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 12] with root cause
org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 12

实际的返回数据条数超出设定的返回条数

Invalid bound statement (not found)

ERROR o.a.c.c.C.[.[localhost].[/].[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.httech.hrms.mapper.cdp.PromotionInfoMapper.getAllInformationWithErr] with root cause
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.httech.hrms.mapper.cdp.PromotionInfoMapper.getAllInformationWithErr

原因:xml里面的namespace不对 或者id和mapper里面的方法名不一样,或者parameterType对应不上

---------------------------------------------------------------------------------------------------------------------------

2021/12/8

pom文件不能随便改

要善用工具类(列表判空要用

CollectionUtil.isEmpty(list)

不能用list.size==0

如果list==null 则会报错

多个字段list拼接为一个字段list

list1.forEach(i ->{
    list2.add(i.getZ013_015_SAP_MATNR());
    list2.add(i.getZ019_SAP_MATNR());
    list2.add(i.getDC_SAP_MATNR());
});

一个service层只能调用一个数据源,如果要操作其他数据源要调用其他service层

配置主数据源后service层要用@DS注解切换数据源

-----------------------------------------------------------------------------------------------------------

遍历list时不能对原List进行操作修改,无论是删除和添加,因为如果在遍历中一直向集合中新增加元素,会造成死循环的,还有就是如果在遍历过程中删除元素,会造成数组下表越界等问题。

要先创建一个临时集合然后再通过遍历将需要移除的元放到临时集合中,最后再整体从原始集合中删除。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
bug 记录是一种软件开发中常用的方法,用来记录程序中出现的错误或者异常情况。它是软件测试的重要环节,有助于开发人员更好地追踪和解决bug,同时也方便团队间的沟通和协作。 在Word末班的情况下,bug记录可以被用来记录Word应用程序中出现的各种错误和问题。这些问题可能是功能缺陷、用户界面问题、性能问题等。通过记录这些bug,可以帮助开发人员准确定位问题,并提供修复的指导和参考。 一个有效的bug记录通常包括以下几个主要方面: 1. 问题描述:详细描述bug的具体表现和出现的环境条件,以便开发人员能够复现该问题。 2. 问题重现步骤:提供重现该bug的详细步骤,让开发人员可以按照这些步骤来定位和修复问题。 3. 优先级和严重程度:对bug进行分类,分别给出优先级和严重程度,以帮助开发人员优先解决重要且影响较大的问题。 4. 日志和截图:提供相关的日志记录和截图,以便开发人员更好地理解问题和进行调试。 5. 解决方案或修复建议:如果可以,尽量提供对该bug的解决方案或修复建议,这样可以帮助开发人员更快地解决问题。 此外,一个好的bug记录系统对于跟踪和管理bug也非常重要。团队成员可以通过该系统中的与bug相关的字段,例如状态、指派人等,了解bug的当前状态和处理进度。这样团队内部可以更加高效地分工合作,从而提高整体的开发效率。 综上所述,bug记录在软件开发中是十分重要的一环,它对于发现、修复和追踪问题起到了关键的作用。在Word末班中,通过良好的bug记录和有效的协作,可以帮助开发团队更好地完善和提升Word应用的质量和用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值