일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 생성자주입
- 스프링부트 도커
- java predicate
- 토비의 스프링
- Spring
- Atomicity
- 스프링 시큐리티 설정
- kotlin 리팩터링
- 자바 필터
- 스프링di
- 스프링 포매터
- IOC
- 동적파라미터
- 기능적 요구사항
- 비기능적 요구사항
- method refetence
- 그래프큐엘
- spring formatter
- 스프링
- kotlin ::
- 스프링시큐리티
- 소프트웨어의 품격
- jpa lazy
- 수정자주입
- 도커 이미지 빌드
- ioc컨테이너
- 정적팩토리메서드
- fetch join
- open-session-in-view
- jpa no session
- Today
- Total
목록분류 전체보기 (109)
공부기록
스프링은 웹 어플리케이션의 시작과 종료시 발생하는 이벤트를 처리하는 리스너인 ServletContextListener를 이용한다. 이 인터페이스를 구현해서 웹 애플리케이션이 시작될 때 루트애플리케이션 컨텍스트를 만들어 초기화하고, 웹 어플리케이션이 종료될 때 컨텍스트를 함께 종료하는 기능을 가진 리스너를 만들 수 있다. 스프링은 이러한 기능을 가진 위와 같은 ContextLoaderListener를 제공한다. ContextLoaderListener는 웹 어플리케이션이 시작할 때 자동으로 루트 애플리케이션 컨텍스트를 만들고 초기화해준다. 이 루트 어플리케이션의 디폴트 설정은 다음과 같다. 애플리케이션 컨텍스트 클래스 : XmlWebApplicationContext XML 설정파일 위치 : /WEB-INF/..
1. 자바스크립트에서 브라우저로 페이지 전환 요청을 보낼 수 있다. 단, 브라우저는 서버로 요청을 보내지 않아야한다. 2. 브라우저의 뒤로 가기와 같은 사용자의 페이지 전환 요청을 자바스크립트에서 처리할 수 있다. 이때 또한 브라우저는 서버로 요청을 보내지 않아야한다. 브라우저에는 히스토리에 state를 저장하는 스택이 존재한다. (브라우저 api의 pushState, replaceState, popState) componentDidMount(){ window.onpopstate = () => { ... }; } onClick1 = () => window.history.pushState('v1', '', '/page1'); onClick2 = () => wind..
로버트마틴 기계가 이해하는 코드는 누구나 작성할 수 있다. 하지만 사람이 이해할 수 있는 코드는 잘 훈련된 엔지니어만이 작성할 수 있다. 돌아가는 코드가 아닌 읽을 수 있는 코드를 작성하자. Why OOP ? Encapsulated! 데이터와 그 데이터를 조작하는 코드의 변경은 외부에 영향을 미치지않는다. 어떻게? 인터페이스를 통해. 프로시져를 실행하는 필요한 만큼만의 데이터를 가지게! 코드를 짤 때 어떻게 짜라? 나 말고 다른 사람이 내 코드를 유지보수한다 그 사람은 내 주소와 얼굴을 알고, 총을 갖고있다. 근데 그 사람은 미친사람이다! 아무리 변경안된다고 클라이언트가 말하더라도 변경되지않는 코드는 없다. OOP로 짜자 객체를 볼 때 데이터를 보지말고, 기능으로볼 것. WriticleService 좋아..
위와 같은 컨트롤러가 있다. 테스트코드는 아래와 같다. 테스트는 성공, 하지만 문제가 있는 테스트코드. 우리가 알고싶은 건 위 코드와 같은 helloWorld() 메소드를 실행했을 때의 리턴값이 "HELLO WORLD!"인지가 아니라, GET /api/helloworld 요청에 대한 응답이 "HELLO WORLD!"인지 알고싶은 것. 근데 웹 요청에 대한 테스트는 어떻게? MockMvc를 이용하자 MockMvcRequestBuilders.get("/api/helloworld") /api/helloworld 에 get방식으로 요청을 보낸다. .andDo(MockMvcResultHandlers.print()) 요청에 대한 응답을 MockResultHandlers.print() 메서드를 통해 콘솔에 출력한다...