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

网站建设多少钱 小江网页设计免费学平面设计的网站

网站建设多少钱 小江网页设计,免费学平面设计的网站,仿一个网站要多少钱,做网站后期维护工资贴吧目录 1.获取参数 1.1获取单个参数 1.2获取多个参数 传参注意事项: 2.获取对象 3.后端参数重命名RequestParam 4.获取JSON对象RequestBody 5.从 URL 地址中获取参数 PathVariable 6.上传文件 RequestPart 7.获取Cookie/Session/Header 7.1 获取 Request 和…

目录

1.获取参数

1.1获取单个参数

1.2获取多个参数

传参注意事项:

2.获取对象

 3.后端参数重命名@RequestParam

4.获取JSON对象@RequestBody

5.从 URL 地址中获取参数 @PathVariable

6.上传文件 @RequestPart

7.获取Cookie/Session/Header

7.1 获取 Request 和 Response 对象

7.2 获取Cookie

(1)Servlet 获取 Cookie 的方法

 (2)使用 @CookieValue 注解实现 Cookie 的读取

7.3 获取Header(请求头)中信息

(1)Servlet 获取 Header 的方法

 (2)使用 @RequestHeader 注解实现 Header 的获取

7.4 存储和获取 Session

(1)Session 存储和 Servlet 类似,是使⽤ HttpServletRequest 中获取的

(2)获取 Session 方法1(Servlet 模式)

(3)获取 Seesion 方法2:@SessionAttribute


1.获取参数

1.1获取单个参数

在 Spring MVC 中可以直接用方法中的参数来实现传参:

   @GetMapping("/hi") //等于@RequestMapping("/hi")//都能实现映射的功能public String sayHi(String name) {return "Hi:" + name;}

1.2获取多个参数

  @GetMapping("/hi") //等于@RequestMapping("/hi")//都能实现映射的功能public String sayHi(String name,Integer v) {return "Hi:" + name + "  v:" + v;}

传参注意事项:

在 Spring Boot(Spring MVC) 中传参一定要传包装类型,而非基础类型,否则传一个空的值就会出错, 并且这里的参数一定要和前端传递的参数名保持一致,否则就获取不到参数的值了

2.获取对象

并且Spring MVC可以自动实现参数对象的赋值,比如User对象;

@Data
public class User {private int id;private String name;private int age;//....
}
//普通对象@GetMapping("/show-User")public String showUser(User user){return user.toString();}

 

 3.后端参数重命名@RequestParam

有些特殊情况下,前端传递的参数 key 和我们后端接收的 key 可以不一致,比如前端传递了一个 time 给后端,而后端又是用 createtime 字段来接收的,这样就会出现参数接收不到的情况,如果出现这种情况,我们就可以使用 @RequestParam 来重命名前后端的参数值

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

 注意:

我们观察@RequestParam源码可以看到:

 这里代表如果使用@RequestParam的话,前端一定要传递参数,否则就会报错,但是如果我们在代码中加入

就可以不用带参数了

4.获取JSON对象@RequestBody

服务器端实现 JSON 数据的接收需要使用 @RequestBody 注解:

    //接收json对象(和第三方系统通讯时常见的场景)@PostMapping("/show-jsonUser")//@RequestBody指定的就是接受一个json对象,需要配合PostMapping来使用public String showJsonUser(@RequestBody User user){return user.toString();}

5.从 URL 地址中获取参数 @PathVariable

6.上传文件 @RequestPart

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

文件上传我们使用这样的方法的话就存在一个问题:我们传输文件的地址是固定的,当李四传输了文件,张三再传输的时候,李四传输的文件就被覆盖了

7.获取Cookie/Session/Header

7.1 获取 Request 和 Response 对象

@GetMapping("/getparam")//HttpServletRequest req 是spring boot/spring MVC 内置的,不用去传,当其项目启动的时候就直接注入了,不用传,本身就有//HttpServletRespond 同样也内置了public String getParam(HttpServletRequest req){return req.getParameter("username");}

