📄 appexception.java
字号:
package com.comm;
import java.sql.*;
public class AppException extends Exception {
private int id = 0;
private String name = null;
private String desc = null;
public AppException(SQLException e) {
super(e.getMessage());
String errCode = genErrCode(e);
setName(errCode);
setDesc(e.getMessage());
e = null;
}
public AppException(AppException e) {
super(e.getDesc());
this.setId(e.getId());
this.setDesc(e.getDesc());
this.setName(e.getName());
e = null;
}
public AppException(Exception e) {
super(e.getMessage());
this.setDesc(e.getMessage());
}
public AppException(String message) {
super(message);
setDesc(message);
}
public AppException(String name, String message) {
super(message);
setDesc(message);
setName(name);
}
public void setId(int id) {
this.id = id;
}
public int getId() {
return id;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
public String toString() {
StringBuffer sb = new StringBuffer();
sb.append("[ID=");
sb.append(this.getId());
sb.append(",Name=");
sb.append(this.getName());
sb.append(",Desc=");
sb.append(this.getDesc());
sb.append(",Exception =");
sb.append(super.toString());
return sb.toString();
}
/**
* database's error code convert into program's error code. (Oracle or
* SQLserver)
*
* @param er SQLException
* @return int
*/
public String genErrCode(SQLException er) {
String errCode;
if (er.getMessage() == null) {
return "";
}
switch (er.getErrorCode()) {
case 1:
errCode = "数据已经创建";
break;
case 54:
errCode = "记录不能被锁住";
break;
case 1112:
errCode = "记录已经改变";
break;
case 1401: // refered by other record
errCode = "插入的数值过大";
break;
case 1438: //larger than precision
errCode = "插入记录失败";
break;
case 2291: //foreign key does not exist
errCode = "外键不存在";
break;
case 2292: // refered by other record
errCode = "引用记录不能删除";
break;
default:
errCode = "位置错误";
break;
}
return errCode;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -