Springmvc学习之接受表单复合数据

Springmvc学习之接受表单复合数据

`@Controller("formController")
    public class FormController {
@PostMapping("/apply")
@ResponseBody
public String apply(@RequestParam(value="n",defaultValue = "ANAN")String name,String course,Integer[] purpose) {
    System.out.println(name);
    System.out.println(course);

    for (Integer p:purpose) {
        System.out.println(p);
    }

    return "success";
}

}

`

这里解释一下几个标签的作用:

  • @controller:将当前类标为controller层。
    controller层负责具体的业务模块流程的控制,在此层要调用service层的接口来控制业务流程,控制的配置也同样是在Spring的配置文件里进行,针对具体的业务流程,会有不同的控制器。我们具体的设计过程可以将流程进行抽象归纳,设计出可以重复利用的子单元流程模块。这样不仅使程序结构变得清晰,也大大减少了代码量。
  • @PostMapping:
    Spring MVC新特性
    提供了对Restful风格的支持
    GetMapping,处理get请求
    @PostMapping,处理post请求
    @PutMapping,处理put请求
    @DeleteMapping,处理delete请求
    ("/apply")里边的内容是路径名字,前端控制器通过解析浏览器传来的URL地址,对应到响应的Mapping下的函数进行执行。
  • @ResponseBody :
    注解表示该方法的返回的结果直接写入 HTTP 响应正文(ResponseBody)中,一般在异步获取数据时使用,通常是在使用 @RequestMapping 后,返回值通常解析为跳转路径,加上 @Responsebody 后返回结果不会被解析为跳转路径,而是直接写入HTTP 响应正文中。
  • @RequestParam(value="n",defaultValue = "ANAN")
    注解表示的是,value中表示的是寻找“n”这个标签,然后如果没有n的话,就执行这个默认值“ANAN”。此外这个标签还有一个非常重要的作用就是要使用List集合的时候,一定要在集合前面添加@RequestParam这个标签

使用Map接受数据

在接受表单中的数据时,可以使用Map集合一下把表单中的数据接收到,但是这里有一个非常容易犯错的地方就是,在接受表单中的复合数据时候,会出现数据丢失的现象,因为一个key只能有一个value。复合数据的时候,只能接受到复合数据中的一个。

全部评论

相关推荐

有担当的灰太狼又在摸鱼:零帧起手查看图片
点赞 评论 收藏
分享
流浪的神仙:无恶意,算法一般好像都得9硕才能干算法太卷啦
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务