7.2 获取Cookie

(1)Servlet 获取 Cookie 的方法

 @RequestMapping("/getck")public String getCookie(HttpServletRequest request){Cookie[] cookies = request.getCookies();for (Cookie item:cookies){log.error(item.getName() + ":" + item.getValue());}return "get Cookie!";}

 (2)使用 @CookieValue 注解实现 Cookie 的读取

 @RequestMapping("/getck2")public String getCookie2(@CookieValue("awen") String val){return "Cookie value" + val;}

这里我是手动在浏览器中加入Cookie信息的

7.3 获取Header(请求头)中信息

(1)Servlet 获取 Header 的方法

 @RequestMapping("/getUa")public String gerUa(@RequestHeader("user-agent") String userAgent){return userAgent;}

 (2)使用 @RequestHeader 注解实现 Header 的获取

    @RequestMapping("getua2")public String getHead(@RequestHeader("User-Agent")String userAgent) {return "header: " + userAgent;}

7.4 存储和获取 Session

获取session:

和servlet时代存session是一样的,没有注解

存session信息:

(1)Session 存储和 Servlet 类似,是使⽤ HttpServletRequest 中获取的

  @RequestMapping("/setsess")//存sessionpublic String setSession(HttpServletRequest request){HttpSession session = request.getSession(true);session.setAttribute("userinfo","userinfo");return "Set Session Succeed";}

(2)获取 Session 方法1(Servlet 模式)

  @RequestMapping("/getsess")public String getSession(HttpServletRequest request){HttpSession session = request.getSession(false);//一定要加falseif (session !=null && session.getAttribute("userinfo") != null){return (String) session.getAttribute("userinfo");}else {return "暂无 Session 信息";}}

(3)获取 Seesion 方法2:@SessionAttribute

  @RequestMapping("getsess2")//false 表示没有这个session也行public String getSession2(@SessionAttribute(value = "userinfo",required = false)String userinfo){return userinfo;}

我们观测到@SessionAttribute的源码中:

意味着必须要有属性,通常情况下需要添加 required = false ,如果不添加,那么当 session 中不存在此属性的时候程序运行就会报错

http://www.yayakq.cn/news/806208/

相关文章:

  • 东莞seo优化培训做搜狗网站优化首页
  • 上海网站建设公司 红威常州微信网站制作
  • wordpress 文章id更改怎样优化网络速度
  • 个人怎么注册网站海南行指网站开发公司
  • 哪个网站可以做简历wordpress禁用头像
  • 门户网站开发投标文件.doc企业信息管理系统平台官网
  • 怎样做网站制作团队酒店用品网站建设
  • 国内互动网站建设北京黄页电话查询
  • 网站建设必须提供良好的用户体验各种网站
  • wordpress 主题采集肇庆百度快照优化
  • 网站建设心得总结烟台专业网站建设公司哪家好
  • 珠宝网站dedecms模版wordpress列表页怎么加关键词
  • 参与做网站的收获电商法
  • 网站里的地图定位怎么做的住房城市建设网站
  • 专业建设研讨会大型网站seo
  • 《高性能网站建设指南深圳大浪有做网站的吗
  • 学校建设门户网站的好处太原关键词网站排名
  • 长景园林这个网站谁做的邮件营销
  • 湖南网站营销seo方案网络营销方式变化的逻辑
  • 推荐几个设计网站设计培训网页
  • 为啥做网站餐厅网页设计模板html代码
  • 网站建设颜色搭配动漫网站开发 百度一下
  • 网站制作好吗为知笔记 编辑wordpress
  • 公司集团网站设计泰州做网站淘宝
  • 做技能培训和那个网站合作好设计网络网站
  • 茶庄网站模板wordpress部署阿里云
  • 申请免费网站空间百度搜索排行seo
  • 镇海建设交通局网站成免费crm软件
  • 网站运营专员是干嘛的网站域名怎么快速备案
  • 网站开发中使用框架吗什么是网络营销名词解释