봄 부팅 백과 사전은 정말 너무 가득, 노트!

첫째, 메모 (주석) 목록 

 

@S pringBootApplication : 그것은 ComponentScan, @ 구성 및 @EnableAutoConfiguration 주석 @ 포함되어 있습니다. 어느 봄 부팅 구성 클래스를 만들고 프로그램 컨텍스트에 추가 검사 @ComponentScan.

@Configuration  스프링 XML 설정 파일에 해당, 자바 코드의 사용은 보안 유형을 확인할 수 있습니다.

@EnableAutoConfiguration  자동 구성.

@ComponentScan  어셈블리는 자동 검색 및 조립 콩의 번호를 검색합니다.

@Component는 CommandLineRunner 프로그램이 시작된 후 몇 가지 기본 작업을 수행하는 데 사용할 수 있습니다.

@RestController 주석 @Controller @ResponseBody과 모음, 제어기는이 빈하다고되어 있고, 함수의 리턴 값은 HTTP 응답의 신체에 직접 충전 제어기는 REST 스타일이다.

@Autowired 를 자동으로 가져옵니다.

@PathVariable 인수 매개 변수를 설정합니다.

@JsonBackReference 중첩의 사슬 외부의 문제를 해결.

@RepositoryRestResourcepublic 스프링 부팅 스타터 - 데이터 -와 나머지는 사용했다.

 

둘째, (주석) 주석 노트

@SpringBootApplication : EnableAutoConfiguration @ @Configuration과 @ComponentScan 세 가지 구성 : 봄 부팅이 자동으로 프로그램에 필요한 구성을 만들어 보자 긍정,이 구성은 동일합니다.

패키지 com.example.myproject;
수입 org.springframework.boot.SpringApplication;
수입 org.springframework.boot.autoconfigure.SpringBootApplication; 
 
@SpringBootApplication // @Configuration @EnableAutoConfiguration @ComponentScan 동일 
공용  클래스 응용 {
 공공  정적  무효 메인 (문자열 []에 args) { 
SpringApplication.run (애플리케이션. 클래스 , 인수); 
} 
}

 

@ 위한 responseBody : 수단은 상기 처리 결과를 직접 기록 HTTP 응답 체는 일반적으로 API는 편안하고 구성하기위한 비동기 데이터 획득에 사용되는 반환. 결과가 @responsebody 점프 경로로 해석 할 수 없습니다 만, 직접 HTTP 응답 본문에 기록 된 반환과 사용 후 @RequestMapping, 반환 값은 일반적으로 점프 경로로 해결하고있다.

 

이러한 비동기로 JSON 데이터, @responsebody를 추가 한 후, 그것을 직접 JSON 데이터를 반환받을. 노트는 일반적으로 @RequestMapping과 함께 사용됩니다. 샘플 코드 :

( "/ 테스트") @RequestMapping 
@ResponseBody 
공공 문자열 테스트 () { 
반환 "확인"을; 
}

  

@Controller : 프로젝트를 담당하는 제어기에 의해 상기 스프링의 클래스를 정의하기위한 제어기는 상기 대응하는 서비스 인터페이스 (서비스 층)에 사용자에 의해 전송 된 URL에 요청을 전달하는, 일반적으로 종래의 방법으로 주석이 주석 클래스 @RequestMapping을 필요 . 샘플 코드 :

@Controller 
@RequestMapping ( " / demoInfo") 
publicclass DemoController { 
@Autowired 
개인 DemoInfoService의 demoInfoService; 
 
@RequestMapping ( "/ 헬로" )
 공중 문자열 안녕하세요 (지도 및 LT; 문자열 개체 및 한다 MAP) { 
 에서 System.out.println ( "DemoController.hello ()" ); 
 map.put ( '안녕하세요', 'TemplateController.helloHtml에서' );
 // 会使用hello.html或者hello.ftl模板进行渲染显示. 
 반환 "안녕하세요 /" ; 
} 
}

 

@RestController :위한 responseBody @Controller 및 수집 @ 제어 층 라벨 조립체 (예를 들어, 액션 스트러트). 권장 사항 : 스프링 MVC 일반 주석, 당신은 몇 가지?

 

샘플 코드 :

패키지 com.kfit.demo.web; 
 
수입 org.springframework.web.bind.annotation.RequestMapping;
수입 org.springframework.web.bind.annotation.RestController; 
 
 
@RestController 
@RequestMapping ( " / demoInfo2") 
publicclass DemoController2 { 
 
@RequestMapping ( "/ 테스트" )
 공공 문자열 테스트 () {
  반환 "확인" ; 
} 
}

 

