部分错误代码如下:
java.sql.SQLException: 列名无效
at com.sun.rowset.CachedRowSetImpl.getColIdxByName(CachedRowSetImpl.java:1637)
at com.sun.rowset.CachedRowSetImpl.getInt(CachedRowSetImpl.java:2557)
at address.AddressDao.mapper(AddressDao.java:51)
at address.AddressDao.findAddressInformation(AddressDao.java:41)
at address.TestAddressDao.testFindAddressInformation(TestAddressDao.java:70)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
分析下原因:
结果集相关方法中的参数必须能在数据库表的字段中找到,比如把图中的“add_id”改成id,就会导致出现列名无效。