经分析书写三个异常类来处理程序中的异常问题。
ApplicationException用于处理应用程序中的异常,
package com.jinxiu.tour.exceptions;
/**
* @author dengjinxiu
*
*/
@SuppressWarnings("serial")
public class ApplicationException extends Exception {
Throwable exceptionCause=null;
/**
* @param message
*/
public ApplicationException(String message) {
super(message);
}
/**
* @param message
* @param ex
*/
public ApplicationException(String message, Throwable ex) {
super(message, ex);
exceptionCause=ex;
}
/**重写printStackTraceMethod*/
public void printStackTrace(){
if(exceptionCause!=null){
System.err.println("应用程序异常!原因:"+exceptionCause.toString());
exceptionCause.printStackTrace();
}
}
DataAccessException 用于处理数据存储时出现的异常:
package com.jinxiu.tour.exceptions;
/**
* @author dengjinxiu
*
*/
@SuppressWarnings("serial")
public class DataAccessException extends ApplicationException {
Throwable exceptionCause=null;
/**
* @param message
*/
public DataAccessException(String message) {
super(message);
}
/**
* @param message
* @param ex
*/
public DataAccessException(String message, Throwable ex) {
super(message, ex);
exceptionCause=ex;
}
/**重写printStackTraceMethod*/
public void printStackTrace(){
if(exceptionCause!=null){
System.err.println("发现异常!原因:"+exceptionCause.toString());
exceptionCause.printStackTrace();
}
}
}
NoRecException 用于处理查询是否有记录的异常:
package com.jinxiu.tour.exceptions;
/**
* @author dengjinxiu
*
*/
@SuppressWarnings("serial")
public class NoRecException extends DataAccessException {
Throwable exceptionCause=null;
/**
* @param message
*/
public NoRecException(String message) {
super(message);
// TODO Auto-generated constructor stub
}
/**
* @param message
* @param ex
*/
public NoRecException(String message, Throwable ex) {
super(message, ex);
exceptionCause=ex;
}
/**重写printStackTraceMethod*/
public void printStackTrace(){
if(exceptionCause!=null){
System.err.println("记录异常!原因:"+exceptionCause.toString());
exceptionCause.printStackTrace();
}
}
}
ApplicationException用于处理应用程序中的异常,
package com.jinxiu.tour.exceptions;
/**
* @author dengjinxiu
*
*/
@SuppressWarnings("serial")
public class ApplicationException extends Exception {
Throwable exceptionCause=null;
/**
* @param message
*/
public ApplicationException(String message) {
super(message);
}
/**
* @param message
* @param ex
*/
public ApplicationException(String message, Throwable ex) {
super(message, ex);
exceptionCause=ex;
}
/**重写printStackTraceMethod*/
public void printStackTrace(){
if(exceptionCause!=null){
System.err.println("应用程序异常!原因:"+exceptionCause.toString());
exceptionCause.printStackTrace();
}
}
DataAccessException 用于处理数据存储时出现的异常:
package com.jinxiu.tour.exceptions;
/**
* @author dengjinxiu
*
*/
@SuppressWarnings("serial")
public class DataAccessException extends ApplicationException {
Throwable exceptionCause=null;
/**
* @param message
*/
public DataAccessException(String message) {
super(message);
}
/**
* @param message
* @param ex
*/
public DataAccessException(String message, Throwable ex) {
super(message, ex);
exceptionCause=ex;
}
/**重写printStackTraceMethod*/
public void printStackTrace(){
if(exceptionCause!=null){
System.err.println("发现异常!原因:"+exceptionCause.toString());
exceptionCause.printStackTrace();
}
}
}
NoRecException 用于处理查询是否有记录的异常:
package com.jinxiu.tour.exceptions;
/**
* @author dengjinxiu
*
*/
@SuppressWarnings("serial")
public class NoRecException extends DataAccessException {
Throwable exceptionCause=null;
/**
* @param message
*/
public NoRecException(String message) {
super(message);
// TODO Auto-generated constructor stub
}
/**
* @param message
* @param ex
*/
public NoRecException(String message, Throwable ex) {
super(message, ex);
exceptionCause=ex;
}
/**重写printStackTraceMethod*/
public void printStackTrace(){
if(exceptionCause!=null){
System.err.println("记录异常!原因:"+exceptionCause.toString());
exceptionCause.printStackTrace();
}
}
}