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

驻马店河南网站建设网站需求分析的重要

驻马店河南网站建设,网站需求分析的重要,制作网站的完整步骤,关键词排名监控批量查询★ RESTful服务 RESTful服务是“前后端分离”架构中的主要功能#xff1a; 后端应用对外暴露RESTful服务#xff0c;前端应用则通过RESTful服务与后端应用交互。后端应用 RESTful接口 ------------------ 前端★ 基于JSON的RESTful服务 使用RestController注解…★ RESTful服务 RESTful服务是“前后端分离”架构中的主要功能 后端应用对外暴露RESTful服务前端应用则通过RESTful服务与后端应用交互。后端应用 RESTful接口 ------------------ 前端★ 基于JSON的RESTful服务 使用RestController注解修饰控制器类或使用ResponseBody修饰处理方法即可。 RestController和Controller的区别就在于RestController会自动为每个处理方法都添加ResponseBody注解。 RequestBody用于修饰处理方法的参数用于获取RESTful提交的请求数据。 RESTful有一个约定主要是对URL有约定比如对于一个操作图书的RESTful接口GET /books/{id} - 获取数据 获取指定id的图书 GET /books?参数 -获取数据 获取符合查询参数的图书 GET /books -获取数据 获取所有图书 POST /books -添加数据 添加图书 PUT /books/{id} -更新数据 更新指定ID的图书 DELETE /books/{id} -删除数据 删除指定ID的图书 DELETE /books?参数 -删除数据 删除符合指定参数的图书Restful处理方法的返回值通常都应该使用HttpEntity或ResponseEntity。 HttpEntity 只能额外地指定响应头不支持指定响应码。↑ResponseEntity 可额外指定响应的响应头、响应码HttpStatus代表ResponseEntity 继承 HttpEntity 代码演示 总结就只是前端用 get 、 post 、 put 、 delete 发起请求 后端用 GetMapping前端获取数据、PostMapping前端推送数据、 PutMapping前端修改数据、DeleteMapping前端删除数据 接收就是 RESTful风格了。 基础数据 1、Get 请求 前段根据id查看图书 2、查看所有图书前端用get请求 3、添加图书前端用 post 请求 4、根据id更新图书信息前端用 put 进行请求 5、根据id删除图书前端用delete 发起请求 总结 如图三个方法的访问路径都是一样的不同的只是请求的方式不同一个是get一个是put一个是delete这就是 restful 风格项目会自动识别。 完整代码 Book Data public class Book {private Integer id;private String name;private double price;private String author;public Book(Integer id, String name, double price, String author){this.id id;this.name name;this.price price;this.author author;} }BookController package cn.ljh.app.controller;import cn.ljh.app.domain.Book; import cn.ljh.app.service.BookService; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*;import java.util.List;/** GET /books/{id} - 获取数据 获取指定id的图书* GET /books?参数 -获取数据 获取符合查询参数的图书* GET /books -获取数据 获取所有图书* POST /books -添加数据 添加图书* PUT /books/{id} -更新数据 更新指定ID的图书* DELETE /books/{id} -删除数据 删除指定ID的图书* DELETE /books?参数 -删除数据 删除符合指定参数的图书** Restful处理方法的返回值通常都应该使用HttpEntity或ResponseEntity。**/RequestMapping(/books) RestController public class BookController {//有参构造器进行依赖注入private BookService bookService;public BookController(BookService bookService){this.bookService bookService;}//根据id查看图书GetMapping(/{id})public ResponseEntityBook viewBookById(PathVariable Integer id){Book book bookService.getBookById(id);//参数1响应数据体 参数2需要添加的响应头没有就给个null 参数3:响应码 OK 代表 200return new ResponseEntity(book, null, HttpStatus.OK);}//查看所有图书GetMapping()public ResponseEntityListBook viewBooks(){ListBook allBooks bookService.getAllBooks();return new ResponseEntity(allBooks, null, HttpStatus.OK);}//添加图书PostMapping()public ResponseEntityBook addBook(RequestBody Book book){Book b bookService.addOrUpdateBook(book);//HttpStatus.CREATED 代表返回的状态码为 201return new ResponseEntity(b, null, HttpStatus.CREATED);}//根据id更新图书信息PutMapping(/{id})public ResponseEntityBook updateBookById(PathVariable Integer id, RequestBody Book book){book.setId(id);Book b bookService.addOrUpdateBook(book);return new ResponseEntity(b, null, HttpStatus.OK);}//根据id删除图书DeleteMapping(/{id})public ResponseEntityBook deleteBookById(PathVariable Integer id){Book book bookService.deleteBookById(id);return new ResponseEntity(book, null, HttpStatus.OK);}}BookService package cn.ljh.app.service;import cn.ljh.app.domain.Book;import java.util.List;public interface BookService {//根据id查看图书Book getBookById(Integer id);//查看所有图书ListBook getAllBooks();//添加/修改图书Book addOrUpdateBook(Book book);//根据id删除图书Book deleteBookById(Integer id);}BookServiceImpl package cn.ljh.app.service.impl;import cn.ljh.app.domain.Book; import cn.ljh.app.service.BookService; import org.springframework.stereotype.Service;import java.util.*; import java.util.concurrent.ConcurrentHashMap;Service public class BookServiceImpl implements BookService {//创建一个线程安全的map集合存数据假设为数据库static MapInteger, Book bookDB new ConcurrentHashMap();static int nextId 1;//初始化数据库的数据static{bookDB.put(nextId, new Book(nextId, 火影忍者, 120, 岸本));bookDB.put(nextId, new Book(nextId, 七龙珠, 121, 鸟山明));}//根据id查看图书Overridepublic Book getBookById(Integer id){if (id ! null){Book book bookDB.get(id);if (book!null){return book;}}throw new RuntimeException(根据id查看图书失败);}//查看所有图书Overridepublic ListBook getAllBooks(){//获取map中的所有数据CollectionBook mapBooks bookDB.values();//强转ListBook books new ArrayList(mapBooks);return books;}//添加/修改图书Overridepublic Book addOrUpdateBook(Book book){if (book.getId() ! null){//修改//map的key是唯一的所以map里面有这个key的话直接把原来的value覆盖掉bookDB.put(book.getId(),book);return book;}else {//新增//为新增的图书设置idbook.setId(nextId);//book添加完之后这个id才会自增bookDB.put(nextId,book);return book;}}//根据id删除图书Overridepublic Book deleteBookById(Integer id){Book book bookDB.remove(id);return book;} }
http://www.pierceye.com/news/2370/

