//Skip to content
- TDD
- mokito 에서 spy
- 실제로 객체를 생성해서 테스트 할수 있다.
- argument.capture()는 메소드가 실행했을때의 객체를 복사한다.
- 회귀테스트 : 소스는 복잡하게 연결되어 있다. 작은 부분이 수정되면 모든기능을 다시 테스트해야한다.
- Agile + TDD
- 개발
- 개발하면서 문제가 있다면 실시간으로 수정해야한다.(나중에 하면 망한다.)
- 코드는 시간이 흐르면 조금씩 망가진다. 끊임 없이 ODD와 패턴 구문들을 적용해서 리팩토리 해야한다(Test + 리팩토링은 같이 하는 것이다)
- 소스를 수정하면 기존 Test코드를 실행하여 이상이 없는지 확인하면 이상이 없는것이다.
개발 <-> 수정(리팩토링<-실시간)
- Agile
- 짧은 주기로 개발 ,개발 수정, Test를 반복한다.
- 마크업
- HTML : 태그가 정해져있다. 브라우저에서 읽는다.
- XML : 확장가능한 마크업 언어이다, 태그가 정해져 있지 않다. 데이터를 표현한다. 최소 1개이상의 요소가 있어야한다.(시작tag+내용+종료tag로구성), 제일 바깥쪽 요소는 Root Element이다.
- Web Maven Project
- HttpServlet은 톰캣이 가지고 있다. 그래서 메이븐 설정에 서블릿을 추가하고 클래스때만 사용하게 설정한다.
- Servlet 3.0부터는 web.xml말고 JAVA config(ServletContainerInitializer)로 설정이가능하다
- WAS는 web.xml을 먼저 찾고 classloader 에서 ServletContainerInitializer을 구현한 class를 찾는데 그 시간이 오래걸릴수도 있다.
- 상태유지
- 쿠키
- 1. 브라우저가 서버에 요창할때 브라우저에서 쿠키가 없으면 서버는 쿠키(key=value)를 만들어 보낸다
2. 브라우저가 같은서버에 재 요청시 쿠키를 자동으로 가지고간다.
- key와 value는 문자열만 가능하다.
- 쿠키개수가 제한이 있다
- 보안문제가 있다.
- 쿠키는 new를 통해 생성하여 응답한다.
- 톰캣같은 경우는 jsessionid를 자동으로 만들어서 보낸다.(WAS마다 다르다.)
- 세션
- request.getSession을 입력하면 처음이면 sessionId를 만들고 처음이 아니면 기존 sessionId를 이용한다.
- 브라우저가 보낸 요청데이터를 토대로 세션id를 만든다.(String key = Object value)
- 새로운 브라우저가 요청할때마다 HttpSession 자료구조를 만든다.
- 다양한 값이 저장가능하다.(객체도)
- request한테 정보를 받아서 세션id 여부를 파악하여 첫 요청이면 Httpsession을 통해 쿠키데이터 값을 기반으로 값을 만들어서 쿠키에 넣어서 반환한다.
- WAS에 따라서 처음 요청시 자동으로 만들어서 보내는경우도 있다.
0 개의 댓글:
댓글 쓰기