일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 코드트리
- objecterror
- 의존관계
- 김영한
- 추상클래스
- 스프링
- 코딩테스트
- html form
- 오블완
- 스프링컨테이너
- HttpServletResponse
- fielderror
- 테스트코드
- 싱글톤
- 참조변수
- 오버라이딩
- 코드트리조별과제
- @configuration
- java
- http 메시지 컨버터
- 다익스트라
- 프로그래머스
- equals()
- 인터페이스
- 백준
- 프록시
- 예외와 트랜잭션 커밋
- 서블릿
- DI
- 티스토리챌린지
- Today
- Total
목록전체 글 (182)
minOS

ch9-4 hashCode()- 객체의 해시코드(hash code)를 반환하는 메서드- Object클래스의 hash code()는 객체의 주소를 int 로 변환해서 반환public native int hashCode(); - equals()를 오버라이딩하면,hasCode()도 오버라이딩해야 한다. 왜냐면 equals()의 결과가 true인 두 객체의 해시코드는 같아 야 하기 때문이다. ch9-5~6 toString(), toString()의 오버라이딩- toString(): 객체를 문자열(String)으로 변환하기 위한 메서드public String toString() { return getClass().getName() + "@" + Integer.toHexString(hashCode()..

ch9-1 Object클래스- 모든 클래스의 최고 조상 , 11개의 메서드만을 가지고 있다.- notify(),wait() 등은 쓰레드와 관련된 메서드이다. - 이 클래스는 java.lang 패키지에 속해 있으며, 모든 객체가 공통으로 가져야 할 기본적인 메서드들을 제공합니다. ch9-2 equals(Object obj) - 객체 자신(this)과 주어진 객체(obj)를 비교한다. 같으면 true 다르면 false. - Object 클래스의 equals()는 객체의 주소를 비교(참조변수 값 비교)public boolean equals(Object obj) { if (this == obj) { return true; //주소가 같으면 true } // 추가 내용}예제cla..

로그인 처리하기 - 서블릿 HTTP 세션1세션이라는 개념은 대부분의 웹 애플리케이션에 필요한 것이다. 어쩌면 웹이 등장하면서 부터 나온 문제이다. 서블릿은 세션을 위해 `HttpSession` 이라는 기능을 제공하는데, 지금까지 나온 문제들을 해결해준다. 우리가 직접 구현한 세션의 개념이 이미 구현되어 있고, 더 잘 구현되어 있다.HttpSession 소개서블릿이 제공하는 `HttpSession` 도 결국 우리가 직접 만든 `SessionManager` 와 같은 방식으로 동작한다. 서블릿을 통해 `HttpSession` 을 생성하면 다음과 같은 쿠키를 생성한다. 쿠키 이름이 `JSESSIONID` 이고, 값은 추정 불가능한 랜덤 값이다. `Cookie: JSESSIONID=5B78E23B513F50164..

로그인 처리하기 - 세션 동작 방식목표 쿠키에 중요한 정보를 보관하는 방법은 여러가지 보안 이슈가 있었다. 이 문제를 해결하려면 결국 중요한 정보를 모두 서버에 저장해야 한다. 그리고 클라이언트와 서버는 추정 불가능한 임의의 식별자 값으로 연결해야 한다. 이렇게 서버에 중요한 정보를 보관하고 연결을 유지하는 방법을 세션이라 한다.세션 동작 방식1)세션 로그인- 사용자가 `loginId` , `password` 정보를 전달하면 서버에서 해당 사용자가 맞는지 확인한다. 2)세션 생성 ,세션 관리- 세션 ID를 생성하는데, 추정 불가능해야 한다.- UUID는 추정이 불가능하다. ex)`Cookie: mySessionId=zz0101xx-bab9-4b92-9b32-dadb280f4b61`- 생성된 세션 ID와 ..

로그인 요구사항- 홈 화면 - 로그인 전 ㄴ회원 가입 ㄴ로그인 - 홈 화면 - 로그인 후 ㄴ본인 이름(누구님 환영합니다.) ㄴ상품 관리 ㄴ로그 아웃 - 보안 요구사항 ㄴ로그인 사용자만 상품에 접근하고, 관리할 수 있음 ㄴ로그인 하지 않은 사용자가 상품 관리에 접근하면 로그인 화면으로 이동- 회원 가입, 상품 관리 로그인 - 쿠키 사용쿼리 파라미터를 계속 유지하면서 보내는 것은 매우 어렵고 번거로운 작업이다. 쿠키를 사용해보자.쿠키서버에서 로그인에 성공하면 HTTP 응답에 쿠키를 담아서 브라우저에 전달하자. 그러면 브라우저는 앞으로 해당 쿠키를 지속해서 보내준다. 쿠키 종류- 영속 쿠키: 만료 날짜를 입력하면 해당 날짜까지 유지- 세션 쿠키: 만료 날짜를 생략하면 브라우..
연결된 예외(chained exception)- 한 예외가 다른 에외를 발생시킬 수 있다.- 예외 A가 예외 B를 발생시키면, A는 B의 원인 예외(cause exception)Throwable initCause(Throwable cause) : 지정한 예외를 원인 예외로 등록Throwable getCause() : 원인 예외 반환 // 원인 예외를 초기화하는 메서드 (한 번만 호출 가능) public synchronized Throwable initCause(Throwable cause) { if (this.cause != null) { throw new IllegalStateException("Can't overwrite cause"); } ..