JAVA注解的总结及其作用
# 一、@component
标注一个类为Spring容器的Bean,(把普通pojo实例化到spring容器中,相当于配置文件中的<bean id="" class=""/>)。将其扫描注入到Spring容器,注入成Bean
# 二、@ServerEndpoint(value = "/server/{username}")
@ServerEndpoint 注解用于将一个Java类标记为WebSocket端点,指定客户端可以通过指定的端点URL连接到该WebSocket端点。在注解中,value 属性用于指定WebSocket端点的URL路径。
@ServerEndpoint 注解的作用是定义一个WebSocket端点,用于处理WebSocket连接和通信,实现实时的双向数据传输。
# 三、@OnOpen
@OnOpen 注解的作用是定义一个方法,在WebSocket连接建立时执行特定的逻辑,允许开发人员在连接建立时进行一些自定义操作。
# 四、 @OnMessage
@OnMessage 注解的作用是定义一个方法,在服务器端接收到客户端发送的消息时执行特定的逻辑,允许开发人员处理接收到的消息并做出相应的响应。
@OnMessage 注解标记的方法会在服务器端接收到客户端发送的消息时被调用,允许开发人员在方法内部处理接收到的消息并做出相应的响应。
通过@OnMessage 注解,开发人员可以定义多个方法来处理不同类型或格式的消息。
# 五、@OnClose
@OnClose 注解标记的方法会在客户端与服务器端的WebSocket连接关闭时被调用,允许开发人员在连接关闭时执行一些清理操作或其他逻辑
# 六、@OnError
@OnError 注解的作用是定义一个方法,在WebSocket通信过程中发生错误时执行特定的逻辑,允许开发人员处理错误并采取适当的措施,以确保应用程序在出现问题时能够做出正确的响应。
# 七、@Configuration
@Configuration 注解在Spring框架中起着重要的作用,用于定义配置类并配置Spring应用程序上下文中的Bean和其他组件
# 八、@Bean
@Bean 注解,用于定义Bean的方法并将对象实例注册到Spring应用程序上下文中,为应用程序提供依赖注入和管理功能。
Spring的@Bean注解用于告诉方法,产生一个Bean对象,然后这个Bean对象交给Spring管理。 产生这个Bean对象的方法Spring只会调用一次,随后这个Spring将会将这个Bean对象放在自己的IOC容器中。
# 九、@CrossOrigin
@CrossOrigin 注解在Spring框架中用于处理跨域资源共享,通过配置允许跨域访问的源,帮助开发人员实现安全、灵活的跨域访问控制。
# 十、@RestController
结合了@Controller 和@ResponseBody 注解的功能,表示该类中的方法返回的数据将直接写入 HTTP 响应体中,而不是通过视图解析器渲染视图。
# 十一、@RequestMapping("")
@RequestMapping 注解在Spring框架中用于将 HTTP 请求映射到处理方法或控制器,实现请求的路由和处理,提供了灵活的配置选项,方便开发人员定义请求路径的映射规则和处理逻辑。
# 十二、@RequestBody
@RequestBody 注解在Spring框架中用于从 HTTP 请求中获取请求体数据并将其转换为 Java 对象,方便处理客户端发送的数据,特别适用于处理 POST 请求中的请求体数据。
# 十三、@PathVariable
获取 URL 中的路径变量:通过在方法参数上添加@PathVariable 注解,并指定对应的路径变量名,可以从请求 URL 中提取该路径变量的值。
灵活的路径参数处理:@PathVariable 注解使得控制器方法能够处理包含动态路径参数的 URL,从而实现对不同资源的访问和操作。
支持 RESTful 风格的 API:在 RESTful 服务的设计中,@PathVariable 注解常用于从 URL 中提取资源标识符或其他参数,实现对资源的操作。
支持多个路径变量:@PathVariable 注解支持在一个 URL 中包含多个路径变量,通过指定不同的@PathVariable 注解,可以获取多个路径变量的值。
可选路径变量:@PathVariable 注解还支持将路径变量设置为可选的,即在 URL 中该路径变量可以有或者没有,从而实现更灵活的路径匹配。
# 十四、@RequestParam
@RequestParam 注解在Spring框架中用于从 HTTP 请求中获取请求参数的值,支持获取查询参数、表单参数等类型的参数,并支持参数的默认值、必选参数等特性,使得处理请求参数变得更加方便和灵活。
# 十五、@Getter
@Getter 注解在Lombok中用于自动生成类中的 getter 方法,简化了代码编写过程,提高了代码的可读性和可维护性。
# 十六、@Override
标识重写方法:通过在子类中的方法上添加@Override 注解,明确表示该方法是重写父类中的方法,提高代码的可读性。
编译时检查:编译器会在编译时检查带有@Override 注解的方法是否真的重写了父类中的方法,避免由于拼写错误或方法签名不匹配等导致的错误。
防止意外重写:在父类中修改了一个方法,但是子类没有正确地重写该方法时,使用@Override 注解可以帮助开发者及时发现问题。
提高代码可维护性:通过明确标识方法的重写关系,可以使代码更易于理解和维护。
# 十七、@Service
@Service 注解用于标识服务层组件,处理业务逻辑。
# 十八、@Mapper
@Mapper 注解用于标识 MyBatis 的映射器接口,定义数据库操作的 SQL 映射。