본문 바로가기

jpa12

TIL내일배움캠프 15주차 Spring Scheduler 오늘의 키워드Spring Scheduler오늘의 내용Spring Scheduler는 일정한 시간 간격이나 특정 시간에 코드를 실행할 수 있도록 하는 기능으로 @Scheduled 어노테이션을 사용하여 작업을 예약할 수 있고 Spring Scheduler를 설정하고 사용하는 방법은 다음과 같다Application 클래스에 @EnableScheduling 추가:@EnableScheduling@SpringBootApplicationpublic class SchedulerApplication { public static void main(String[] args) { SpringApplication.run(SchedulerApplication.class, args); }}스케줄링 작업을 위.. 2024. 7. 23.
TIL내일배움캠프 15주차 Spring Boot로 REST API와 AOP를 활용한 코드 실행 및 로그 기록 오늘의 키워드 Spring BootREST APILoggingAOP (Aspect-Oriented Programming)오늘의 내용AOP를 사용해 메서드 실행시간을 측정코드를 입력받고 실행시키는 Controller 구현//예시코드@RestControllerpublic class CodeExecutionController { @PostMapping("/execute") public ResponseEntity executeCode(@RequestBody String code) { String result = runCode(code); return ResponseEntity.ok(result); } private String runCode(String code) .. 2024. 7. 22.
TIL내일배움캠프 14주차 최종프로젝트 실시간 채팅 오늘의 키워드실시간 채팅WebSocketSTOMP오늘의 내용실시간 채팅 API 명세엔드포인트POST /chat/send: 채팅 메시지를 보내기 위한 엔드포인트GET /chat/receive: 채팅 메시지를 받기 위한 엔드포인트WebSocket 엔드포인트/ws/chat: WebSocket 연결을 위한 엔드포인트STOMP 엔드포인트/app/sendMessage: 메시지를 보내기 위한 STOMP 엔드포인트/topic/messages: 구독된 클라이언트들에게 메시지를 전달하기 위한 엔드포인트Request 및 Response 형식Request (sendMessage)json코드 복사{ "from": "사용자 이름", "text": "메시지 내용" }Response (receiveMessage)json코드 복사{ .. 2024. 7. 19.
TIL내일배움캠프 13주차 Spring Boot와 React 통합 오늘의 키워드Spring Boot와 React 통합분리된 저장소 방식단일 저장소(모노레포) 방식Full Stack Application BundlingDocker 및 컨테이너화오늘의 내용Spring Boot와 React 통합 방법1. 분리된 저장소 방식구조: 백엔드(Spring Boot)와 프론트엔드(React)를 각각 독립적인 저장소에서 관리한다통합 방법: RESTful API를 통해 통신하고 React에서 Axios 같은 HTTP 클라이언트를 사용하여 Spring Boot 백엔드와 통신한다배포: 각각 독립적으로 Heroku, AWS 등 클라우드 플랫폼에서 배포한다2. 단일 저장소(모노레포) 방식구조: 백엔드와 프론트엔드 프로젝트가 하나의 저장소에서 관리해 루트 디렉터리에 backend와 fronten.. 2024. 7. 13.
TIL내일배움캠프 13주차 CommonResponse 오늘의 키워드CommonResponse 기능API 응답 일관성오늘의 내용CommonResponse 기능CommonResponse는 API 응답의 일관성을 유지시켜 주는 클래스이다. 다양한 API응답을 통일된 형태로 제공해 클라이언트와 서버 간의 상호작용을 명확하게 해 주고 유지보수성을 높여준다. CommonResponse를 사용하면 클라이언트가 예측 가능하게 응답을 처리할 수 있어 디버깅이 용이해준다. 주요 필드 및 설명:requestId: 요청 ID로, 요청이 성공한 경우에만 전달된다returnCode: 반환 코드로, 요청이 성공하면 0, 실패하면 0 이외의 값이 전달된다returnMessage: 반환 메시지로, 요청이 성공하면 success, 실패하면 실패 이유가 전달된다CommonResponse 클.. 2024. 7. 11.
TIL내일배움캠프 13주차 JPA심화 JPA 자동 쿼리 생성 오늘의 키워드JPA 자동 쿼리 생성JpaRepository 쿼리 기능Spring Data JPAOptional 처리메서드명 간소화비즈니스 로직 통합오늘의 내용테이블 객체로 자동 쿼리 생성JpaRepository 쿼리 기능Spring Data Common의 CRUDRepository + PagingAndSortingRepository 쿼리 기능 제공.Repository는 Marker Interface로 특별한 기능은 없음.Repository ~ JpaRepository는 @NotRepositoryBean이 붙어있는 인터페이스.JpaRepository를 사용하면 SimpleJpaRepository 구현체 빈이 등록됨.2. 쿼리 실습 코드기본List findByNameAndPassword(String name.. 2024. 7. 10.
TIL내일배움캠프 13주차 JPA심화 JPA 테이블 매핑 오늘의 키워드JPA 테이블 매핑엔티티 객체 관리연관관계 매핑CascadeorphanRemovalFetchType오늘의 내용 JPA 테이블 매핑 기능@Entity객체 관점에서의 이름을 지정디폴트로 클래스명으로 설정됨엔티티의 이름은 JQL(JPA Query Language)에서 사용됨@TableRDB 테이블의 이름을 지정디폴트로 @Entity의 이름이 테이블 이름으로 사용됨주로 Entity 이름과 다르게 지정하고 싶을 때 사용@Id엔티티의 주키를 매핑자바의 모든 primitive 타입과 그 랩퍼 타입을 사용할 수 있음복합키 매핑도 가능@GeneratedValue주키의 생성 방법을 매핑생성 전략과 생성기를 설정 가능@Columnunique, nullable, length, columnDefinition 등의 .. 2024. 7. 8.
TIL내일배움캠프 12주차 JPA심화 JPA Repository 오늘의 키워드JPA RepositoryORM (Object-Relational Mapping)영속성 (Persistence)오늘의 내용JPA Repository 쿼리 코드 작성JPA Repository를 사용하면 데이터베이스와 상호작용하는 코드를 간단하게 작성할 수 있다. Spring Data JPA에서는 다양한 방법으로 쿼리를 정의할 수 있다파생된 쿼리 메서드 (Derived Query Methods)메서드 이름을 기반으로 쿼리를 생성한다public interface TutorialRepository extends JpaRepository {List findByPublished(boolean isPublished);List findByTitleContaining(String title);} @Query.. 2024. 7. 5.