일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- 자바스크립트
- CSS
- 서브쿼리
- maven
- 프레임워크
- 프로그레시브웹앱
- javaprogramming
- HTML
- tdd
- javascript
- js
- PWA
- Oracle
- sql
- TodayILearned
- progressive web app
- SpringMVC
- 메이븐
- JavaScript 내장객체
- 자바프로그래밍
- 생활코딩
- springaop
- web
- framework
- 오라클
- TIL
- sqldeveloper
- 국비지원
- 스프링
- mybatis
- Today
- Total
목록framework (14)
1cm

2022. 01. 15 java로 이전 실습문제 작성하기 이전 SpringDI에서 작업했던 owner, pet 폴더를 aop 폴더 밑에 복사해준다. -> 패키지명 변경됐으니 수정도 해준다. Owner기준으로 테스트 생성 @ExtendWith, @ContextConfiguration 어노테이션 적어주고, RootConfig파일을 만들어준다. 그리고 나서 OwnerTest.java 작성 package com.kh.aop.owner; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.*; import org.junit.jupiter.api.BeforeEach; import ..

2022. 01. 14 Spring AOP 구조 * AOP를 적용하면 실제 타겟 클래스, 비즈니스 로직 등만 작성하면 되고, 실제 런타임 시 aspect를 통해 부가 기능이 Weaving되는 형태로 처리가 된다고 보면 된다. -> 부가적인 기능에 대해서는 실제 작성하는 코드에서는 신경쓸 필요가 없음 Spring AOP 특징과 구현 방식 - XML 기반의 aop 네임스페이스를 통한 AOP 구현 1. 부가기능을 제공하는 Advice클래스 작성 2. XML 설정 파일에 를 이용해서 Aspect를 설정(즉, 어드바이스와 포인트컷 설정) - @Aspect 어노테이션 기반의 AOP 구현 1. @Aspect 어노테이션을 이용해서 부가기능을 제공하는 Aspect 클래스를 작성한다. (이 때, Aspect 클래스는 어드..

2022. 01. 13 Spring DI : Annotation - 자동으로 빈을 생성하고 주입받는 것을 Annotation을 통해 진행한다. Spring Annotation 방식 - XML 파일(설정 파일)에는 구동시킬 필수 요소만 작성하고 소스코드에 Annotation으로 표시하여 구동하는 방식 -> 필수요소? : Spring Annotation 기본 설정 - @Annotation 종류 Bean 등록 시 사용 @Component - 객체(컴포넌트)를 나타내는 일반적인 타입으로 태그와 동일한 역할 @Repository - 퍼시스턴스(persistence) 레이어, 영속성을 가지는 속성(파일, 데이터베이스)를 가진 클래스 ex) Data Access Object Class @Service - 서비스 레이..

2022. 01. 12 클래스패스에서 가져오는 것을 선호한다. name 대신에 index를 사용해서 구분도 가능하다. 스프링 3.0부터 지원되는 xml namespace c와 p를 추가시켜줬다. (xmlns:c, p) c:namespace 활용 ref가 없는 애들 : 리터럴 값을 넘겨줄 때 사용하게 됨 ref가 있는 애들 : 다른 bean을 참조하기 위해 씀 기존 namespace보다 간결하게 작성할 수 있다. -> 생성자의 인자값을 bean태그의 속성값으로 선언하기 위해서 사용한다. 아니면 몇 번째 인자번호인지 넣어서도 사용할 수 있다. 생성자의 매개값이 하나일 경우 c_="매개값"으로도 표현이 가능하다. xmlns:p 적용 : c처럼 일반 리터럴일 경우 ref가 없는 것으로, 다른 bean을 참조할 ..

2022. 01. 11 인터페이스 구현 평가 문제 대부분이 mybatis에 관련된 문제가 나왔다. 생각보다 어려운 편은 아니었던 것 같은 느낌..인데 이제 시험 보는 날은 뭔가 마음이 좀 편해진다. 커리큘럼 초반엔 수업때보다 시험이 어질어질했는데, 이젠 수업이 더 어질어질하다.

