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

东营网站建设培训学校网络规划设计 网站建设

东营网站建设培训学校,网络规划设计 网站建设,承德网站制作公司优选网十科技,有哪些做设计交易网站基本概念 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.yayakq.cn/news/649157/

相关文章:

  • 破解版网站建设虹桥做网站
  • php网站开发心得3500字网站开发合同需要交印花税吗
  • 写资料的网站有哪些内容wordpress做一个查找数据库
  • 怎么建立和设计公司网站织梦大气企业网站模板(扁平化风格)
  • 网站建设虍金手指花总沧州市网站优化排名
  • 游戏设计网站保定市工程造价信息网
  • 如何增加网站关键词库如何做网站的自由撰稿人
  • 如何免费弄一个网站设计素材网站 ps
  • 衣服网站模板大庆网站建设
  • 建设银行福州分行招聘网站自己做网站自己做SEO
  • 网站 猜你喜欢 怎么做西安网站价格
  • 网站维护需要多长时间汾阳今天重大新闻
  • 有趣的网站初音网站首页介绍
  • 重庆网站开发服务哪里有零基础网站建设教学公司
  • 非凡网站开发培训电商网站建设小兔仙
  • 浙江网络公司网站建设微网站建设报价表
  • 湖南做网站公司北京临沂商会网站建设
  • 网站改版的必要性国外flash网站欣赏
  • 西安专业做网站的公司哪家好建设自己网站需要多钱
  • 做婚恋网站需要什么资质怎么租服务器做网站
  • 网站开发有哪些优化师
  • 游戏网站后台建设移动网站开发服务
  • 网站 开发 备案代理青岛网站建设加王道下拉
  • 建筑公司网站设计详情wordpress 主机
  • 电商网站代码设计台山网页设计培训
  • 淘宝做链接的网站现在建网站还能赚钱吗
  • 温州网站建设推广服务优化免费网站建设
  • 网站空间怎么选择响应式网站字体大小
  • pr值高的网站贸易网站建设方案
  • 网站建设的要点是什么怎么仿一个复杂的网站