Spring 注解

@SpringBootApplication

申明让spring boot自动给程序进行必要的配置,这个配置等同于:

@Configuration ,@EnableAutoConfiguration 和 @ComponentScan 三个配置。

@RequestMapping

提供路由信息,负责URL到Controller中的具体函数的映射。

@ResponseBody

表示该方法的返回结果直接写入HTTP response body中,一般在异步获取数据时使用,用于构建RESTful的api。

该注解经常配合RequestMapping使用

@Controller

在spring项目中由控制器负责将用户发来的URL请求转发到对应的服务接口(service层)

该注解一般配合RequestMapping使用

@RestController

@ResponseBody+@Controller的结合

@ComponentScan

(个人看法)表示将该类自动发现扫描组件。

@Autowired

自动导入依赖的bean

@Import

用来导入其他配置类。

@ImportResource

用来加载xml配置文件。

@Service

注解用于类上,标记当前类是一个service类,加上该注解会将当前类自动注入到spring容器中,不需要再在applicationContext.xml文件定义bean了。

@Bean:

用@Bean标注方法等价于XML中配置的bean。

@Value

注入Spring boot application.properties配置的属性的值。示例代码:

@Value("${upload.uploadWindows}")

@Configuration

加上@Configuration注解主要是给我们的类加上了cglib代理。在执行我们的配置类的方法时,会执行cglib代理类中的方法,其中有一个非常重要的判断,当我们的执行方法和我们的调用方法是同一个方法时,会执行父类的方法new(cglib代理基于继承);当执行方法和调用方法不是同一个方法时会调用beanFactory.getBean获取。

@Component

标注Spring管理的Bean,使用@Component注解在一个类上,表示将此类标记为Spring容器中的一个Bean。

@Qualifier

当有多个同一类型的Bean时,可以用@Qualifier(“name”)来指定。与@Autowired配合使用

Qualifier 的意思是合格者,通过这个标示,表明了哪个实现类才是我们所需要的,添加 @Qualifier 注解,需要注意的是@Qualifier 的参数名称为我们之前定义 @Service 注解的名称之一

@Resource

@Resource和@Autowired注解都是用来实现依赖注入的。只是@AutoWried按by type自动注入,而@Resource默认按byName自动注入。

@EnableAutoConfiguration

自动配置。

@JsonIgnore

作用是json序列化时将java bean中的一些属性忽略掉,序列化和反序列化都受影响。

@ControllerAdvice

包含@Component。可以被扫描到。统一处理异常。

@ExceptionHandler(Exception.class)

用在方法上面表示遇到这个异常就执行以下方法。

@RequestParam

用于将指定的请求参数赋值给方法中的形参。

有三个属性:

  (1)value:请求参数名(必须配置)

(2)required:是否必需,默认为 true,即 请求中必须包含该参数,如果没有包含,将会抛出异常(可选配置)

(3)defaultValue:默认值,如果设置了该值,required 将自动设为 false,无论你是否配置了required,配置了什么值,都是 false(可选配置)

@PathVariable

@PathVariable 映射 URL 绑定的占位符
通过 @PathVariable 可以将 URL 中占位符参数绑定到控制器处理方法的入参中:URL 中的 {xxx} 占位符可以通过

@PathVariable(“xxx”) 绑定到操作方法的入参中。

一般与@RequestMapping(method = RequestMethod.GET)一起使用

@Override

是伪代码,表示重写(当然不写也可以)

@Repository

@Repository的功能是将数据访问层(Dao层)的类识别并标注为SpringBean

 

原文链接:https://www.cnblogs.com/shenzaiyuan/p/17383610.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Spring 注解 - Python技术站

(0)
上一篇 2023年5月8日
下一篇 2023年5月9日

