| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- e-HR
- 첫 React
- 리액트
- 백준
- 웹 개발 면접 질문
- 프로젝트 후기
- 뷰 리액트
- CompositionAPI
- SBS 본사
- 경력직
- 알고리즘
- 백준알고리즘
- 뷰
- 대문자
- 오라클
- 사내시스템
- react
- 면접
- SBS 개발
- URL입력
- MySQL
- 트리
- 뷰 리액트 비교
- IT시스템개발
- 첫 리액트
- Vue.js
- 간단 프로젝트
- 쟈스
- 1차면접
- 자바
- Today
- Total
목록분류 전체보기 (88)
리주의 프로그래밍 공부
HttpSession으로 유저정보를 불러오던 과정을 모두 Principal 로 바꿔 유저 아이디를 가져왔다. >> 어려운 작업은 아니었다. 오히려 바꾸고나서 아이디를 가져오는게 더 편해졌다. aside에 있는 로그인 정보에 따른 숫자는 다시 인터셉터를 사용했다. >> 'ROLE_USER'가 필요한 view들은 /customer/user/** 형식으로 'ROLE_ADMIN'이 필요한 view들은 /admin/** 으로 계층을 나눠놨기 때문에 설정이 용이했다. 관리자에게 필요한 aside 숫자들은 아이디가 필요없기 때문에, HomeInterceptor에서 설정해주었다. 스프링 시큐리티도 세션이다보니, 로그인 정보가 유지되지 않아 가만히 있다가 권한이 필요한 구간으로 넘어가려할 때, 에러페이지로 넘어간다. >..
현재 스프링 시큐리티를 적용하여 홈페이지를 개편중이다. 부딪힌 문제 >> 이제까지 세션으로 권한 체크와 유저 정보를 가져왔는데, 이걸 다 바꿔주어야한다. > 많은 jsp 페이지와 컨트롤러를 바꿔줘야한다. 아이디 저장기능도 스프링 시큐리티의 핸들러를 사용하여 다시 구현해야한다. 스프링 시큐리티를 사용하면 보안 문제도 인증 및 권한 문제도 편해진다. 하지만 이는 처음부터 설정할때 해당하는 말인듯하다. 기존에 세션으로 구현했던 홈페이지라 모든걸 바꿔야한다. 이런걸 보면 홈페이지 리뉴얼 작업은 아예 처음부터 시작하는게 맞지않나 싶다. 쇼핑몰 홈페이지도 처음부터 제대로 구현하고 싶으나, 지금까지 해왔던걸 복습할겸, 내 코드를 남의 코드로 보는것처럼 수정하는것도 좋은 경험일듯하여, 시간은 더 걸리겠지만 끝까지 해보..
어제부터 프론트엔드 개발자들과 처음으로 협업을 하는 새 프로젝트를 진행하게 됐다. 이 쇼핑몰보다 더 나은 결과를 위해서 무작정 부딪히기 전에, 생각을 좀 더 많이하고 있다. 그 과정에서 이 쇼핑몰 홈페이지는 정말 막무가내로 짜여진 코드 덩어리라는걸 느꼈다. 그래서 당분간은 지금까지 짠 코드를 정리하면서 최적화할 예정이다. 처음부터 다시 만드는것보다 내가 만들어놓은 코드를 되돌아보며 수정하는게 나에게 더 도움이 될듯싶다. 패키지 정리 >> dao 정리 : Interface와 Imp한 파일 두개를 하나로 합치기 mapper 정리 >> entity에 따라 분리하기 계획 >> spring security 적용하기
aside의 숫자 값 유지 방법을 바꿨다. >> 기존까지는 session에 값을 유지시키며, 값이 변동되는 controller마다 session을 재설정해줬다. 하지만 이번부터는 interceptor를 사용하여 model에 값을 뿌려주는 방법으로 바꿔줬다. 이를 통해 느낀건, view의 계층을 잘 나눠야 interceptor 쓰기가 좋다는 것이다. > 문제는 tiles를 쓰기때문에, aside에는 처음 사이트 들어올 때와 로그인할 때만 값을 뿌려주면 되는데, 어느 페이지를 가던지 계속 함수가 실행된다. interceptor도 답이 아닐수도 있겠다는 생각이 들었다. 상품의 평가후기(Product DB에서는 column명 Like)를 어떻게 계산하는게 좋을까? >> 해당 상품의 평가가 등록될때마다 평균을 내..
상품을 평가할때, 주문 정보와 로그인 정보를 비교해줘야할까? >> 원래대로라면 당연히 맞는건데, 다른 경우가 생기는 일이 있을까? 있다면 확인처리를 해줘야겠지만, 뭐가 나은 코딩인가? 아직까지는 dao와 service 나누는 의미를 못느끼겠다. >> 그만큼 효율적인 설계를 하지 못하고 있다는 의미겠지? 상품평가에서 수정기능이 있어야할까? >> 자칫하면 악용될 수도 있는 수정기능, 사용 기한을 정해놓으면 될까? 동일한 사용자가 여러번 같은 상품을 구매했을때, 상품평가는 어떻게 해줘야할까? >> 텀을 두어야할까? 아니면 그냥 구매한 횟수만큼 상품평가를 할 수 있게 해줘야할까?
관리자의 주문관리 페이지에서 선택된 checkbox의 row 데이터 가져오기 >> jsp 파일의 일부분 주문자 상품명 수량 금액 주문일 / 배송 예정일 주문 상태 설정 // select의 id에 번호를 주기위해 varstatus 사용 ${o.userName} ${o.name} ${o.count} 원 / // select의 id는 state+번호 주문 준비중 주문 접수 완료 입금 확인 배송 준비중 배송 시작 배송 완료 아래는 자바 스크립트 일부분(사용자 이름과 주문상태만 팝업) 이 하나로 이틀정도 쓴것같다. 자바스크립트는 따로 공부해본적이 없어서 여기저기 찾아보면서 하느라 힘들었다. 백엔드로 일하게되어도 프론트엔드 기술을 조금 알면 소통하는데 더 좋지않을까? 공지사항, 주문, 유저정보 등 수정할 때, 안내..
관리자가 주문 목록을 확인할 때 >> 주문 목록 정렬을 사용자를 기준으로 해야할지? 주문날짜를 기준으로 해야할지? 아니면 두개 다 만들어야할지? 주문 상태를 갱신할때, 주문 상세 보기를 따로 만들어서 그 안에서 진행해야할까? > 전체 주문 목록에서 한번에 설정하면 안되는 이유가 있을까? aside의 session 값들을 로그인할 때, authority에 따라 설정 >> 페이지 컨트롤러에서 하려고하니, 모든 페이지 컨트롤러에 설정해줘야해서, 지금 생각해낸건 로그인 컨트롤러에서 session 설정 > 다만, 이제 이 세션값들을 어떻게 유지시킬 수 있을지? (세션에는 로그인 정보도 포함되기 때문에 모든 세션을 계속 유지시킬 수는 없다.) check box를 row로 받아올 수 있는 방법이 뭐가있을까? >> j..
order DB에서 주소를 저장할때, 우편번호는 따로 저장하는게 좋을까? 주문 화면에서 선택된 상품들을 출력할때, 이걸 다시 controller로 보내는 방법은? >> input type="hidden"으로 각 값들을 배열로 반환 > 작동은 되나, 각각의 값들을 각 배열로 받는건 좋지 못하다고 생각 주문번호를 20210227-00001 식으로 DB에 저장하는 방법은? >> 트리거 mapper에서 selectKey 사용 controller에서 문자열 더하기 > 지금 짜 놓은 코드(아래)대로라면 중간에 사용자 한명이 삭제하면서, 다른곳에서 만들때 같은 번호가 생성될 수 있다. // 주문번호 설정 int cnt = orderService.getCount() % 1000000; 그런데 주문 날짜를 따로 저장하는..