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

photoshop在线工具网站seo推广seo教程

photoshop在线工具,网站seo推广seo教程,discuz做服务网站,网站建设怎么添加背景音乐文章目录一、什么是Spring MVC?1.MVC定义2.MVC与Spring MVC的关系3.创建方式二、Spring MVC的核心功能1.连接功能浏览器获取前端接口和后端程序连接功能实现get和post的区别Spring Boot热部署2.获取参数(1)传递单个参数(2)传递对…

文章目录

  • 一、什么是Spring MVC?
    • 1.MVC定义
    • 2.MVC与Spring MVC的关系
    • 3.创建方式
  • 二、Spring MVC的核心功能
    • 1.连接功能
      • 浏览器获取前端接口和后端程序连接功能实现
      • get和post的区别
      • Spring Boot热部署
    • 2.获取参数
      • (1)传递单个参数
      • (2)传递对象
      • (3)后端重命名:@RequestParam
      • (4)接收JSON对象:@RequestBody
      • (5)获取URL中的参数:@PathVariable
      • (6)上传文件:@RequestPart
      • (7)获取Cookie:@CookieValue
      • (8)获取header:@RequestHeader
      • (9)设置和获取Session:@SessionAttribute
    • 3.输出数据
      • (1)返回静态页面
      • (2)返回text/html
      • (3)返回JSON对象
      • (4)请求转发或请求重定向


一、什么是Spring MVC?

(1)构建在Servlet(API)之上的。
(2)是一个Web框架(HTTP)
(3)来自于Spring webMVC模块。
需要掌握:
(1)连接的功能:将用户(浏览器)和Java程序连接起来。
(2)获取参数的功能:用户访问的时候会带一些参数,在程序中要想办法获取参数。
(3)输出数据的功能:要把程序执行的结果返回给用户。

1.MVC定义

Model(模型)是应用程序中用于处理应用程序逻辑的部分。通常模型对象负责在数据库中取数据。
View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。
Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

2.MVC与Spring MVC的关系

MVC是一种思想,而Spring MVC是对MVC思想的具体实现。

3.创建方式

