java中遇到的 bug_一个项目中遇到bug

访问页面时候出现:

HTTP Status 500 servlet.init() for servlet

DispatcherServlet threw exception

….

解决方案:

检测tomcat启动是否OK?

假如启动OK,则清浏览器缓存,假如启动失败要检测哪里代码

出现了问题(例如数据库连接被拒绝了,假如出现

ClassNotFoundException)

org.apache.ibatis.binding.BindingException:

Invalid bound statement (not found):

cn.tedu.ttms.product.dao.ProjectDao.findObjects

at org.apache.ibatis.binding.MapperMethod$SqlCommand.(MapperMethod.java:189)

at org.apache.ibatis.binding.MapperMethod.(MapperMethod.java:43)

at org.apache.ibatis.binding.MapperProxy.cachedMapperMethod(MapperProxy.java:58)

at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:51)

解决方案:

检查DAO对象与MAPPER文件的关联,绑定是否一致?

1)mapper中的命名空间应与dao接口的类全名一致.

2)mapper中定义的元素id与dao接口中的方法一致.

访问页面时出现404错误?

1)首先检测tomcat启动是否ok

2)其次检测访问路径对应的资源是否存在

java.lang.NullPointerException

at cn.tedu.ttms.product.controller.

ProjectController.doGetObjects(ProjectController.java:27)

解决方案:

1)首先将目标定位的ProjectController.java:的27行

2)其次定位点”.”左边的对象值是否注入了

3)假如此值已注入进入方法内部继续检测.

org.apache.ibatis.binding.BindingException:

Parameter ‘startIndex’ not found. Available parameters are [0, 1, param1, param2]

at org.apache.ibatis.binding.MapperMethod$ParamMap.get(MapperMethod.java:165)

解决方案:

检测dao的方法中对应参数有没有使用@Param修饰.

DAO中什么情况下使用@Param注解定义参数?

当方法中参数个数大于1时(等于1时也可以使用此注解进行

参数定义).

java.lang.IllegalArgumentException:

Result Maps collection does not contain value for

cn.tedu.ttms.product.entity.Project

解决方案:

检测mapper文件中对应的select语句的returnType是否写成了

resultMap.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值