按模块划分，增加异常处理