
- 자주 사용하는 어노테이션 정리
@Component
public class MyUtil {
public String getToday() {
return "2025-05-07";
}
}
@Componant
: 스프링이 자동으로 Bean으로 등록해주는 기본 어노테이션
@Service
public class UserService {
public void registerUser(String name) {
// 회원 가입 처리
}
}
@Service
: 비즈니스 로직을 담당하는 클래스에 사용. 실질적 처리 담당
@Repository
public class UserRepository {
public void save(User user) {
// DB 저장 로직
}
}
@Repository
: DB와 연결되는 DAO/Repository 클래스에 사용. 예외 처리를 자동으로 감싸줌
@RestController
public class HelloController {
@GetMapping("/hello")
public String sayHello() {
return "안녕하세요!";
}
}
@Controller / @RestController
: @Controller는 JSP나 Thymeleaf 같은 View 템플릿 쓸 때 사용
: @RestController는 JSON 응답을 보낼 때 사용
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
}
@Autowired
: 의존성 주입을 자동으로 해줌 (생성자 없이도 간단하게 생성자 주입 가능)
@Configuration
public class AppConfig {
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
}
@Configuration + @Bean
: 수동으로 Bean 등록 시 사용
@Component
public class AppInfo {
@Value("${app.name}")
private String appName;
}
@Value
: application.properties 또는 .yml의 설정 값을 주입받을 수 있음
@Slf4j
@Service
public class LogService {
public void doSomething() {
log.info("무언가 처리 중...");
}
}
@Slf4j ( Simple Logging Facade for Java )
: 로그 찍을 때 편하게 사용 (Lombok 기능)
@GetMapping("/hello")
public String hello(@RequestParam String name) {
return "Hello, " + name;
}
// 호출 예: /hello?name=홍길동
@RequestParam
: 쿼리 파라미터, form 데이터 값 받아올 때 사용
@GetMapping("/user/{id}")
public String getUser(@PathVariable Long id) {
return "User ID: " + id;
}
// 호출 예: /user/123
@PathVariable
: 리소스 경로에 식별자를 넣어 동적으로 URL에 정보를 담을 수 있다
: URL 경로의 중괄호 { } 안쪽에 변수를 담고 그 변수를 @PathVariable(" ")로 받아서 사용할 수 있다.
'웹 개발 > 개념 정리' 카테고리의 다른 글
| 절대 경로, 상대 경로 (0) | 2025.05.14 |
|---|---|
| index.html 이란 무엇인가 ? (0) | 2025.05.12 |
| 생성자 (0) | 2025.03.29 |
| Node.js (0) | 2025.03.26 |
| 데이터베이스 최적화 방법 (0) | 2025.03.26 |