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

长春城乡建设部网站首页电影网站设计说明书

长春城乡建设部网站首页,电影网站设计说明书,晋州专业网站建设,旅游网站建设现状0. 什么是SpringMVC 要知道什么是SpringMVC,我们首先得知道什么 MVC,MVC是软件工程中的一种架构模式,分为 Model、View、Control。它把软件系统分为模型、视图和控制器三个基本部分。 Model:模型,应用程序负责数据逻…

0. 什么是SpringMVC

要知道什么是SpringMVC,我们首先得知道什么 MVC,MVC是软件工程中的一种架构模式,分为 Model、View、Control。它把软件系统分为模型、视图和控制器三个基本部分。
在这里插入图片描述

  • Model:模型,应用程序负责数据逻辑部分,在数据库中存取数据。
  • View:视图,应用程序中处理数据显示部分,是根据模型数据创建的。
  • Control:控制器,应用程序处理用户交互的部分,负责从视图读取数据,控制用户输入向模型发送数据。

MVC执行流程:
1. 用户请求先发给 Control
2. Control 将请求转发给 Model
3. Model 处理业务将数据返回给 Control
4. Control 将数据给 View 引擎
5. View 转换数据生成最终页面给用户

SpringMVC 是一个框架,是基于 Servlet API 构建的。

SpringMVC 和 MVC 的关系,MVC是一种思想,就像IOC一样;SpringMVC是具体的一种实现了MVC的模式(就像DI一样),并继承了Servlet API 的Web框架。

1. SprinMVC学什么?

要想快速上手 SpringMVC,只需要掌握三个功能:

  • 连接功能:将用户(浏览器)和 Java程序连接起来,让我们可以在浏览器输入一个网址就能调用我们的程序
  • 获取参数功能:当用户访问的时候,会携带一些参数,我们需要在程序中获取这些参数
  • 输出数据的功能:我们需要将用户需要的结果反馈给用户

1.1 实现连接功能

实现连接功能,我们最常用的请求方式就是 Get 请求和 Post 请求

1.11 @RequestMapping

@RequestMapping 是 Spring Web 程序中最常用到的注解之一,用户注册接口的路由映射。路由映射:当用户访问一个 url 时,将用户的请求对应到应用程序中的某个类的某个方法的过程。

  • 可以修饰类也可以修饰方法
    在这里插入图片描述
    当你成功启动项目是,如果需要访问的 getUserById这个方法的时候,在浏览器中输入 localhost:8080/user/getuserbyid。这里的端口号是默认的8080。

@RequestMapping是同时支持 GET 和 POST请求。

1.12 @GetMapping

只适用于 GET 请求
在这里插入图片描述

1.13 @PostMapping

只适用于POST请求
在这里插入图片描述

1.2 获取参数功能

1.21 获取单个参数

正确示例:
在这里插入图片描述


错误示例:
在这里插入图片描述
出现上述错误的时候,我们可以通过一个注解,就能解决 url 中参数的 key 和 方法中 形参名不一致导致的问题。 @RequestParam(“xxxx”)这个注解
在这里插入图片描述

注意点:使用了@RequestParam注解的参数必须设置值
在这里插入图片描述


1.22 获取多个参数

当获取多个参数的时候,顺序并不重要。
在这里插入图片描述

1.23 获取一个对象

在这里插入图片描述

1.24 获取一个 Json 对象(此时需要的注解是@RequestBody)

我们可以通过 Postman来传入一个 Json 格式的数据,在方法上的参数中,加上@RequestBody注解,表示我们获取的参数是 json 格式的数据。
在这里插入图片描述

1.25 获取URL中参数

可以使用注解@PathVariable,获取url地址中的参数
在这里插入图片描述
这里有个提示,如果你设置参数,就必须在前端传入,否则就会发生错误
在这里插入图片描述

1.26 上传文件(@RequestPart)

