Java开发中遇到的一些异常信息及解决办法

工作中经常遇到一些java异常,这里记录一下自己遇到过的一些异常。

1.使用hibernate的时候遇到的一种异常:

unexpected token

原因:hql的语法不对。(本人使用的时候调用错了封装到BaseDao的底层方法)

解决办法:检查自己hql语句的语法。

2.OutOfMemoryError中的一种异常:

 

 PermGen space

原因:JVM中永久区域内存不足

解决办法:自己设置堆的内存或者重启服务器

                    

  windows修改catalina.bat/linux修改catalina.sh文件中第一行,Xms:堆内存初始空间,Xmx:堆内存最大空间

 

StackOverflowError

异常原因:栈的深度超过虚拟机分配给线程的栈的大小。

解决办法:这种情况一般是由于代码的逻辑中出现了死循环,debug找到这个死循环就好了。

3.Mybatis中排序传值的问题

There is no getter for property named 'param' in 'class java.lang.String'

 原因:Mybatis默认采用ONGL解析参数,所以会自动采用对象树的形式取 string.xxx 值,如果没在在方法中定义,则会抛异常报错。

解决办法:映射文件中改为${},因为使用#{}会把拿到的参数值转为字符串,例如:ORDER BY ${param}

在dao层中传入的形参前加上@Param(value="param")

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值