일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 테스트 코드
- KEVISS
- stream
- 필드 주입
- 조합
- select_type
- redis
- 열 속성
- hashcode
- jwt
- jpa
- AOP
- 바이너리 카운팅
- cache
- DI
- Test
- Spring
- static
- SQL
- 인덱스
- VUE
- 생성자 주입
- lambda
- MSA
- docker
- 재정의
- equals
- java
- DDL
- StringBuilder
- Today
- Total
목록전체 카테고리 (196)
백엔드 개발자 블로그
java의 Object들에 재정의를 하는 equals의 경우 잘못 사용하면 끔찍한 결과를 초래할 수 있습니다. 그래서 equals는 객체의 논리적 동치성을 확인해야할 때 빼고 불필요한 경우에는 재정의를 하지 않는 것이 더 좋습니다. equals를 재정의하지 않아도 되는 상황 각 인스턴스가 본질적으로 고유한 경우 인스턴스의 논리적 동치성(logical equality)를 검사할 일이 없는 경우 상위 클래스에서 재정의한 equals가 하위 클래스에도 맞는 경우 클래스가 private, package-private이고 equals메서드를 호출할 일이 없는 경우 equals를 호출될 일이 전혀 없는 경우 다음과 같이 막을 수도 있다. @Override public boolean equals(Object o) {..
상황 InputStream, OutPutStream, java.sql.Connection과 같은 자원들은 사용 후에 close()메서드를 통해 자원을 회수 해줘야 합니다. 예측하기 어려운 성능 문제로 이어지기도 하기에 곡 close()를 해줘야 됩닌다. try-finally 문제점 try문과 finally 내에서 모두 예외가 발생하는 경우 디버깅이 어렵습니다. 코드가 지저분합니다. finally {br.close();} 코드를 작성할 작성 해줘야 됩니다. 1번 문제 해결을 위해 예외 설정 코드를 추가하게 되면 코드가 지저분해집니다. static String firstLiseOfFile(String path) throws IOException { BufferedReader reader = new Buffe..
JWT에 대해 설명하고 JWT 취약점을 발견 및 대응하기 위해 작성되었습니다. JWT 구조 [Base64(헤더)].[Base64(페이로드)].[서명] eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9. eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6Illlc29uZyBMZWUiLCJpYXQiOjE1NzQ3NTk2OTZ9. NHbhguwzhrt0wDhT26rIMfhyCM6oIevtxDSvAC_0N9A 헤더(Header) { "typ" : "JWT", "alg" : "HS256" } 페이로드(Payload) { "sub" : "1234567890", "name" : "kep", "iat" : 1574759696 } 서명(Signature) HMACSHA256(base64Ur..
프로젝트를 하다보면 삭제 여부를 알수 있는 컬럼에 데이터가 값을 넣어서 표현하는 경우가 있습니다. 이건 왜 쓰는 것일까? 쓴다면 주의할 점은 무엇일까? 궁금증이 생겨 글을 작성해봅니다. Delete 종류 Soft Delete : UPDATE 명령어를 사용하여 삭제 여부를 알수 있는 컬럼에 데이터가 값을 넣어서 표현합니다. Hard Delete : SQL의 DELETE 명령어를 사용하여 직접 데이터를 삭제하는 방법입니다. 사용하는 이유 Soft Delete : 삭제를 해도 삭제하기전의 데이터를 보관해야 할 경우에 논리삭제를 사용합니다. Hard Delete : 삭제 대상인 데이터가 필요없을때 (추후에 조회할 필요가 없을때) 사용합니다. Soft Delete의 문제점 복잡성 증가 : delete에 대한 표시..