SpringBoot------REST

目录

学习记录仅供参考

接收参数;

接收一个参数:

接收多个参数

@RequestParam注解:

通过封装对象的方式来接收参数:

获取地址上的参数:

请求转发和重定向:

请求转发:

重定向:

@ResponseBody注解

拦截器

拦截器的使用步骤;

请求方式:

1. @GetMapping

2. @PostMapping

3. @PutMapping

4. @DeleteMapping

springmvc异常处理机制

定义用于处理异常的类

实现方式:


学习记录仅供参考

意思:请求资源状态转换

接收参数;

接收一个参数:

接收多个参数

@RequestParam注解:

在Spring Boot中,@RequestParam 是一个用于处理 HTTP 请求参数的注解,它属于 Spring MVC 框架的一部分。当你使用 @RequestMapping 或其派生注解(如 @GetMapping@PostMapping)来处理请求时,@RequestParam 可以帮助你提取请求中的参数,并将其绑定到控制器方法的参数上。

通过封装对象的方式来接收参数:

获取地址上的参数:

@PathVariable注解:

在Spring Boot中,@PathVariable 是一个注解,用于从URL模板变量中提取值并将其绑定到控制器方法的参数上。它是Spring MVC框架路由机制的一部分,允许你定义动态的URL路径,并将路径中的部分作为参数传递给控制器

请求转发和重定向:

请求转发:

转发:同一个服务器中的不同的服务进行转发 浏览器发送了一个请求 可以转发到项目中受保护的资源WEB-INF 转发是request对象执行forward方法,只有一个请求.

* Spring里面默认是转发的形式

重定向:

可以在不同的服务之间跳转,浏览器发送了两次请求

* 重定向是通过response对象通知浏览器重新访问,使用redirect方法

@ResponseBody注解

在Spring Boot框架中,@ResponseBody是一个注解,它的作用是将返回值直接作为HTTP响应的正文返回,而不是返回一个视图(View)。这个注解通常用在控制器(Controller)的方法上,告诉Spring MVC框架,该方法的返回值应该被序列化成JSON或XML等格式,然后直接写入HTTP响应体中。

拦截器

在Spring Boot中,拦截器(Interceptor)是一个在请求处理流程中的一个组件,用于在控制器方法执行前后进行一些操作。Spring的拦截器机制允许开发者在请求处理之前或之后执行一些特定的逻辑,比如日志记录、安全检查、事务管理等。

拦截器的使用步骤;

  1. 实现拦截器接口:创建一个类实现HandlerInterceptor接口,并实现其方法preHandlepostHandleafterCompletion

2.注册拦截器:将拦截器注册到Spring应用上下文中。这可以通过实现WebMvcConfigurer接口的addInterceptors方法来完成。

请求方式:

在Spring Boot中,@GetMapping@PostMapping@PutMapping@DeleteMapping是用于映射HTTP请求到控制器方法的注解。这些注解是@RequestMapping注解的特定HTTP方法变体,它们提供了一种更简洁的方式来指定请求的HTTP方法。、

1. @GetMapping


   - 用于处理HTTP GET请求。
   - 可以返回一个模型(Model)和视图(View),或者直接返回响应体(如果结合了`@ResponseBody`)。

 

2. @PostMapping


   - 用于处理HTTP POST请求。
   - 通常用于创建资源。

3. @PutMapping


   - 用于处理HTTP PUT请求。
   - 通常用于更新资源。

4. @DeleteMapping


   - 用于处理HTTP DELETE请求。
   - 通常用于删除资源。

  

这些注解可以接收参数,如路径变量(`@PathVariable`)、请求参数(`@RequestParam`)、请求体(`@RequestBody`)等,以获取请求的相关信息。此外,它们可以与`@ResponseBody`注解结合使用,以返回JSON或XML格式的响应体,而不是传统的视图。

`@RestController`注解是一个组合注解,它包含了`@Controller`和`@ResponseBody`。当你在一个类上使用`@RestController`时,该类中的所有方法都会自动应用`@ResponseBody`效果,这意味着方法的返回值将直接作为响应体返回。

使用这些注解可以清晰地表达你的意图,并且使代码更加简洁和易于理解。

springmvc异常处理机制

定义用于处理异常的类

类提供一些方法来显示我们的异常类型或者其他操作

实现方式:

通过@ControllerAdvice来标注这个异常处理器可以为全项目服务

  • 19
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供一些关于Spring Boot整合Easy Elasticsearch的指导。 1. 添加依赖 首先,在`pom.xml`文件中添加Easy Elasticsearch和Elasticsearch的依赖: ```xml <dependency> <groupId>com.jun</groupId> <artifactId>easy-elasticsearch-spring-boot-starter</artifactId> <version>1.0.0</version> </dependency> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId> <version>7.12.0</version> </dependency> ``` 2. 配置Elasticsearch 在`application.yml`中添加Elasticsearch的配置信息: ```yaml spring: elasticsearch: rest: uris: http://localhost:9200 ``` 3. 创建Elasticsearch的Repository 创建一个继承自`ElasticsearchRepository`的接口,用于定义Elasticsearch的操作方法: ```java public interface BookRepository extends ElasticsearchRepository<Book, Long> { List<Book> findBooksByAuthor(String author); } ``` 其中,`Book`是我们要操作的实体类,`Long`是这个实体类的ID类型。 4. 测试Elasticsearch 可以编写一个测试方法来测试Elasticsearch是否成功整合: ```java @SpringBootTest class BookRepositoryTest { @Autowired private BookRepository bookRepository; @Test public void testSave() { Book book = new Book(); book.setId(1L); book.setTitle("Java编程思想"); book.setAuthor("Bruce Eckel"); bookRepository.save(book); } @Test public void testFind() { List<Book> books = bookRepository.findBooksByAuthor("Bruce Eckel"); System.out.println(books); } } ``` 执行测试方法后,如果能够正确输出结果,则说明Easy Elasticsearch已经成功整合到了Spring Boot中。 希望这些步骤能够对您有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值