蓝桉。368 2022-06-13 12:39 采纳率: 100%
浏览 117
已结题

java新增对象报索引越界IndexOutOfBoundsException

在新增对象时为什么会报IndexOutOfBoundsException 对象是有值的 求助各位大神 拜托了
SysDept dept2 = deptService.selectDeptById(dept.getDeptId());
    String changedFields = BeanUtil.getChangedFields(dept,dept2);
    System.out.println(changedFields);
    SysDeptLs deptls = new SysDeptLs();
    if (changedFields!="") {
        deptls.setDeptId(dept.getDeptId());
        deptls.setContent(changedFields);
        deptls.setDeptName(dept.getDeptName());
        deptls.setUpdateBy(getUsername());
        System.out.println(deptls);
        deptLsService.insertSysDeptLs(deptls);     

xml

insert into sys_dept_ls (dept_id, dept_name, update_by, update_time, content)
values (#{deptId}, #{deptName}, #{updateBy}, #{updateTime}, #{content})

//得到的对象
com.domain.entity.SysDeptLs@6b1d3377[
deptId=1522116341153136640
deptName=部门11
updateBy=admin
updateTime=Mon Jun 13 12:30:16 CST 2022
content=部门名称:【更改前:部门11, 更改后:部门】
]

org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException:

Error updating database. Cause: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0

Cause: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0

BeanUtil.getChangedFields(dept,dept2); 是比对更新前后字段数据变化 可以得到对象,其他的service。xml都是脚本生成的 ,我换了sql 也同样报这个错
为啥会报这个错
  • 写回答

1条回答 默认 最新

  • 皮蛋不吃粥 2022-06-13 13:15
    关注

    xml贴出来

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月21日
  • 已采纳回答 6月13日
  • 修改了问题 6月13日
  • 修改了问题 6月13日
  • 展开全部

悬赏问题

  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本