使用的@RequestPart注解,可以上传文件,可以参考以下代码

    @RequestMapping("/upload")public String upLoad(@RequestPart MultipartFile file) throws IOException {// 1.生成一个唯一的id | UUID = 全球唯一ID -> MAC + 随机种子 + 加密算法String name = UUID.randomUUID().toString().replace("-", "");// 2.得到源文件的后缀名name += (file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")));String path = "D:\\image\\" + name;// 保存文件file.transferTo(new File(path));return path;}

通过 Postman 测试,可以成功上传
在这里插入图片描述

1.27 获取Cookie(@CookieValue)

    @RequestMapping("getcookie")public String getCookie(@CookieValue(value = "java",required = false) String cookie){return cookie;}

在这里插入图片描述

1.28 获取Session(@SessionAttribute)

先设置一个Session

    private static String _SESSION_KEY = "SESSION_KEY";@RequestMapping("/set_sess")public String setSess(HttpServletRequest request) {HttpSession session = request.getSession();if (session != null) {session.setAttribute(_SESSION_KEY, "张三");return "session set success";} else {return "session set fail";}}

然后获取Session

    @RequestMapping("/get_sess")public String getSess(@SessionAttribute(required = false, value = "SESSION_KEY") String name) {return name;}

在这里插入图片描述

1.3 返回数据功能

1.31 非静态页面数据(text/html)

在上述中,我们返回的都是数据,可以看到我们加了一个 @ResponseBody,这个注解作用就是表示返回的是非静态页面的数据。
在这里插入图片描述

1.32 非静态页面数据(json)

在这里插入图片描述

1.32 静态页面数据


当需要返回的是静态页面的时候,就不需要加 @ResponseBody这个注解
在这里插入图片描述

2. foward vs redirect 区别

在返回数据的时候,不仅可以返回一个视图,还可以实现跳转,跳转的方式有两种:

  • forward : 请求转发
  • redirect:请求重定向

两者有什么区别呢?

    1. 请求转发是由服务器转发的;请求重定向是将请求重新定位到资源
    1. 请求转发地址不发生变化;请求重定向地址发生变化
    1. 请求转发由服务器转发,可能会造成原外部资源访问不到;请求重定向和访问新地址一样,不会出现这种情况
http://www.yayakq.cn/news/458458/

相关文章:

  • 彩票资讯网站建设对比插件 wordpress
  • 网站建设及安全管理深圳公司排名榜
  • 山东建设监理协会官方网站wordpress 空间需求php哪个版本
  • 云电脑注册网站首页中园建设银行网站
  • 门户网站建设经验总结深圳做微信网站制作
  • 宝安网站建设最新发布的最新
  • 网站首页素材wordpress教程网59iwp
  • 网页制作网站素材有了服务器怎么做网站
  • 做网站怎么开后台安阳吧
  • 网站建设的现状和趋势怎么样用ps做网站
  • 杭州网站优化搜索中国铁建商城电子商务平台
  • 天宁网站建设制作有没有做任务的网站
  • 建社个人网站酒店网站程序
  • 电子图书网站开发的目的网站侧边栏导航
  • 如何禁止通过ip访问网站烟台网站营销
  • 邯郸网站建设哪儿好做百度手机网站优化
  • 襄阳微信网站建设郑州妇科医院前十强排名
  • 重庆网站界面设计兰州网站建设专家
  • 怒江州建设局网站企业备案网站高质量网站内容建设标准
  • 怎样进行网站推广本地企业网站建设服务
  • html5网站框架泰康人寿网站如何做计划领取
  • 合肥网站建设之4个细节要注意怎么给喜欢的人做网站
  • 网站推广策划思路的内容网络营销外包价格
  • 网站开发硬件需求模板规格尺寸
  • 大麦网网站建设的功能定位网易考拉的网站建设
  • 网站引导页模板58同城推广代运营
  • 企业只有建立自己的网站河北省网站建设公司
  • 网站建设流程规划移动端网站优化
  • 嘉兴网站建设的前景wordpress 下载
  • 上海金山网站建设公司网络舆情应对及处置方案