追忆~似水年华
2020-06-16 15:18
采纳率: 48%
浏览 180
已采纳

JavaWeb的jsp界面怎么显示Raise_application_error里的错误信息,在Servlet中怎么获取错误代码和内容?

例如:触发器中当不满足某条件时执行Raise_application_error(-20000, '超量');
并在jsp界面中给出错误提示:超量
具体的怎么实现

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • syyyyyyyyyyyyyyh 2020-06-16 21:25
    已采纳

    自定义异常和Result工具类,如果不满足条件就抛异常,接受到异常就给Result工具类变量赋值,然后传递到jsp页面

    /**
     * 
     * @ClassName: CMSException
     * @Description: 自定义异常
     * @author: dell
     * @date: 
     */
    public class CMSException extends RuntimeException {
    
        /**
         * @fieldName: serialVersionUID
         * @fieldType: long
         * @Description: TODO
         */
        private static final long serialVersionUID = 1L;
    
        private String message;
    
        public CMSException() {
            super();
    
        }
    
        public CMSException(String message) {
            super();
            this.message = message;
        }
    
        public String getMessage() {
            return message;
        }
    
        public void setMessage(String message) {
            this.message = message;
        }
    
    /**
     * 
     * @ClassName: Result 
     * @Description: 返回统一的结果值
     * @author: charles
     * @date: 
     * @param <T>
     */
    public class CMSResult<T> {
       //返回结果的状态
        private Integer code;
        private String  msg;
        private T data;
        public Integer getCode() {
            return code;
        }
        public void setCode(Integer code) {
            this.code = code;
        }
        public String getMsg() {
            return msg;
        }
        public void setMsg(String msg) {
            this.msg = msg;
        }
        public T getData() {
            return data;
        }
        public void setData(T data) {
            this.data = data;
    
        }
    
            try {
    
                //登录成功 存入session 普通用户
                session.setAttribute("user", u);
                result.setCode(200);
                result.setMsg("恭喜登录成功");
            } catch (CMSException e) {
                result.setCode(300);
                result.setMsg(e.getMessage());
            }catch (Exception e) {
                e.printStackTrace();
                result.setCode(500);
                result.setMsg("系统崩溃,请联系管理员");
            }
    
    
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题