相关文章

  • Java 8中字符串拼接新姿势StringJoiner详解

    Java 8中字符串拼接新姿势StringJoiner详解 在Java 8中,使用StringJoiner类可以更方便地进行字符串拼接。这个类可以让我们无需显式地使用字符串缓冲区或分隔符,并且支持指定开头和结尾的字符串,还可以在一些场景下避免空值引起的问题。 StringJoiner的用法 构造函数 首先,我们需要知道StringJoiner类的构造函数有如…

    Java 2023年5月26日
    00
  • Java Lock接口实现原理及实例解析

    Java Lock接口实现原理 Java Lock接口是Java中线程同步机制的一个重要组件。它可以替代传统的synchronized关键字实现线程同步,其主要实现原理是通过对一段代码区域进行加锁和解锁来实现线程同步。 Java Lock接口与synchronized关键字最大的区别就是它的锁具有可重入性。所谓可重入性,是指一个线程的已经获取的锁再次获取时会…

    Java 2023年5月18日
    00
  • Java中RSA加密解密的实现方法分析

    我们来详细讲解一下Java中RSA加密解密的实现方法分析,这里是完整的攻略。 RSA加密解密原理 RSA是一种非对称加密算法,可以实现消息的加密和数字签名。RSA算法的重要性在于它的安全性是基于两个大质数的难分解性和大数分解的难度而来。RSA加密解密算法的核心思想是利用数论中的两个经典问题:大数质因数分解和模反演。 RSA加密大致过程: 选择两个不同的质数p…

    Java 2023年5月19日
    00
  • java中out.print和out.write的方法

    让我来为您详细讲解Java中out.print和out.write的方法。 out.print和out.write的方法 在Java中,System.out是一个静态成员变量,它是Java标准输出流的一个对象。通过System.out,我们可以向控制台输出信息。 System.out对象有两个常用的方法:print()和write()。两者的用途相似,但细节…

    Java 2023年5月26日
    00
  • JavaSpringBoot报错“MissingServletRequestParameterException”的原因和处理方法

    原因 “MissingServletRequestParameterException” 错误通常是以下原因引起的: 缺少请求参数:如果您的请求参数缺失,则可能会出现此错误。在这种情况下,您需要检查您的请求参数并确保它们存在。 请求参数类型不正确:如果您的请求参数类型不正确,则可能会出现此错误。在这种情况下,您需要检查您的请求参数类型并确保它们正确。 解决办…

    Java 2023年5月4日
    00
  • SpringBoot整合JdbcTemplate的示例代码

    针对SpringBoot整合JdbcTemplate的示例代码,我提供以下完整攻略: 简介 Spring Boot 是一个快速开发框架,而 JdbcTemplate 是 Spring 框架中用来简化 JDBC 操作的工具类。在 Spring Boot 中使用 JdbcTemplate,能够帮助我们更加简单快捷地完成数据库访问操作。 背景 为了演示Spring…

    Java 2023年5月19日
    00
  • 值得收藏的SpringBoot 实用的小技巧

    值得收藏的SpringBoot实用的小技巧 在SpringBoot的开发过程中,有一些实用的小技巧可以提高开发效率,降低代码量和阅读难度。下面列举了一些值得收藏的小技巧。 1. 使用lombok简化实体类的编写 在实体类中,我们通常需要定义常量、属性、getter/setter、toString等方法,这些方法都是重复的代码,使用lombok可以自动生成这些…

    Java 2023年5月15日
    00
  • Java的Struts框架报错“InvalidPathException”的原因与解决办法

    当使用Java的Struts框架时,可能会遇到“InvalidPathException”错误。这个错误通常由以下原因之一起: 配置错误:如果配置文件中没有正确配置路径,则可能会出现此。在这种情况下,需要检查配置文件以解决此问题。 路径错误:如果路径不正确,则可能会出现此。在这种情况下,需要检查路径以解决此问题。 以下是两个实例: 例 1 如果配置文件中没有…

    Java 2023年5月5日
    00
合作推广
合作推广
分享本页
返回顶部