본문 바로가기

Java267

Spring) 트랜잭션 처리 - @Transactional 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. 트랜잭션 처리 - Spring에서의 트랜잭션은 AOP로 처리됨 (보조업무) - 트랜잭션에 대한 Aspect, Advice은 이미 작성 되어있으므로 별도 작성할 필요 없음 pom.xml org.aspectj aspectjrt ${org.aspectj-version} org.aspectj aspectjweaver ${org.aspectj-version} root-context.xml 트랜잭션은 DB와 관련되어있으므로, root-context transaction-manager는 등록한 트랜잭션 매니저 빈을 가져다 사용한다는 의미이며, 기본 값으로 설정되어있기 때문에 생략 가능합니다. 다만, 트.. 2022. 8. 31.
Spring) 파일 업로드 처리 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. 파일 업로드 처리 a. 서버 컴퓨터 저장 // spring의 빈으로 등록 되어있음 @Autowired ServletContext application; @PostMapping("/boardEnroll.do") public String boardEnroll(Board board, @RequestParam(name = "upFile") List upFileList, RedirectAttributes redirectAttr) throws IllegalStateException, IOException { for(MultipartFile upFile : upFileList) { //log.debug.. 2022. 8. 31.
Spring) 게시글 작성 - 파일 업로드 처리를 위한 설정 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. 글쓰기 폼 Controller BoardController @GetMapping("/boardForm.do") public void boardForm() {} boardForm.jsp 첨부파일1 파일을 선택하세요 interceptor 처리 servlet-context.xml /board/**의 모든 요청을 적용하지만, /board/boardList.do는 제외하도록 하였습니다. Dto Attachment @Data @NoArgsConstructor @AllArgsConstructor @RequiredArgsConstructor public class Attachment { private i.. 2022. 8. 30.
Spring) 페이징 처리 (content, pagebar 영역) - RowBounds 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. BoardList 조회 DB 구조 -- 게시판 | 첨부파일 테이블 생성 create table board( no number, title varchar2(1000) not null, member_id varchar2(15), content varchar2(4000), read_count number default 0, created_at date default sysdate, updated_at date, constraint pk_board_no primary key(no), constraint fk_board_member_id foreign key(member_id) references .. 2022. 8. 30.
Spring) AOP - 특정 메소드 소요시간 계산, Escaping 처리, ErrorLog처리 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. Aspect로 특정 메소드 소요 시간 계산하기 StopWatchAspect @Component @Aspect @Slf4j public class StopWatchAspect { @Pointcut("execution(* com.ce.spring2.todo.controller.TodoController.insertTodo(..))") public void pointcut() {} @Around("pointcut()") public Object stopWatch(ProceedingJoinPoint joinPoint) throws Throwable { StopWatch stopWatch = new.. 2022. 8. 28.
Spring) AOP 흐름 이해하기, 원리 및 구조 파악 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. AOP 흐름 이해하기 관련 의존 추가 #9. AOP 관련 의존 추가 pom.xml org.aspectj aspectjweaver ${org.aspectj-version} #9.1 AOP 관련 어노테이션 등록 처리 servlet-context.xml LogAspect @Component @Aspect // AOP적으로 활용되기 위해 어노테이션 추가! @Slf4j public class LogAspect { // 모든리턴타입 todo패키지하위.모든클래스.모든메소드(타입이 있거나없거나) @Pointcut("execution(* com.ce.spring2.todo..*(..))") public v.. 2022. 8. 25.