2022. 01. 10 스프링 개요 Spring Framework란? 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크로 간단하게 스프링(Spring)이라고도 불림. 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있으며, 대한민국 공공기관의 웹서비스 개발시 사용을 권장하고 있는 전자정부 표준프레임워크의 기반 기술로써 쓰이고 있음 Spring Framework의 특징 DI (Dependency Injection) 의존성 주입 설정 파일이나 어노테이션을 통해 객체간의 의존 관계를 설정하여 개발자가 직접 의존하는 객체를 생성할 필요가 없다. Spring AOP (Aspect Oriented Programming) 관점 지향 프로그래밍 트랜잭션, 로깅, 보안 등 여러 모듈, 여러 계층에서 공통..

2022. 01. 07 MyBatis 정리 1, 2교시 중간때 까지는 이전에 했었던 Mybatis를 전체적으로 다시 훑어보았다. log4j 로그란? - 소프트웨어에서 발생하는 이벤트를 기록하는 것 - 파일로 대부분 관리하게 된다. -> 왜 중요할까? -> 소프트웨어에서 문제 발생 시 문제 지점을 찾을 수 있고, 사용자의 행위 기록도 가능함(데이터 분석) log4j framework - 분산 처리 환경에서 여러 서버에 있는 로그들을 수집하는 역할도 한다. - 가장 오래됐다. logback - log4j의 단점들을 개선해서 만들어진 프레임워크 log4j2 - 가장 최근에 나온 프레임워크 - logback보다 좀 더 빠르고, logback에서의 문제점들을 개선했다. 로그 작성 시 정확하게 들어가야 하는 사항 ..

2022. 01. 06 MyBatis를 활용한 게시글 등록 / 수정 / 삭제 - 전 날 작업한 것들로 INSERT, UPDATE, DELETE 작업 진행 -> 기존 SAVE 메소드 기능 1) 데이터베이스 INSERT : 값이 존재하지 않을 경우 INSERT 2) 데이터베이스 UPDATE : 이미 존재하는 값일 경우 UPDATE 수업 제대로 진행하기 전에 각각의 테스트 메소드들에게 Display 어노테이션을 붙여줬다. > 전체 : BoardService 테스트 > findAllTest (검색 기능 적용) : 게시글 목록 조회(검색 기능 적용) 테스트 > getBoardCountTest : 게시글 수 조회(필터 적용) 테스트 > findAllTest : 게시글 목록 조회(필터 적용) 테스트 > findBoa..

2022. 01. 05 동적쿼리 / 게시글 조회 실습 > BoardServiceTest.java @ParameterizedTest @MethodSource 위 테스트에 파라미터를 전해줄 메소드를 만드는 작업 그리고 밑 부분에 메소드를 만들어 줌 public static Stream filterProvider() { // Stream 만들어서 리턴, 안에는 파라미터로 쓸 Arguments 리스트를 만들어서 넘겨줌 return Stream.of( Arguments.arguments((Object) new String[]{"B2", "B3"}), Arguments.arguments((Object) new String[]{"B1"}) ); } 여기서 반환해주는 값을 가지고 파라미터로 쓸 것임 @Parameter..

2022. 01. 04 페이징 처리, 동적 SQL 실습 동적 SQL 실습 > board-mapper.xml mapper 내의 resultMap의 type에 풀 패키지 명을 적어주는 것은 비효율 적이므로 mybatis-config.xml -> 내에서 별칭을 부여해준다. 별칭을 부여해준 뒤 다시 board-mapper.xml로 돌아와서 resultMap의 type을 별칭으로 적어주면 자동으로 적용이 된다. resultMap 내부 작성 id : 테이블에 저장, 조회된 pk값을 객체 특정 필드에 매핑해줄 때 사용. id-property : Board 타입으로 만들어지는 객체의 필드명 (Board.java에서 가져와서 적어줌 - 아래 이미지) id-column : 조회된 결과에서 pk에 해당하는 컬럼명 그리고 아..