欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

springboot常用注釋的講解

1:@Qualifier

創(chuàng)新互聯(lián)主營(yíng)青河網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,app軟件開發(fā)公司,青河h5微信小程序搭建,青河網(wǎng)站營(yíng)銷推廣歡迎青河等地區(qū)企業(yè)咨詢

@Qualifier 注釋指定注入 Bean 的名稱,這樣歧義就消除了。所以@Autowired 和@Qualifier 結(jié)合使用時(shí),自動(dòng)注入的策略就從 byType 轉(zhuǎn)變成 byName 了。例子如下:

有一個(gè)接口:

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

有兩個(gè)實(shí)現(xiàn)類:

@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層調(diào)用service層:

@RestController
public class EmployeeInfoControl {
  @Autowired
  @Qualifier("service")  //括號(hào)里面的值是實(shí)現(xiàn)類@service時(shí)給類取得名字,加上此注解不會(huì)報(bào)錯(cuò)
  private EmployeeService employeeService;
 
  @RequestMapping("/emplayee.do")
  public void showEmplayeeInfo(){
    String employeeById = employeeService.getEmployeeById(1l);
    System.out.println("employeeById值為"+employeeById);
  }
}
//此時(shí)會(huì)報(bào)錯(cuò) 因?yàn)锧Autowired
//       private EmployeeService employeeService;
//注入的是service層的接口,此時(shí)有兩個(gè)實(shí)現(xiàn),不知道綁定的是哪個(gè)實(shí)現(xiàn)。
//此時(shí)應(yīng)該在@Autowired下面配合@Qualifier注釋使用,用來說明要綁定的具體是哪個(gè)實(shí)現(xiàn)類
//如上面所示

2:@RestController

注解在類上,表示這是一個(gè)控制層bean。常用于控制層類的前面,是@ResponseBody和@Controller的合集 。

  • @ResponseBody:用該注解修飾的函數(shù),會(huì)將結(jié)果直接填充到HTTP的響應(yīng)體中,一般用于構(gòu)建RESTful的api,將java對(duì)象轉(zhuǎn)為json格式的數(shù)據(jù)。
  • @Controller:用于定義控制器類,在spring 項(xiàng)目中由控制器負(fù)責(zé)將用戶發(fā)來的URL請(qǐng)求轉(zhuǎn)發(fā)到對(duì)應(yīng)的服務(wù)接口(service層)。

3:@RequestMapping

提供路由信息,負(fù)責(zé)URL到Controller中的具體函數(shù)的映射。

4:@SpringBootApplication

該注解用在運(yùn)行類之上,相當(dāng)于@EnableAutoConfiguration、@ComponentScan和@Configuration的合集。 

  • @EnableAutoConfiguration:Spring Boot自動(dòng)配置(auto-configuration)。
  • @ComponentScan:表示將該類自動(dòng)發(fā)現(xiàn)(掃描)并注冊(cè)為Bean,可以自動(dòng)收集所有的Spring組件,包括@Configuration類。我們經(jīng)常使用@ComponentScan注解搜索beans,并結(jié)合@Autowired注解導(dǎo)入。
  • @Configuration:相當(dāng)于傳統(tǒng)的xml配置文件,如果有些第三方庫(kù)需要用到xml文件,建議仍然通過@Configuration類作為項(xiàng)目的配置主類 ——可以使用@ImportResource注解加載xml配置文件。

5:@Import

用來導(dǎo)入其他配置類。 

6:@Autowired 

自動(dòng)導(dǎo)入依賴的bean。

7:@Service 

注解在類上,表示這是一個(gè)業(yè)務(wù)層bean。

8:@Repository

注解在類上,表示這是一個(gè)數(shù)據(jù)訪問層bean。使用@Repository注解可以確保DAO或者repositories提供異常轉(zhuǎn)譯,這個(gè)注解修飾的DAO或者repositories類會(huì)被ComponetScan。 

9:@Query  

自定義SQL查詢語句 

10:@Entity  

用在實(shí)體類的前面,表示這是一個(gè)實(shí)體類。 

11:@Table(name=“”) 

用在實(shí)體類的前面,一般和@Entity一起使用,表示該實(shí)體類映射數(shù)據(jù)庫(kù)中的某張表。

12:@Column

表示實(shí)體類的某個(gè)屬性映射為表中的某個(gè)字段,包含的設(shè)置如下:name:數(shù)據(jù)庫(kù)表字段名;unique:是否唯一 ;nullable:是否可以為空 ;Length:長(zhǎng)度。

13:@Id

該注釋用在實(shí)體類中,寫在哪個(gè)屬性的前面,表示該屬性映射到數(shù)據(jù)庫(kù)中的字段為主鍵。

14:@GeneratedValue 

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

15:@Transient 

表示該屬性并非一個(gè)到數(shù)據(jù)庫(kù)表的字段的映射,ORM框架將忽略該屬性。如果一個(gè)屬性并非數(shù)據(jù)庫(kù)表的字段映射,就務(wù)必將其標(biāo)示為@Transient。 

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)創(chuàng)新互聯(lián)的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

文章名稱:springboot常用注釋的講解
網(wǎng)頁(yè)鏈接:http://www.chinadenli.net/article38/iejgsp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)關(guān)鍵詞優(yōu)化電子商務(wù)網(wǎng)站設(shè)計(jì)公司營(yíng)銷型網(wǎng)站建設(shè)云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司