분류 전체보기 54

JAVA에서 메모리 주소를 직접 확인하는게 가능할까?

Java에서 객체의 메모리 주소를 직접 확인하는 것은 언어 자체에서는 제공하지 않는 기능이다. > 그러나, 객체의 해시 코드(hash code)를 통해 간접적으로 객체를 식별할 수 있다. 해시 코드는 객체의 메모리 주소와 관련이 있지만, 직접적으로 메모리 주소를 나타내지는 않는다. 객체의 해시 코드 확인System.identityHashCode(Object x) 메서드는 객체의 해시 코드를 반환한다. 이 값은 객체의 메모리 주소와 밀접한 관련이 있지만, 직접적인 메모리 주소는 아니라고 볼 수 있다. 그래도 이를 통해 두 객체가 동일한지 여부를 간접적으로 확인이 가능하다. System.out.println("### dto.getCreatedById() hash code: " + System.identity..

Develop/Java 2024.06.17

String 값을 equals를 사용하여 비교하기 ('=='를 쓰지 않는 이유)

System.out.println를 사용하여 값 두가지를 찍어 봤는데 값의 내용이 동일했지만 '=='을 사용했을때 제대로 작동하지 않았다. >> Stirng 타입은 값을 비교해줄때  equals를 사용해야한다. 왜냐면 메모리까지 비교를 하기 때문이다.dto.getCreatedById().getClass();memberDto.getMemberId().getClass();if(dto.getCreatedById() == null || memberDto.getMemberId() == null || !dto.getCreatedById().equals(memberDto.getMemberId())) { commonUtil.getJsonScriptMessage(messageUtil.getMessage("opera..

Develop/Java 2024.06.17

JPA를 통해 간단히 코드 몇줄로 쿼리 없이 카테고리별로 리스트 가져오기

- 전제 - 관리자에서 여러 타입의 문의 타입의 게시글을 하나의 게시판에서 볼 수 있게 하였다. * Enums를 사용해서 문의 타입을 다르게 띄움 기존에 관리자에서 게시판 목록에 데이터를 불러오기 위해 구현해두었던 ListService를 사용하려다 보니 카테고리 상관없이 전체 리스트 전체를 불러왔었다. > 그걸 하나의 list.html에서 카테고리 별로 나눠주기 위해 parameter로 해당 ${qnaType}을 넘겨주고 그걸 html에서 조건 비교를 해서 리스트를 뽑아오려고 했는데, 그렇게 되면 리스트가 로드 될때마다 모든 데이터를 findAll 해와야하기 때문에 서버가 느려질 수 있다는 단점이 있다는 생각을 하게 되었다. public class QnaResultController { private f..

Develop/JPA 2024.06.13

List와 Page의 차이점에 대해서

src 경로가 맞는데 화면에서 이미지를 불러오지 못했던 이유 ?.html에서 이미지를 불러올때 객체 안에 있는 eventImage에서 불러오는것인줄 알았는데 아니었음(왜냐하면 정상적으로 불러오고 있는 화면에서 eventImage를 불렀는데 null값으로 뜸)> 그래서 경로를 어떠한 방식으로 불러오는지 추적함 경로는 아무 문제 없이 잘 되어있었는데 DB에서 값을 안가져왔다는것을 알게됨그래서 EventViewServiceImpl(상세페이지)에서 이미지를 불러왔던것 처럼리스트에서도 불러오기 위해 EventListServiceImpl에서도 이미지 데이터를 불러와서set 해줘야한다고 생각했음 그러나 이건 View와 달리 단일값이 아닌 Page형태이기 때문에 for문을 돌려줘야겠다고 판단 >그리고 List와 달리 ..

Error Note 2024.06.07