当前位置: 首页 > news >正文

网站建设夜猫seo门户 site

网站建设夜猫,seo门户 site,网站 建设 外包,深圳网站设计深圳设计公司基本概念 SpringMVC是基于servlet api构造的原始web框架,全称是Spring Web MVC 而MVC的全称是Model View Controller,翻译成中文分别是“模型”,“视图”,“控制器”,这是一种软件的架构模式 Model:用来…

基本概念

SpringMVC是基于servlet api构造的原始web框架,全称是Spring Web MVC

而MVC的全称是Model View Controller,翻译成中文分别是“模型”,“视图”,“控制器”,这是一种软件的架构模式

  • Model:用来处理应用程序的数据逻辑部分,在数据库中存取数据
  • View:应用程序中处理数据的显示
  • Controller:处理用户的交互部分,从view获取数据,向model发送数据

也就是说,当用户向Controller发送HTTP请求时,Controller会调用相关的方法,将数据传输给Model。,然后Model根据数据库中的数据返回给Controller数据,Controller调用相关的方法,将数据传输给View,View将数据组织成好看的页面,返回给用户

而SpringMVC,就是基于上面这种设计模式的一种实现方式,用户在浏览器中输入url,程序就可以获取用户的需求

程序建立

在之前的博客中,我们创建的SpringBoot项目,事实上就包含SpringMVC,之前引入的Spring Web框架就是SpringMVC

具体创建过程请参考之前的博客:SpringBoot的配置与使用

创建程序与连接浏览器

创建一个TestController类,实现连接浏览器

@Controller
@ResponseBody
@RequestMapping("/test")
public class TestController {@RequestMapping("/hi")public String sayHi(String name){return "hi " + name;}
}

其中这几个注解分别有如下的含义:

  • @Controller:使Spring程序启动时,,加载这个类
  • @ResponseBody:返回的是数据而不是页面
  • @RequestMapping(url路径):注册url,可以修饰类和方法

其中,我们可以使用@RestController来代替@ResponseBody和@Controller

这样,就可以在下面这个网址下获取页面

http://127.0.0.1:8080/test/hi

在这里插入图片描述
在url中传输name的值,即可在页面上显示出来
在这里插入图片描述
使用PostMan可以发现,@RequestMapping既支持GET请求,也支持POST请求
在这里插入图片描述
在这里插入图片描述
可以给@RequestMapping中添加参数,使其只接收特定的访问方法

@RequestMapping(value = "url路由",method = 访问方法)

例如:

@RestController
@RequestMapping("/test")
public class TestController {@RequestMapping(value = "/hi" , method = RequestMethod.POST)public String sayHi(String name){return "hi " + name;}
}

这时使用GET方法访问就会报错
在这里插入图片描述

还可以直接使用下面这两个注解,直接指定访问方法

@GetMapping(url路由)
@PostMapping(url路由)

获取参数

刚才的name演示了如何用方法中的参数来传参,需要注意的是,一般数据类型需要使用包装类进行传参,这样的话如果该参数前端没有传递的话显示null
例如:

@GetMapping("/num")
public String getNum(Integer num){return "num = " + num;
}

在这里插入图片描述

如果不使用包装类,那么会造成页面直接报错

@GetMapping("/num")
public String getNum(int num){return "num = " + num;
}

在这里插入图片描述

获取对象

刚才的name演示了如何用方法中的参数来传参,传递对象也是类似的方法

先创建一个User类

@Data
public class User {private int id;private String name;private int age;
}

然后在方法的参数中直接传递该对象

@RequestMapping("/show-user")
public String getUser(User user){return user.toString();
}

就可以传递对象中的所有参数了
在这里插入图片描述
当需要传输的参数过多,就可以使用传输对象的方式,避免代码的臃肿

参数重命名

如果前端传输的key值我们觉得不符合代码的规范,或者不好听,那么可以使用@RequestParam进行参数重命名

@RequestParam(前端命名) 后端重命名 

例如,前端将开始时间命名为t1,结束时间命名为t2,我们后端可以这样重命名

@RequestMapping("/show-time")
public String showTime(@RequestParam(value = "t1") String startTime,@RequestParam("t2") String endTime){return "开始时间: " + startTime + " | 结束时间:" + endTime;
}

在这里插入图片描述
当使用了@RequestParam注解后,这个参数就是必须传输的了,如果不传输就会报错
此时可以给@RequestParam中添加参数来避免这种情况

@RequestParam(required = false) 参数

获取JSON对象

使用@RequestBody可以接收JSON格式的对象

例如:

@RequestMapping("/show-json-user")
public String showJSONUser(@RequestBody User user){return user.toString();
}

在这里插入图片描述

http://www.yidumall.com/news/65122.html

相关文章:

  • 智能响应式网站关键词排名优化官网
  • 织梦素材网站模板免费下载爱站网ip反域名查询
  • 招标网站都有哪些百度关键词优化首选667seo
  • 全球建筑设计公司前十名seo搜索引擎优化视频
  • 学习日语的好网站怎么做推广网络
  • 装饰工程造价苏州企业网站关键词优化
  • 电商设计网站网站建设产品介绍
  • 做网站前端多少钱最新经济新闻
  • 上海今天新闻头条新闻网站优化
  • 云空间深圳百度seo代理
  • 陕西网站建设热线线上销售怎么做
  • 付网站开发费计入什么科目东莞网站建设工作
  • 域名查询阿里云西安网站seo技术
  • 做网站商城需要什么条件微博营销的特点
  • 电子产品网站开发背景域名注册入口
  • 青岛黄岛区网站开发关键词语有哪些
  • 多个域名指向同一个网站 备案阿里云域名
  • 网站上的客服找合作项目app平台
  • 周至做网站的公司网上卖货的平台有哪些
  • 用java怎么做游戏下载网站seo的主要内容
  • 河北网站建设价格网络营销案例分享
  • 做徽章标牌的企业网站如何自己弄个免费网站
  • 企业微信手机片网站制作外贸网站建设推广公司
  • 响应式网页模板下载系统优化软件
  • 白银网站建设成都网络营销公司排名
  • 昆山广告设计公司windows优化大师是什么软件
  • 长沙做网站建设公司关键词歌词简谱
  • 长沙专业网站建设微信公众号推广网站
  • 现在海外做的比较好一点的网站有哪些云巅seo
  • 做网站建设月收入多少爱站网seo综合查询