包装異常>>テスト
2295 ワード
包装異常の一例である.
1.BeanUtils自体は例外を投げ出す必要があるため、すべての例外はException
2.この例では、パッチを更新する必要があるが、ここではアシスタントクラス(Dateタイプが空の場合は異常が発生し、使用に注意)を使用し、パッチを更新後にこのパッチを返し、更新の成功または失敗を通知する.
次はこの異常包装類です
RuntimeExceptionを継承し、構造方法を書き換えた
テストクラス
public Activity updateActivity(Map Mapactivity) {
Long id = Long.valueOf(Mapactivity.get("id").toString());
Activity act = (Activity)this.getHibernateTemplate().get(Activity.class,id);
try {
BeanUtils.populate(act,Mapactivity);
this.getHibernateTemplate().update(act);
}catch(Exception e){
throw new DolphinOperationException(e,CodeCategories.UPDATE_FAILURE); //CodeCategories.UPDATE_FAILURE 200 400
}
return act;
}
1.BeanUtils自体は例外を投げ出す必要があるため、すべての例外はException
2.この例では、パッチを更新する必要があるが、ここではアシスタントクラス(Dateタイプが空の場合は異常が発生し、使用に注意)を使用し、パッチを更新後にこのパッチを返し、更新の成功または失敗を通知する.
次はこの異常包装類です
public class DolphinOperationException extends RuntimeException {
private Integer errorCode; //
public DolphinOperationException(Integer errorCode) {
this.errorCode = errorCode;
}
public DolphinOperationException(Throwable cause, Integer errorCode) {
super(cause);
this.errorCode = errorCode;
}
public DolphinOperationException(Integer errorCode,String message) {
super(message);
}
public DolphinOperationException(String message, Throwable cause, Integer errorCode) {
super(message, cause);
this.errorCode = errorCode;
}
public Integer getErrorCode() {
return errorCode;
}
}
RuntimeExceptionを継承し、構造方法を書き換えた
テストクラス
@Test
@Rollback(false)
public void updateActivity(){
Address ads = new Address();
ads.setAddress("22222");
User user = new User();
user.setId(15l);
Activity act = new Activity();
act.setId(2l);
act.setAddress(ads);
act.setStartTime(new Date());
act.setTitle(" 1");
Activity activity=am.updateActivity(act);
assertNotNull(activity);
}