@ RequestMapping : 라우팅 정보, 특정 기능을 담당하는 컨트롤러에 URL 매핑을 제공합니다.

@EnableAutoConfiguration : 부트 봄 자동 구성 (자동 구성) : 자동으로 추가 의존 항아리에 따라 봄 응용 프로그램을 구성하려고합니다. HSQLDB에서 클래스 패스는, 당신은 수동으로 데이터베이스 연결 콩을 구성 할 필요가 없습니다 예를 들어, 우리는 자동으로 (메모리) 데이터베이스 메모리의 유형을 구성합니다. "

당신은 자동 구성을 선택합니다 @EnableAutoConfiguration 또는 @SpringBootApplication @Configuration 클래스 업에 메모를 추가 할 수 있습니다. 특정 응용 프로그램이 자동으로 원하지 않는 클래스를 구성 찾을 경우이를 해제하는 부정적인 속성의 @EnableAutoConfiguration 주석을 사용할 수 있습니다.

@ComponentScan : 자동 검색 스캐닝 조립체의 형태를 나타낸다. 클래스 등 서비스, @, 컨트롤러 @ 구성 요소 @ 이러한 주석을 스캔해야하고, Bean으로 등록, 봄이 자동으로 @Configuration 클래스를 포함한 모든 구성 요소를 수집 할 경우 개인의 이해가 동일합니다.

우리는 종종 가져 @Autowired 노트와 결합 @ComponentScan 주석 검색 콩을 사용합니다. 봄이 자동으로 @Configuration 클래스를 포함한 모든 구성 요소를 수집 할 수 있습니다. 우리는 종종 가져 @Autowired 노트와 결합 @ComponentScan 주석 검색 콩을 사용합니다. 아무 단어 경우, 봄 부팅은 다음 수업 팩을 스캔 시작하고 클래스 거짓말에 저장소 주석 및 기타 서브 패키지 @에서 @ 서비스를 사용합니다.

@Configuration : 일부 타사 라이브러리 XML 파일을 사용해야 할 경우 기존의 XML 구성 파일에 해당, 여전히 @Configuration 클래스에 의해 메인 클래스의 구성 항목으로 추천 - XML 설정 파일 @ImportResource 주석을로드 할 수 있습니다. 권장 사항 : 부트 3 자세한 노트의 봄 핵심 .

@Import : 다른 구성 클래스를 소개하는 데 사용됩니다. 권장 사항 : 봄 코어 (25) 부팅 코멘트!

@ImportResource : XML 설정 파일을로드하는 데 사용됩니다.

@Autowired : 자동으로 의존 콩을 가져

@Service : 수정하기위한 서비스 계층의 총회

@Repository : 사용 @Repository 주석이 DAO에 이상 보장 할 수 있습니다 또는 저장소가 번역을 제공,이 주석 수정 또는 저장소의 DAO 클래스를 찾을 수 및 구성 ComponetScan은 또한 그들을 위해 XML 구성 항목을 제공 할 필요가 없습니다.

@Bean : 구성 @Bean 해당하는 빈 XML로 태그.

@Value : 값 봄 부팅을 주입 구성 속성을있는 application.properties. 샘플 코드 :

@Value (값 = "# {메시지}")
 개인 문자열 메시지;

 

@Inject : 기본 @Autowired에 해당이되지만 필수 속성이 없습니다;

@ 컴포넌트는 : 구성 요소가 구분되지 않을 때, 우리는 표시이 주석을 사용할 수있는 구성 요소를 말합니다.

@Bean : 빈을 생성하고, 봄에 관리하는 방법보다는 클래스 의미에서 위의 XML에 해당.

@Autowired : 자동으로 빈을 가져옵니다. byType와 방법. 빈은 사용 완료 특성, 조립 방법, 그것을 표시 할 수 클래스 필드, 메소드 및 구성의 자동 조립을 완료하도록 구성. 와 결합 할 때 콩이 오류가 아닙니다 찾을 수없는 경우에도 (= 거짓 필수).

@Qualifier : 빈의 동일한 유형의 다수, @Qualifier ( "이름")을 지정할 수있는 경우. @Autowired와 함께 사용됩니다. 분사에 따른 설명 @Qualifier 이름을 정의 할뿐만 아니라, 그러나 다음과 같이 선택된 후보, 즉 사용하는 방법보다 세밀하게 제어 할 수있다 :

@Autowired 
@Qualifier (값 = "demoInfoService")
 전용 DemoInfoService의 demoInfoService;

 

( "유형"유형의 이름 = "이름"=) @Resource는 : 괄호 내에 내용, 기본 요소 별명이 없습니다. @Autowired 건조와 유사한 것.

 

세, JPA 주석

