碰到Cause: java.lang.ArrayIndexOutOfBoundsException: 1; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException 这个问题
原来是数据库中存在dbtrade,但是customInfo不存在,直接update导致的.
//A.存在付款时间,则表示已经统计过
if(dbtrade!=null && dbtrade.getPay_time()!=null){
//更新用户基本信息
fillCustomBaseInfo(trade,dbcustomInfo);
topApplicationDao.update("top.trade.updateCustom", dbcustomInfo);
return dbcustomInfo;
}
<update id="updateCustom">
update custom_info set
name=#name#,
state=#state#,
city=#city#
where xxx_nick=#xxx_nick# and nick=#nick#
</update>
这段代码的问题.
因为dbcustomInfo 为null 转化的时候报错导致
代码修改成问题解决
if(dbtrade!=null && dbtrade.getPay_time()!=null){
if(dbcustomInfo==null){
dbcustomInfo = createCustomByTrade(trade, dbcustomInfo, comUid, sid, comCacheTools);
return dbcustomInfo;
}
//更新用户基本信息
fillCustomBaseInfo(trade,dbcustomInfo);
topApplicationDao.update("top.trade.updateCustom", dbcustomInfo);
return dbcustomInfo;
}
=====================详细错误=====================
[ERROR] 2013-06-21 21:30:19.161 com.hupun.crmbatch.service.trade.TOPTradeImporter 更新用户信息统计失败!
org.springframework.jdbc.UncategorizedSQLException: SqlMapClient operation; uncategorized SQLException for SQL []; SQL state [null]; error code [0];
--- The error occurred while applying a parameter map.
--- Check the top.trade.updateCustom-InlineParameterMap.
--- Check the parameter mapping for the 'name' property.
--- Cause: java.lang.ArrayIndexOutOfBoundsException: 1; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException:
--- The error occurred while applying a parameter map.
--- Check the top.trade.updateCustom-InlineParameterMap.
--- Check the parameter mapping for the 'name' property.
--- Cause: java.lang.ArrayIndexOutOfBoundsException: 1
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:83)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
at org.springframework.orm.ibatis.SqlMapClientTemplate.execute(SqlMapClientTemplate.java:203)
at org.springframework.orm.ibatis.SqlMapClientTemplate.update(SqlMapClientTemplate.java:378)
at com.hupun.crmbatch.dao.AbstractIbatisDaoSupport.update(AbstractIbatisDaoSupport.java:120)
at com.hupun.crmbatch.service.trade.TOPTradeImporter.updateCustomSummary(TOPTradeImporter.java:330)
at com.hupun.crmbatch.service.trade.TOPTradeImporter.store(TOPTradeImporter.java:133)
at com.hupun.crm.test.top.trade.TopTradeDownloadTest.testNotExistCustom(TopTradeDownloadTest.java:209)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at com.taobao.itest.core.statements.RunBeforeTestMethod.evaluate(RunBeforeTestMethod.java:54)
at com.taobao.itest.core.statements.RunAfterTestMethod.evaluate(RunAfterTestMethod.java:60)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
相关推荐
3. **异常处理**:`Exception`和它的子类如`NullPointerException`、`ArrayIndexOutOfBoundsException`等是Java异常处理的关键部分。理解如何捕获、处理和抛出异常对于编写健壮的代码至关重要。 4. **数值类**:`...
这个“AXMLPrinter2修改版”是原版的一个增强版本,解决了在处理某些XML文件时可能出现的`java.lang.ArrayIndexOutOfBoundsException`错误。这个错误通常是因为尝试访问数组的索引超出了其实际长度,表明在解析XML...
`ArrayIndexOutOfBoundsException`是Java中常见的异常类型,表明尝试访问数组的一个不存在的索引。当试图访问的数组下标超过数组长度或者小于零时,就会抛出此异常。对于AXMLPrinter2.jar而言,这个错误可能出现在...
`java.lang.ExceptionInInitializerError` 是Java编程语言中一个特殊的运行时异常,它通常表示在类的静态初始化过程中发生了异常。这个错误不是因为类的构造函数,而是由于静态变量初始化或者静态初始化块(也称为...
- **异常路径**:`java.lang.Object -> java.lang.Throwable -> java.lang.Exception -> java.lang.RuntimeException -> java.lang.IndexOutOfBoundsException -> java.lang.ArrayIndexOutOfBoundsException` ...
(本人的博客愧对语文老师->又臭又长哈哈...java.lang.ArrayIndexOutOfBoundsException: 0 纳尼??? 好吧我把问题用一段简单的代码展示出来(只为复现问题) 我直接取System.out.println(strings[0]);代码片 原创文章
GIF图 java.lang.ArrayIndexOutOfBoundsException . 网上有一个是jdk1.7适用的。这个是改成1.6之后的。
此外,由于AXMLPrinter是基于Java的,确保你的系统已安装Java运行环境才能正常使用。 总之,AXMLPrinter是一款强大的工具,它使得查看APK中的AndroidManifest.xml变得简单,对于理解和分析Android应用具有重要价值...
这个异常属于`java.lang.IndexOutOfBoundsException`类的子类,是Java运行时系统在检测到错误的数组索引时抛出的。 ### 数组的基本概念 数组在内存中占据连续的空间,每个元素通过索引来访问,索引通常是从0开始的...
1. java.lang.NullPointerException java.lang.NullPointerException 是一种常见的错误,发生在程序中调用了未经初始化的对象或不存在的对象时。例如,在创建图片或调用数组时,如果图片未经初始化或数组元素未经...
Caused by: java.lang.ArrayIndexOutOfBoundsException: 7 at org.apache.orc.OrcFile$WriterVersion.from(OrcFile.java:145) at org.apache.orc.impl.OrcTail.getWriterVersion(OrcTail.java:74) at org.apache....
异常的分类主要基于`Exception`类,常见的子类有`IOException`、`NullPointerException`、`ArithmeticException`、`ArrayIndexOutOfBoundsException`等。例如,`IOException`用于处理输入输出相关的异常,`...
3. **`java.lang.ArrayIndexOutOfBoundsException`** - 数组索引越界异常,当数组索引超出数组边界时发生。 4. **`java.lang.NumberFormatException`** - 在将字符串转换为数值时格式不符合要求时抛出此异常。 5. **...
Java 异常种类总结 Java 异常种类总结是指在 Java 编程语言中,各种可能发生的异常类型的总结。这些异常可能会在编程过程中出现,并且可能会...java.lang.ArithmeticException 是一种算术条件异常,例如整数除零等。
1. **java.lang.NullPointerException**: 这是最常见的异常,当试图调用一个null对象的方法或访问其字段时发生。确保在使用对象之前正确地初始化它们,避免对未定义的对象引用进行操作。 2. **java.lang....
- 类层次结构:java.lang.Object -> java.lang.Throwable -> java.lang.Exception -> java.lang.RuntimeException -> java.lang.NullPointerException - 描述:当尝试使用一个未初始化的对象引用时抛出此异常。这...
3. **java.lang.ArithmeticException**: 发生在执行非法数学运算时,例如除以零。在进行数学计算时,应检查可能的除零条件或其他可能导致错误的条件。 4. **java.lang.ArrayIndexOutOfBoundsException**: 这个...
4. **java.lang.ArrayIndexOutOfBoundsException**: 当尝试访问数组的一个不存在的索引时,会抛出此异常。确保数组下标始终在0到数组长度减1的范围内。 5. **java.lang.IllegalArgumentException**: 方法接收到...
4. **java.lang.ArrayIndexOutOfBoundsException**: 这个异常在试图访问数组中不存在的索引时发生。检查所有数组访问操作,确保索引值在0到`(array.length - 1)`的范围内。 5. **java.lang....