5-8 表现层 - 保存电影信息
请求方式:POST
请求地址:http://localhost:8401/films/film:add
{ "filmStatus": "1", "filmName": "我不是药神", "filmEnName": "Dying To Survive", "mainImgAddress": "films/238e2dc36beae55a71cabfc14069fe78236351.jpg", "filmScore": "9.7", "filmScorers": "231432491", "preSaleNum": "309600", "boxOffice": "231432491", "filmTypeId": "1", "filmSourceId": "1", "filmCatIds": "#1#2#3#", "areaId": "1", "dateId": "13", "filmTime": "2018-07-05", "directorId": "1", "actIds": "1#2#3", "roleNames": "擎天柱#大黄蜂#机长", "filmLength": "132", "biography": "一位不速之客的意外到访,打破了神油店老板程勇(徐峥 饰)的平凡人生,他从一...", "filmImgs": "films/3065271341357040f5f5dd988550951e586199.jpg,films/6b2b3fd6260ac37e5ad44d00ea474ea3651419.jpg,films/4633dd44c51ff15fc7e939679d7cdb67561602.jpg" }
参数一大堆
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233313019-14132158.png)
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233313019-14132158.png)
controller里面添加服务。
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233313537-1592705758.png)
创建一个VO对象
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233314152-1068054366.png)
继承BaseRequestVO
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233314641-1250530683.png)
把这些属性复制过来一个个的加上
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233315110-641704674.png)
都是string类型。
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233315665-1437179895.png)
角色名字和主演要一对一的匹配的。
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233316100-323607035.png)
可以在重写的方法内对字段进行验证,这里就不再一一讲了。
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233316585-1944258787.png)
controller方法内加上vo参数。
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233317047-2087104010.png)
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233313537-1592705758.png)
创建一个VO对象
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233314152-1068054366.png)
继承BaseRequestVO
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233314641-1250530683.png)
把这些属性复制过来一个个的加上
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233315110-641704674.png)
都是string类型。
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233315665-1437179895.png)
角色名字和主演要一对一的匹配的。
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233316100-323607035.png)
可以在重写的方法内对字段进行验证,这里就不再一一讲了。
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233316585-1944258787.png)
controller方法内加上vo参数。
![](https://img2020.cnblogs.com/blog/87548/202004/87548-20200415233317047-2087104010.png)
接口定义
实现类
Controller内。要么成功 要么抛出异常了。基本不会出现第三种情况了。
到这里表现层的定义基本就完事了。
结束