@Entity : @Table (NAME = "는")이 엔티티 클래스임을 나타낸다. 모두는 일반적으로 일반 JPA를 이용하여 주석을 사용하지만, 표 이름과 기업의 이름이면 동일한 클래스 @ 테이블은 생략 될 수있다

@MappedSuperclass은 : 상위 엔티티의 판정에 사용된다. 상위 클래스의 속성 하위 클래스는 상속 될 수 있습니다.

@ NoRepositoryBean : 일반적으로 부모 클래스 저장소,이 주석, 저장소를 인스턴스화하지 봄으로 사용.

@Column : 동일한 필드 이름과 열 이름은 생략 될 수있다.

@Id는 : 기본 키 속성을 나타냅니다.

@GeneratedValue (= GenerationType.SEQUENCE 전략 생성기 = "repair_seq")은 : 전방 키 생성 전략 서열이다 (등 자동차, IDENTITY, 네이티브 수 있고, 복수의 데이터베이스 간의 자동 전환을 나타낸다), 지정된 시퀀스의 이름 repair_seq이다.

@SequenceGeneretor (NAME = "repair_seq"sequenceName = "seq_repair"allocationSize = 1이다.) : 사용하기 위해 이름 이름 시퀀스는베이스 시퀀스의 이름 두 가지 이름이 일치하고있다 sequenceName이다.

@Transient가 : 속성이 데이터베이스 테이블에있는 필드에 매핑되지 않았 음을 나타냅니다, ORM 프레임 워크는 속성을 무시합니다. 속성을 필드 매핑 데이터베이스 테이블이 아닌 경우, 그렇지 않으면, ORM 프레임 워크는 기본 @Basic으로 주석, @Transient로 표시해야합니다. 엔티티를로드하는 태그의 속성을 지정할 수 있습니다 @Basic (= FetchType.LAZY 인출)

@JsonIgnore는 : 역할은 JSON 직렬화 된 자바 빈의 속성, 직렬화 및 탈 직렬화 어떤 영향을 무시하는 것입니다.

@JoinColumn (이름 = "은 loginid") : 하나를 다른 테이블의 외래 키에이 테이블. 많은 :이 테이블에서 다른 테이블에 외래 키.

OneToOne @, @ OneToMany, @ ManyToOne 하나에 많은 구성 파일이 많은 하나, 하나에 하나에 해당하는 최대 절전 모드.

 

네, springMVC 관련 노트

@RequestMapping : @RequestMapping를 ( "/ 경로"), 상기 제어기는 상기 요청 UR L. 모두 "/ 클리핑"처리하는 것을 나타낸다 RequestMapping는 주석 요청 주소 매핑하는 방법, 그것은 클래스 나 메소드에 사용할 수있다.

클래스에 대한 요청에 응답하여 클래스의 모든 메소드는 상위 어드레스 경로로 표현된다. 이 노트는 여섯 속성이 있습니다 :

PARAMS : 요청 처리 방법을 허용하기 전에, 소정의 파라미터 값을 포함해야 지정. 헤더 : 요청이 요청을 처리하기 위해이 방법을 위해서는 특정 지정된 헤더 값을 포함해야합니다 지정합니다. : 실제의 어드레스 할당 요청은, 상기 지정된 주소는 URI 템플릿 모델 일 수있다 방법 : POST가, PUT, DELETE, 방법은 요청의 타입을 지정 GET 등 소비된다 : 이러한 애플리케이션으로 처리 요구 지정된 콘텐츠 유형 (콘텐츠 - 타입), 전송 / JSON, 텍스트 / HTML은, 생산 : 반환 된 경우에만 머리의 콘텐츠 형식은 (수락) 요청이 요청 유형을 포함하는 유형으로 돌아갑니다 지정

@RequestParam : 이전 방법에 사용되는 매개 변수. @RequestParam 문자열 A = request.getParameter ( "는 ").

@PathVariable : 경로 변수. 으로

 


 
RequestMapping ( "사용자 / 수 / 맥 / {MAC 주소}") 

공공 문자열 getByMacAddress (@PathVariable 문자열 MAC 주소) { 

// 뭔가를 할; 

}

 

 

매개 변수 이름은 같을 필요는 중괄호합니다.

 

다섯째, 글로벌 예외 핸들러

@ControllerAdvice는 : @Component가 포함되어 있습니다. 그것은 스캔 할 수 있습니다. 통합 핸들 예외.

@ExceptionHandler (Exception.class)는 이 예외가 발생하면 다음 나타낸다 방법은 상기 방법에 사용되는 실행한다.

 

 

추천

출처www.cnblogs.com/qwlscn/p/11495378.html