• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

springboot常用注释的讲解

springboot 搞代码 4年前 (2022-01-05) 62次浏览 已收录 0个评论

今天小编就为大家分享一篇关于springboot常用注释的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

1:@Qualifier

@Qualifier 注释指定注入 Bean 的名称,这样歧义就消除了。所以@Autowi来源gao@dai!ma.com搞$代^码网red 和@Qualifier 结合使用时,自动注入的策略就从 byType 转变成 byName 了。例子如下:

有一个接口:

 public interface EmployeeService { public String getEmployeeById(Long id); }

有两个实现类:

 @Service("service") public class EmployeeServiceImpl implements EmployeeService{ @Override public String getEmployeeById(Long id) { return "0"; } } @Service("service1") public class EmployeeServiceImpl1 implements EmployeeService{ @Override public String getEmployeeById(Long id) { return "1"; } }

controller层调用service层:

 @RestController public class EmployeeInfoControl { @Autowired @Qualifier("service")  //括号里面的值是实现类@service时给类取得名字,加上此注解不会报错 private EmployeeService employeeService; @RequestMapping("/emplayee.do") public void showEmplayeeInfo(){ String employeeById = employeeService.getEmployeeById(1l); System.out.println("employeeById值为"+employeeById); } } //此时会报错 因为@Autowired //       private EmployeeService employeeService; //注入的是service层的接口,此时有两个实现,不知道绑定的是哪个实现。 //此时应该在@Autowired下面配合@Qualifier注释使用,用来说明要绑定的具体是哪个实现类 //如上面所示

2:@RestController

注解在类上,表示这是一个控制层bean。常用于控制层类的前面,是@ResponseBody和@Controller的合集 。

  • @ResponseBody:用该注解修饰的函数,会将结果直接填充到HTTP的响应体中,一般用于构建RESTful的api,将java对象转为json格式的数据。
  • @Controller:用于定义控制器类,在spring 项目中由控制器负责将用户发来的URL请求转发到对应的服务接口(service层)。

3:@RequestMapping

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

4:@SpringBootApplication

该注解用在运行类之上,相当于@EnableAutoConfiguration、@ComponentScan和@Configuration的合集。 

  • @EnableAutoConfiguration:Spring Boot自动配置(auto-configuration)。
  • @ComponentScan:表示将该类自动发现(扫描)并注册为Bean,可以自动收集所有的Spring组件,包括@Configuration类。我们经常使用@ComponentScan注解搜索beans,并结合@Autowired注解导入。
  • @Configuration:相当于传统的xml配置文件,如果有些第三方库需要用到xml文件,建议仍然通过@Configuration类作为项目的配置主类 ――可以使用@ImportResource注解加载xml配置文件。

5:@Import

用来导入其他配置类。 

6:@Autowired 

自动导入依赖的bean。

7:@Service 

注解在类上,表示这是一个业务层bean。

8:@Repository

注解在类上,表示这是一个数据访问层bean。使用@Repository注解可以确保DAO或者repositories提供异常转译,这个注解修饰的DAO或者repositories类会被ComponetScan。 

9:@Query  

自定义SQL查询语句 

10:@Entity  

用在实体类的前面,表示这是一个实体类。 

11:@Table(name=“”) 

用在实体类的前面,一般和@Entity一起使用,表示该实体类映射数据库中的某张表。

12:@Column

表示实体类的某个属性映射为表中的某个字段,包含的设置如下:name:数据库表字段名;unique:是否唯一 ;nullable:是否可以为空 ;Length:长度。

13:@Id

该注释用在实体类中,写在哪个属性的前面,表示该属性映射到数据库中的字段为主键。

14:@GeneratedValue 

表示主键的生成策略,和@Id一起使用 

15:@Transient 

表示该属性并非一个到数据库表的字段的映射,ORM框架将忽略该属性。如果一个属性并非数据库表的字段映射,就务必将其标示为@Transient。 

总结

以上就是springboot常用注释的讲解的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:springboot常用注释的讲解

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址