相关文章:

  • 建购物网站怎么建呀百度网盘登录
  • 网站建设公司广州wordpress调用阅读最多的
  • 南山专业做网站公司备案网站名称 怎么填写
  • 建筑工程类招聘网站哈尔滨网站建设团队
  • 长沙专业外贸建站公司网站建设最新技术及发展趋势
  • 网站一天要发多少外链婚纱摄影网页模板
  • 网站说服力-营销型网站策划积分动力wordpress插件
  • 湖南网站建设公司 要上磐石网络网站建设只有一个空间吗
  • 支付宝 收费 网站开发连云港建设部网站
  • 蚌埠公司做网站wordpress装饰
  • 科技部网站建设合同企业做网站需要什么手续吗
  • 做个简单的网站如何查看网站域名
  • 晋中做网站的公司广东队对阵广州队
  • 郑州经济技术开发区属于哪个区优化方案模板
  • 如何从建设局网站上更换职称人员网站收录排名
  • 蚌埠网站设计wordpress说有图片居中对齐
  • seo站内优化站外优化制造业网站开发
  • 做效果图的网站有哪些饲料网站建设 中企动力
  • 网站建设公司薪酬跨境电商怎么做如何从零开始
  • 网站定制页面调整至居中广告设计图片大全模板
  • 广东网站设计专业团队深圳网站 建设信科网络
  • 儿童教育网站怎么做有趣oa办公系统网页版官网
  • 广州智能建站有没有免费查企业信息的软件
  • 永久网站建设wordpress添加地图
  • 京东不让卖网站制作么制作网站公司选 择乐云seo专家
  • 整站网站优化费用wordpress 新特性
  • 网站收索流量饰品做国际贸易哪些网站
  • 网站技术开发软件源码成品资源下载网站
  • 商务网站开发实验淘宝客网站建设
  • 用织梦的网站怎么做推广下载app浏览器