异常处理

异常处理

以前是和代码打交道,现在到处见到的是异常,学习的过程中收集一些异常:
1、el表达式出错
    ![el表达式出错](https://img-blog.csdn.net/20150713095321610)
    问题所在(目前我所知道的):
    1)、指定类下没有这个属性,包括变量,方法
    2)、属性拼写错误
    3)、方法命名大小写问题。
    public double getSubtotal(){
        BigDecimal d1 = new BigDecimal(book.getPrice()+"");
        BigDecimal d2 = BigDecimal.valueOf(count);
        return d1.multiply(d2).doubleValue();
    }
<td>${cartItem.subtotal }元</td>

2、空指针

java.lang.NullPointerException
    cart.servlet.CartServlet.add(CartServlet.java:42)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    java.lang.reflect.Method.invoke(Unknown Source)
    cn.itcast.servlet.BaseServlet.service(BaseServlet.java:45)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
出错原因,某个值为null,根据指定的值,去重新改正。

3、程序出错
4、路径错误
最容易忽视的一个路径错误情况是servlet类名修改后,没有在WebServlet中修改配置。导致反复访问都出现路径错误。
修改完servlet类名后,一定要在@WebServlet(“/servlet”)中修改回来。负责,虽然修改了servlet类名,可是要访问servlet时,访问的还是原先配置的那个路径。

 @WebServlet("/OrderServlet")

5.hibernate中出现的错误
1)java封装类与数据库中的字段不符(找不到数据库中的字段)
异常信息:
org.hibernate.exception.SQLGrammarException: could not extract ResultSet
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column ‘user0_.uname’ in ‘field list’
解决方法如标题
2)没有映射hbm.xml文件
异常信息:
org.hibernate.MappingException: Unknown entity: entity.User
解决方法如标题
3)创建表失败
这里写图片描述

解决方法:查看映射文件中属性名与实体类中的属性名是否一致,如果都相同,查看主键生成方式与实体类中的类型是否一致。本例错误原因是,实体类中id类型为String,自动生成id值为number型,导致建表失败。
(待完善)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值