iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >SpringMVC框架REST架构体系原理分析
  • 265
分享到

SpringMVC框架REST架构体系原理分析

2024-04-02 19:04:59 265人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

目录资源(Resource)表现层(Representation)状态转换(State Transfer)如何使用1.在Handler写出增删改查的方法2.Repository资源(

资源(Resource)

资源是网络上的⼀个实体,或者说网络中存在的⼀个具体信息,⼀段⽂本、⼀张图片、⼀⾸歌曲、⼀段视频等等,总之就是⼀个具体的存在。可以用⼀个 URI(统⼀资源定位符)指向它,每个资源都有对应的⼀个 特定的 URI,要获取该资源时,只需要访问对应的 URI 即可。

表现层(Representation)

资源具体呈现出来的形式,⽐如⽂本可以⽤ txt 格式表示,也可以⽤ html、XML、JSON等格式来表 示。

状态转换(State Transfer)

客户端如果希望操作服务器中的某个资源,就需要通过某种⽅式让服务端发⽣状态转换,而这种转换是 建⽴在表现层之上的,所有叫做"表现层状态转换"

Rest的优点:URL 更加简洁。 有利于不同系统之间的资源共享,只需要遵守⼀定的规范,不需要进行其他配置即可实现资源共享

如何使用

如何使⽤ REST 具体操作就是 Http 协议中四个表示操作⽅式的动词分别对应 CRUD 基本操作。 GET ⽤来表示获取资源。 POST ⽤来表示新建资源。 PUT ⽤来表示修改资源。 DELETE ⽤来表示删除资源。

1.在Handler写出增删改查的方法


package Mycontroller;
import entity.Student;
import entity.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.WEB.bind.annotation.*;
import repository.StudentRepository;
import javax.servlet.http.httpservletResponse;
import java.util.Collection;
@RequestMapping("/rest")
@RestController
public class RestHandler {
    @Autowired
    private StudentRepository studentRepository;
    @RequestMapping(value = "/findAll",method = RequestMethod.GET)
//    @GetMapping("/findAll")
    public Collection<Student> findAll(HttpServletResponse response){
        response.setContentType("text/json;charset=UTF-8");
        return studentRepository.findAll();
    }
    @GetMapping("/findById/{id}")
    public Student findById(@PathVariable("id") long id)
    {
        return studentRepository.findById(id);
    }
    @PostMapping("/sava")
    public void save(@RequestBody Student student){
        studentRepository.saveOrUpdate(student);
    }
    @PutMapping("/update")
    public void update(@RequestBody Student student){
        studentRepository.saveOrUpdate(student);
    }
    @DeleteMapping("/deleteById/{id}")
    public void deleteById(@PathVariable("id") long id){
        studentRepository.deleteById(id);
    }
}

2.Repository


@Repository
public class StudentRepositoryImpl implements StudentRepository {
    private static Map<Long, Student> studentMap;
    static {
        studentMap=new HashMap<>();
        studentMap.put(1L,new Student (1L,"zhangsan",22));
    }
    @Override
    public Collection<Student> findAll() {
        return studentMap.values();
    }
    @Override
    public Student findById(long id) {
        return studentMap.get(id);
    }
    @Override
    public void saveOrUpdate(Student student) {
        studentMap.put(student.getId(),student);
    }
    @Override
    public void deleteById(long id) {
        studentMap.remove(id);
    }
}

以上就是springMVC框架REST架构简要分析的详细内容,更多关于Springmvc框架REST架构的资料请关注编程网其它相关文章!

--结束END--

本文标题: SpringMVC框架REST架构体系原理分析

本文链接: https://www.lsjlt.com/news/135802.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • SpringMVC框架REST架构体系原理分析
    目录资源(Resource)表现层(Representation)状态转换(State Transfer)如何使用1.在Handler写出增删改查的方法2.Repository资源(...
    99+
    2024-04-02
  • SpringMVC框架的示例分析
    小编给大家分享一下SpringMVC框架的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!简介SpringMVC采用模型(Model)-视图(View)-控...
    99+
    2023-06-02
  • MySQL体系架构的示例分析
    这篇文章给大家分享的是有关MySQL体系架构的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。MySQL 体系架构MySQL 体系架构主要分为两部分:客户端和服务端客户端客...
    99+
    2024-04-02
  • java中TESTful架构原理分析
    目录1. 什么是REST2. 理解RESTful2. 1 资源与URI2. 2 统一资源接口GETPOSTPUTDELETE2. 3 资源的表述在URI里边带上版本号使用URI后缀来...
    99+
    2024-04-02
  • Apache Mesos总体架构分析
    这篇文章主要介绍“Apache Mesos总体架构分析”,在日常操作中,相信很多人在Apache Mesos总体架构分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Apac...
    99+
    2024-04-02
  • SSM框架流程及原理分析
    前言:学ssm框架已经有很长时间,今天来复习一下 SSM图示流程: Spring核心:Java反射 Mybatis:动态代理,而动态代理又是基于反射的,所以,ssm框架核心原理在反...
    99+
    2024-04-02
  • 解析Tomcat架构原理到架构设计
    目录一、学习目的1.1、掌握 Tomcat 架构设计与原理提高内功1.2、宏观理解一个请求如何与 Spring 联系起来1.3、提升自己的系统设计能力二、整体架构设计2.1、连接器2...
    99+
    2024-04-02
  • tcc分布式事务框架体系解析
    目录前言碎语以电商下单为例订单服务:库存服务:支付服务:hmily事务框架怎么做的?实现HmilyTransactionInterceptor接口dubbo的aspect抽象实现du...
    99+
    2024-04-02
  • MySQL逻辑体系架构的示例分析
    这篇文章主要为大家展示了“MySQL逻辑体系架构的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“MySQL逻辑体系架构的示例分析”这篇文章吧。Mysql...
    99+
    2024-04-02
  • python爬虫Scrapy框架:媒体管道原理学习分析
    目录一、媒体管道1.1、媒体管道的特性媒体管道实现了以下特性:图像管道具有一些额外的图像处理功能:1.2、媒体管道的设置二、ImagesPipeline类简介三、小案例:使用图片管道...
    99+
    2024-04-02
  • Silverlight 4架构原理的示例分析
    这篇文章将为大家详细讲解有关Silverlight 4架构原理的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。微软发布了Silverlight 4,这项技术为我们带来了许多革新。它不仅是为用户带来...
    99+
    2023-06-17
  • hive架构及知识体系的示例分析
    这篇文章主要介绍了hive架构及知识体系的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Hive架构与基本组成Hive的体系结构可以分为以下几部分:  &n...
    99+
    2023-06-02
  • Hadoop源码分析五hdfs架构原理剖析
    目录1、 hdfs架构如果在hadoop配置时写的配置文件不同,启动的服务也有所区别namenode的下方是三台datanode。namenode左右两边的是两个zkfc。namen...
    99+
    2024-04-02
  • MapReduce2框架的原理解析
    目录1 MapReduce2产生的原因1.1 在hadoop1.X的时代,MapReduce做了很多的事情,其核心是JobTracker。1.2 初探MapReduce1架构1.3M...
    99+
    2023-05-17
    MapReduce2框架原理 MapReduce2框架
  • 深入解析kafka架构原理
     kafka 架构原理 大数据时代来临,如果你还不知道Kafka那就真的out了!据统计,有三分之一的世界财富500强企业正在使用Kafka,包括所有TOP10旅游公司,7家TOP1...
    99+
    2024-04-02
  • MySQL高可用架构之MHA的原理分析
    这篇文章主要介绍了MySQL高可用架构之MHA的原理分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。MHA角色部署MHA 服务有两种角色,...
    99+
    2024-04-02
  • Hive架构设计及原理的示例分析
    这篇文章给大家分享的是有关Hive架构设计及原理的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Hive架构设计及原理1.什么是Hive:Hive是构建在Hadoop之上的数据仓库平台,可以结构化的数据文...
    99+
    2023-06-03
  • SSM框架整合之Spring+SpringMVC+MyBatis的示例分析
    这篇文章主要介绍了SSM框架整合之Spring+SpringMVC+MyBatis的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、基本概念1.1、SpringSp...
    99+
    2023-06-15
  • Spring核心框架体系结构是怎样的
    Spring核心框架体系结构是怎么样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。很多人都在用spring开发java项目,...
    99+
    2024-04-02
  • EntityFramework系统架构与原理介绍
    一、Entity Framework概要 Entity Framework是微软的Object Relational Mapper(对象关系映射),也就是我们平常说的ORM,它可以让...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作