@requsetbody(required = false)代表这个参数是可选参数,默认是必填参数没有会报错
po里面的模型类是和数据库表对应的
dto叫做数据传输对象,前端传给后端的数据模型
使用beanutils进行对象拷贝
属性名一致就能拷贝
这个是从dto拷贝到 -> courseBaseNew中
但是如果courseBaseNew中有数据,dto中没数据,那么也会被覆盖,所以一些需要自己后来添加的数据最好是放在这个方法的后面
统一异常处理: 异常通常采取往上抛的形式(throw new xxxException("xxx"))
第一步: 定义一个类,写如下代码(图1)
这个是和前端约定的返回的异常信息的模型errMessage
第二步: 定义一个自己这个项目的异常类,继承runtimeException(图2)
这个静态方法是为了方便我们抛出异常
之后的抛出异常代码变为: XueChengPlusException.cast("方法有误")
第三步: 编写我们自己的异常处理器(图3)
图3中的方法是针对我们自己编写的异常类的处理方法
第四步: 如果有必要我们还要写一个针对系统的异常处理(图4) -数据库异常
需要改异常类型,最后统一抛出一段话,不一定要是CommonError