(1)使用Maven方式创建Spring MVC(已过时)。
(2)使用Spring Boot添加Spring Web模块(Spring MVC)。
[和SpringBoot创建方式一样。]勾选的Spring Web框架其实就是Spring MVC框架。(https://blog.csdn.net/qq_45283185/article/details/129388891?spm=1001.2014.3001.5501)
在这里插入图片描述

二、Spring MVC的核心功能

1.连接功能

浏览器获取前端接口和后端程序连接功能实现

@RequestMapping(“/xxx”)既能修饰类又能修饰方法。
性能:及支持GET方式的请求又支持POST方式的请求。

	方式一:@RequestMapping(value = "/xxx",method = RequestMethod.POST)方式二:@PostMapping("/xxx")@GetMapping("/xxx")

get和post的区别

相同:
get请求和post请求底层都是基于TCP/IP协议实现的,两者都可以实现客户端与服务端的双向交互。
不同:
get和post最本质的区别是“约定和规范”上的区别,在规范中,定义get请求是用来获取资源的,也就是进行查询操作的,而post请求是用来传输实体对象的,因此会使用post来进行添加、修改和删除等操作。按照约定来说,get和post的参数传递也是不同的,get请求时将参数拼加到url上进行参数传递的,而post是将请求参数写入到请求body中传递的。

Spring Boot热部署

idea社区版(2021.2)部署:
(1)添加热部署框架;
在这里插入图片描述
(2)设置settings和new projects setup。
在这里插入图片描述
(3)开启运行中热部署。
settings和new projects setup都需要勾选。
在这里插入图片描述
idea专业版部署:
(1)引入devtools框架;
(2)在运行那块通过启动文件进行配置。
在这里插入图片描述
在这里插入图片描述

2.获取参数

(1)传递单个参数

    //@RequestMapping(value = "/hi",method = RequestMethod.POST)//@PostMapping("/hi")@GetMapping("/hi")public String sayHi(String name) {return "hello,"+name;}

注:在Spring Boot(Spring MVC)中传参一定要传包装类型,而非基础类型。

(2)传递对象

可以通过对象传递多个参数。

    @GetMapping("/user")public String showUser(User user) {return user.toString();}

(3)后端重命名:@RequestParam

required表示该参数可以为空,默认为true。

    @GetMapping("/time")public String showTime(@RequestParam(value = "t",required = false) String startTime,@RequestParam("t2") String endTime) {return "开始时间:"+startTime + " | 结束时间:"+endTime;}

(4)接收JSON对象:@RequestBody

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

(5)获取URL中的参数:@PathVariable

    @RequestMapping("/login/{username}/{password}")public String showURL(@PathVariable("username") String username,@PathVariable("password") String password) {return username+":"+password;}

(6)上传文件:@RequestPart

固定文件保存路径:

    //上传文件@RequestMapping("/upfile")public String upFile(@RequestPart("myfile")MultipartFile file) throws IOException {String path = "D:\\Picture\\img.png";//保存文件file.transferTo(new File(path));return path;}

可变的文件保存名:

    @RequestMapping("/myupfile")public String myUpFile(@RequestPart("myfile")MultipartFile file) {//根目录+唯一文件名+文件后缀String path = "D:\\Picture\\";path += UUID.randomUUID().toString().replace("-","");path += file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));return path;}

使用PostMan构造发送请求。
在这里插入图片描述
在这里插入图片描述

(7)获取Cookie:@CookieValue

方式一:通过之前的servlet获取(获取的是所有Cookie)

//获取Cookie@RequestMapping("/getck")public String getCookie(HttpServletRequest req) {//servlet的方式是得到所有的cookieCookie[] cookies = req.getCookies();for (Cookie cookie : cookies) {log.error(cookie.getName()+":"+cookie.getValue());}return "get cookie";}

方式二:通过@CookieValue可以获取单个参数

    //可以获得单个Cookie@RequestMapping("/getck2")public String getCookie2(@CookieValue("zhangsan") String value) {return "Cookie value:"+value;}

(8)获取header:@RequestHeader

    //获取header@RequestMapping("/getua")public String getUA(@RequestHeader("User-Agent") String userAgent) {return userAgent;}

(9)设置和获取Session:@SessionAttribute

方式一:servlet方式

    //设置和获取session@RequestMapping("/setsess")public String setSession(HttpServletRequest request) {HttpSession session = request.getSession();session.setAttribute("userinfo","userinfo");return "Set Session Success";}@RequestMapping("/getsess")public String getSession(HttpServletRequest request) {HttpSession session = request.getSession(false);if (session!=null && session.getAttribute("userinfo")!=null) {return (String)session.getAttribute("userinfo");} else {return "暂无 session 信息";}}

方式二:@SessionAttribute

@RequestMapping("/getsess2")public String getSession2(@SessionAttribute(value = "userinfo",required = false)String userinfo) {return userinfo;}

3.输出数据

(1)返回静态页面

不需要加@ResponseBody

@Controller
public class SendController {@RequestMapping("/index")public String getIndex() {return "/index.html";}
}

在这里插入图片描述

(2)返回text/html

@ResponseBody
在这里插入图片描述

(3)返回JSON对象

    @RequestMapping("/json")public HashMap<String,String> jsonBean() {HashMap<String,String> map = new HashMap<>();map.put("java","new");map.put("mysql","数据库");map.put("cpp","++");return map;}

通过fiddler抓包:
在这里插入图片描述

(4)请求转发或请求重定向

    //请求重定向@RequestMapping("/index1")public String index1() {return "redirect:/index.html";}//请求转发@RequestMapping("/index2")public String index2() {return "forward:/index.html";}

forward(请求转发),redirect(请求重定向)
区别:
1.请求重定向将请求重新定位到资源;请求转发服务器端转发。
2.请求重定向地址发生变化,请求转发地址不发生变化。
3.请求重定向与直接访问新地址效果一致,不存在原来的外部资源不能访问;请求转发服务器端转发有可能造成原外部资源不能访问。


http://www.mmbaike.com/news/806.html

相关文章:

  • 成都那家网站制作公司好国际最新新闻热点事件
  • 北京网址广州做seo整站优化公司
  • 管理系统有哪些合肥网站seo推广
  • 自己做网站服务器可以吗2023新闻热点摘抄
  • 合肥网站建设多少钱聊城网站开发
  • 知识付费网站源码免费b2b网站推广
  • 九台市做网站的公司汕头网站设计
  • wordpress文库主题aso优化服务平台
  • 公司要我做网站_没有公司的材料是不是不可以做产品如何做市场推广
  • 郑州建设厅网站seo技术服务外包
  • 交通建设网站今日国际新闻事件
  • 广东住房与城乡建设厅网站百度在线客服中心
  • 怎么做韩剧网站的翻译网络优化报告
  • 佛山专业外贸网站建设武汉网站开发公司seo
  • 2021跨境电商最火的产品建站优化
  • 养生网站建设微博推广价格表
  • 七夕表白网站制作模板建站的网站
  • 网站开发合同中的知识产权条款从事网络销售都有哪些平台呢
  • 网站建设网络推广柯营销策划精准营销
  • 网页设计与网站建设指标点网络营销成功案例
  • 北京工商局网站怎么做增资成人再就业培训班
  • 智慧团建登录入口官方网站互联网销售
  • 柳江网站开发宁德市市长
  • 做电影网站需多大的空间成人速成班有哪些专业
  • grace6.1 wordpress个人做seo怎么赚钱
  • 常见的有利于seo的网站系统seo网站的优化方案
  • 无锡网站推广无锡做网站键词优化排名
  • wordpress怎样做单页网站广州做seo整站优化公司
  • 做网站哪个公司山东seo推广
  • 湛江做网站的公司百度广告竞价排名