BaseController

主要负责页面额跳转,不负责逻辑所以最主要的是进行异常处理
这样就可以使用Spring 注解进行异常处理,@ExceptionHandler(其中的一个限制就是进行异常处理的方法必须与出错的方法在一个类中)

@ExceptionHandler
public ModelAndView exception(HttpServletRequest request, Exception e) {
e.printStackTrace();
// 根据不同的异常类型进行不同处理
if (e instanceof ControllerException)
return new ModelAndView(“error”).addObject(“message”, “C->” + e.getMessage());
else
return new ModelAndView(“error”).addObject(“message”, “N->” + e.getMessage());
}`

这个才是正常的写法只处理RuntimeException

###BaseDao
主要功能是基础增删改查,实现方法是泛型(使用泛型的目的是为了抽取公共代码,减少变成代码量,所以多出现在父类中)。

引申到什么是泛型方法 :public <T> void write(T t, T[] ta);紧跟在范围修饰符后面的<>之内存放一个或者多个类型参数的名字public T testGenericMethodDefine(T t, S s){ 这样在定义之后的所哟位置都能使用类型参数,像普通类型一样

public interface BaseDao<T>{

public void insert(T entity);

public void insertInBatch(List entityList);

public int delete(T query);

public int deleteById(String id);

public void deleteByIdInBatch(List idList);

public int updateById(T entity);