Notice
Recent Posts
Recent Comments
Link
«   2024/10   »
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
Tags
more
Archives
Today
Total
관리 메뉴

뇌약간고침

D-26 본문

Project/과정 기록

D-26

minulbora 2024. 4. 16. 17:54

오늘 한 일

(0416)

아파트 데이터 수정

css 수정

지도 띄우기

필터 정리하기

리스트 가져오기

페이징(시간 되면) > 무한 스크롤

클립보드

https://brush-up.github.io/java/java-annotation-01/


어노테이션 관련

@Data와 함께 @NoArgsConstructor를 사용하면 기본 생성자가 자동으로 생성되며, 이 생성자는 모든 필드를 null로 초기화합니다.



왜 타임리프를 쓰기로 했는지 잘 정리해둬야 겠다

strings를 활용해서

...

정해야 할 부분:

글자 자동완성은 어떻게 할지

 

 

 

우선 아파트 데이터에 살짝 잘못 들어간 데이터가 보여서 수정했다.

그것 외에도 이름이 잘못 들어간 테이블 수정했다.

ALTER TABLE B_INSERT_ITEM RENAME TO B_INTEREST_ITEM;

 

css 는 거의 완료했고, 합의된 부분이 아니긴 한데 지도 api 가져와서 띄워놨다. 

여기서 body 에 원래 적용된 css 때문에 속을 좀 썩였는데 결국 % 대신  px 쓰기로 스스로와 합의했다. 

서체는 하남시 서체 쓰기로 했다. (라이선스 확인 完) 

https://noonnu.cc/font_page/1144

 

눈누

하남다움체 - 하남시

noonnu.cc

 

사실 나 혼자 고른건데 아마 다른 사람들도 적용할 수 있을 것 같다. 

리스트 가져와서 타임리프 사용해서 화면에 띄우는 것 까지 했다. 

부트를 처음 쓰다보니 쓸 수 있는 간편한 어노테이션이 많은데, 그걸 제대로 모르니 찾아가면서 하고 있다. 

@Data 어노테이션에는 (롬복) 기본 생성자가 생성되는데 모든 필드를 null 로 초기화한다. 

sql의 경우 다시 고치기 귀찮아서 한 번에 조건값까지 넣어서 설계했다. 

SELECT B.ITEM_NUM, 
       NVL(B.USER_ID, '' ) AS USER_ID,
       NVL(B.ITEM_NAME, '') AS ITEM_NAME, 
       NVL(B.ITEM_ADDRESS, '') AS ITEM_ADDRESS, 
       NVL(C.ITEM_AREA, 0.0) AS ITEM_AREA, 
       NVL(B.ITEM_ADDRESS_DETAIL, '') AS ITEM_ADDRESS_DETAIL, 
       NVL(B.ITEM_PTYPE, '') AS ITEM_PTYPE, 
       NVL(B.ITEM_STATUS, 'N') AS ITEM_STATUS, 
       NVL(B.RECOMMEND_ITEM, 'N') AS RECOMMEND_ITEM, 
       B.ITEM_COUNT, 
       NVL(C.ITEM_INTRO, '') AS ITEM_INTRO, 
       NVL(C.ITEM_DEPOSIT, 0) AS ITEM_DEPOSIT, 
       NVL(C.ITEM_MONTH_PRICE, 0) AS ITEM_MONTH_PRICE, 
       NVL(C.ITEM_BUILD_DATE, '') AS ITEM_BUILD_DATE, 
       NVL(A.FILE_NAME, '') AS FILE_NAME,
       NVL(I.ITEM_NUM,'') AS LIKE_ITEM
  FROM B_ITEM B, (SELECT ITEM_NUM, FILE_NAME
                    FROM (SELECT ITEM_NUM, FILE_NAME, ROWNUM AS rn
                            FROM B_ITEM_FILE
                           ORDER BY FILE_NUM ASC) 
                    WHERE rn = 1) A,
       B_ITEM_DETAIL C,
       B_INTEREST_ITEM I
 WHERE B.ITEM_ITYPE = 'A'
   AND B.ITEM_NUM = C.ITEM_NUM(+)
   AND B.ITEM_NUM = A.ITEM_NUM(+)
   AND B.ITEM_NUM = I.ITEM_NUM(+);
   AND B.ITEM_ADDRESS LIKE '%%'
   AND B.ITEM_NAME LIKE '%%' 
   AND C.ITEM_AREA >= 10;
   --로그인 되어있을때만 아래 조건 추가
   AND I.USER_ID = '';

파티션 쓰면 좀 더 간단한데 내가 더 편한 방식으로 했다. 쿼리 짜는데는 30분? 도 안걸렸는데 모델 만드는데 시간을 많이 사용했다. 

파티션 써야 하나? 고민되는게 파티션 쓰면 from 절에서 left 조인으로 가져오니까 데이터 양이 많으면 속도 차이가 나지 않을까.. 싶음. 

근데 이건 뇌피셜이고 일단 구현한 다음에 생각을 좀 해봐야겠다. 

전체적으로 기능을 어떻게 구현할 것인지가 나와야 모델도 여러번 수정 안하고.. 그럴텐데. 

아무튼 최대한 효율적으로 하기로 했다. 

내가 구현이 제일 빨라서 아마 내일은  상세페이지를 미리 해서 팀원들에게 배포할 것 같다. 

합칠 때 어려워서 원본(템플릿에 적용된) css 파일은 안 건드는 방향으로 수정하고 있는데 그래도 합칠 때 오류가 있을 것 같다. 

java.sql.sqlsyntaxerrorexception: ora-01722: 수치가 부적합합니다

오후에는 한 시간 넘게 위 오류 해결하느라고 시간을 썼다. 어딘가에서 오류가 생겼는지 결국 모르겠다... 

(oracle 에서 계속 되는데 java 에선 계속 안되길래 다시 한 번 복붙함) 

뭐 어디서 하나 잘못됐겠지.. 내가 잘못 했겠지.. 

마지막으로 드디어 패키지명을 정했다! 

내가 낸 아이디어가 되어서 기쁘다...