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

河北网站建设就业考试担路网络科技有限公司的证书

河北网站建设就业考试,担路网络科技有限公司的证书,网站设计收费模式,驰够网官方网站函数式web 前言场景给容器中放一个Bean&#xff1a;类型是 RouterFunction<ServerResponse>每个业务准备一个自己的handler使用集合的时候加注解请求的效果 前言 springmvc5.2 以后允许我们使用函数式的方式&#xff0c;定义web的请求处理流程 函数式接口 web请求处理的…

函数式web

  • 前言
  • 场景
  • 给容器中放一个Bean:类型是 RouterFunction<ServerResponse>
  • 每个业务准备一个自己的handler
  • 使用集合的时候加注解
  • 请求的效果

前言

springmvc5.2 以后允许我们使用函数式的方式,定义web的请求处理流程
函数式接口
web请求处理的方式:
1、@controller + @RequestMapping: 耦合性(路由、业务耦合)
2、函数式web:分离式(路由、业务分离)
官方文档
在这里插入图片描述

场景

场景:user Restful-crud
GET/user/1 获取1号用户
GET/users 获取所有用户
POST/user 请求体携带json
put/user/1 请求体携带json,修改1号用户
delete/user/1 删除1号用户

给容器中放一个Bean:类型是 RouterFunction

在这里插入图片描述

package com.atguigu.boot304demo.config;import com.atguigu.boot304demo.biz.UserBizHandler;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.MediaType;
import org.springframework.web.servlet.function.RequestPredicates;
import org.springframework.web.servlet.function.RouterFunction;
import org.springframework.web.servlet.function.RouterFunctions;
import org.springframework.web.servlet.function.ServerResponse;/*** @author jitwxs* @date 2023年10月22日 21:33*/
@Configuration
public class WebFunctionConfig {/*函数式web:1、给容器中放一个Bean:类型是 RouterFunction<ServerResponse>2、每个业务准备一个自己的handler核心四大对象:1、RouterFunction:定义路由信息,发什么请求,谁来处理2、RequestPredicate: 定义请求:请求谓语,请求方式(GET\POSt)、请求参数3、ServerTequest: 封装请求完整数据4、ServerResponse: 封装响应完整数据*/@Beanpublic RouterFunction<ServerResponse> userRouter(UserBizHandler userBizHandler){return RouterFunctions.route().GET("/user/{id}", RequestPredicates.accept(MediaType.ALL),userBizHandler::getUser).GET("/users", userBizHandler::getUsers).POST("/user",RequestPredicates.accept(MediaType.APPLICATION_JSON), userBizHandler::postUser).PUT("/user/{id}",RequestPredicates.accept(MediaType.APPLICATION_JSON),userBizHandler::putUser).DELETE("/user/{id}",userBizHandler::deleteUser).build();}
}

每个业务准备一个自己的handler

在这里插入图片描述

package com.atguigu.boot304demo.biz;import com.atguigu.boot304demo.bean.Person;
import jakarta.servlet.ServletException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.web.servlet.function.ServerRequest;
import org.springframework.web.servlet.function.ServerResponse;import java.io.IOException;
import java.util.Arrays;
import java.util.List;/*** @author jitwxs* @date 2023年10月22日 21:51*/
@Slf4j
@Service
public class UserBizHandler {/*查询指定id的用户@param request@return*/public ServerResponse getUser(ServerRequest request){
//        业务处理String id = request.pathVariable("id");log.info("正在查询id为{}的数据",id);Person person = new Person(2l,"张三","aaa.com",18);return ServerResponse.ok().body(person);}public ServerResponse getUsers(ServerRequest request){
//        业务处理List<Person> list = Arrays.asList(new Person(1l,"张三","aaa.com",18),new Person(2l,"张三","aaa.com",18));return ServerResponse.ok().body(list);}public ServerResponse postUser(ServerRequest request) throws ServletException, IOException {Person body = request.body(Person.class);log.info("保存的信息是{}",body);String ace = "post请求成功";
//        业务处理return ServerResponse.ok().body(ace);}public ServerResponse putUser(ServerRequest request){String ace = "put请求成功";
//        业务处理return ServerResponse.ok().body(ace);}public ServerResponse deleteUser(ServerRequest request){String ace = "删除成功";
//        业务处理return ServerResponse.ok().body(ace);}
}

使用集合的时候加注解

在这里插入图片描述

请求的效果

在这里插入图片描述
在这里插入图片描述

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

相关文章:

  • 公司网站设计图片网站备案要营业执照原件吗
  • 如何做h5商城网站wordpress最近浏览器
  • 微网站 举例静态网站可以申请域名吗
  • 龙华区网站建设动漫设计属于什么大类
  • 网站建设背景朝阳登封seo推广
  • 有哪些外国网站国内可以登录的做网站编辑前景
  • 动态效果的网站建设为了选择合适的网络设计方案
  • 网站开发和设计实训做网站1008做网站 - 百度
  • 网站软文推广网站网页设计师通常是设计两套ui吗
  • 网站建设和维护采购协议书网站开发哪些专业
  • 重庆蒲公英网站建设公司WordPress文章内容彩色
  • 单一本地门户网站源码网站租金可以做办公费吗
  • 网站开发业内人士做视频营销哪个网站好
  • 住建部网站统计城乡建设统计信息系统登录看网站搜索什么关键词
  • 学生做网站的软件平面设计师务所
  • 项目网站建设行业公司网站
  • 网站做扫一扫平台的运营推广怎么做
  • 零成本游戏网站开发网页美工设计工作内容
  • 网站后台功能模块前端和后端哪个好学
  • 模板网站优域名解析到网站需要怎么做
  • 绍兴企业做网站网站建设公司市场
  • 北京集团网站建设想学习做网站
  • 58同城如何发布网站建设长春网站优化策略
  • 免费文案素材网站建设手机网站的公司
  • 做网站年入千万刷粉网站推广
  • 鹏牛网做网站怎么样嘉定网站开发
  • 网站不显示内容吗外贸网站推
  • 做电商网站需要会些什么公司网站属于什么类型
  • 网站内页收录突然没了列表形式网站
  • 西宁好的网站建设公司谷歌网站建设代理