본문 바로가기
TIL

[TIL] 2022년 3월 4주차

by happyhelen 2022. 3. 21.

 

 

  • 코드는 깃헙에 올리므로 여기서는 공부한 내용을 요약하는 식으로 정리합니다.

 

 

 

 

 

3월21일

  • 현재 페이지를 유지하면서, 새로운 url 에 요청하고 결과물을 받아오는 ajax 를 공부했다. 아이디 중복확인이나 이메일 중복확인 등의 기능에 사용된다.
  • xml 에 대해서도 공부했는데 지금은 json을 더 많이 쓰는 추세이지만, 공공데이터같은 경우에는 xml 이 사용된 곳이 많으므로 결국 둘 다 알아둬야 한다.
  • 동기/비동기 처리방식에 대해 잠깐 말씀해주셨는데 간략히 요약하면, 동기 처리방식은 한 작업이 완료될 때까지 계속 진행하는 것이고, 비동기 처리방식은 시간이 더 적게 걸리는 작업을 먼저 수행하고 다시 본 작업으로 돌아오는 식으로 진행되므로 진행 속도면에서 더 좋다.

 

세미 팀프로젝트

  • 오늘부터 각 기능조별로 코드를 작성하면 된다.
  • 그전에 저번주에 완성된 db 논리 및 물리 모델링을 바탕으로 sql 문을 만들어서 테이블과 인덱스, 시퀀스를 생성했다.
  • 그 후에 각 기능조별로, 그리고 개인별로 코딩에 들어갔다.

 

 

 

 

 

3월22일

  • SHA-256(단방향), AES-256(양방향) 암호화 알고리즘을 이용해서 비밀번호, 이메일 등 보안이 중요한 컬럼들에 적용하는 것을 공부했다.
    • 암호화 라이브러리는 security 폴더에 넣어야 한다.
    • 최신 버전도 있지만, 암호화 및 복호화는 예전 버전 그대로 쓰는 경우가 많다.
    • 암호화 한 데이터는 암호화해서 비교해야하고, 복호화 한 데이터는 복호화해서 비교해야 한다.
  • 회원가입 및 로그인 유지보수를 했다.
  • 회원가입시 입력한 아이디 및 이메일이 중복된 것일 때, val("") 로 값을 채우지 못하게 하면 submit() 이 자동으로 안되게 했다. submit() 은 모든 input 이 입력되었을 때 가능하게 되어있었기 때문이다.
  • Scope 영역은 사용 범위에 따라서 page, request, session, application 이 있는데 오늘은 page, request, session 을 공부했다. 기억할 것은 session 은 모든 jsp 에서 사용가능하다는 것! 로그인 처리시 중요하게 사용된다.
  • jsp 는 <%-- --%> 주석문을 써야 에러가 나지 않는다.
  • 클라이언트의 접속한 ip 를 request.getRemoteAddr() 를 통해서 알아왔다. 노트북과 핸드폰으로 했을 때 ip 를 확인했다.

 

세미 팀프로젝트

  • 제품관리 로직을 짜는데 앞서, 작성한 프로토타입을 보면서 jsp 를 먼저 작성중이다.
  • jsp 짜는데 시간이 쫌 걸릴 것 같다.

 

 

 

 

 

3월23일

 

  • 폼태그의 name, db 의 컬럼명, vo 에 변수명, 이 세 이름은 같아야 편하다.
  • WAS 서버는 휘발성이어서 껐다키면 정보가 날아가지만, 웹브라우저 디스크 공간에 저장해두면 계속 쓸 수 있다.
  • 예를 들어, '아이디 저장' 기능을 만들 때는 브라우저 디스크 공간에 저장해두면 편리하지만 민감한 정보라면 공공pc 보다는 개인pc 에만 저장하는 것이 안전하다.
  • 브라우저 디스크 공간은 로컬과 세션이 있는데, 세션은 브라우저를 껐다 키면 자동으로 삭제되지만, 로컬은 브라우저를 껐다 켜도 키와 값이 사라지지 않는다. 그래서 주로 이 로컬 스토리지에 아이디 저장을 위해 키와 값을 저장시킨다.

 

세미 팀프로젝트

  • jsp 를 만들고 있다.

 

 

 

3월24일

 

  • 어제에 이어 브라우저 스토리지를 공부했다.
  • 세션은 1회성 정보, 로컬은 다소 영구적인 정보를 저장하는 데 사용한다.
  • 브라우저 스토리지에 데이터를 저장해둘 때, 객체 자체를 저장하고 싶다면 두가지 방법이 있다.
    • 하나는 키-값 형식으로 객체를 풀어서 여러개로 저장하는 것이고
    • 다른 하나는 JSON.stringify 로 객체를 통째로 저장하고, 받을 때는 JSON.parse 로 객체화 하는 것이다.
    • stringify 는 객체형식 그대로 문자열로 바꾸는 것이다.
  • modal 에서 blur 상태가 되었을 때 modal 이 닫히게 하지 않고, 지정 버튼(예를 들어 '닫기')을 클릭했을 때만 닫히게 하려면 data-backdrop="static" 을 한다.
  • iframe 에서 단지 내용만 보여줄 때에는 (예를 들어 이용약관같은 것들..) src 에 html 을 연결하고, 페이지 이동을 해서 기능을 작동시키려면 .up 등의 매핑uri 를 주면 된다.
  • SMTP 를 사용하기 위해 구글계정을 하나 더 만들고 관련 설정을 해두었다.
  • jdk 버전차이로 SMTP 를 사용하기 전에 사전에 jdk 와 jre 의 security 파일을 수정했다.

세미 팀프로젝트

  • 액션단과 DAO 를 작성하고 있다.

 

 

 

3월25일

  • iamport 를 사용해서 결제 기능을 만드는 것을 공부했다.

세미 팀프로젝트

  • 액션단과 DAO 를 작성하고 있다.
  • 점점 프로젝트의 비중이 높아지고 있다.

 

 

 

 

3월26-27일

  • 프로젝트를 했다. 해도해도 끝이없다 ㅎ
  • TIL 쓸 시간도 내기가 힘들었다 ㅠ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'TIL' 카테고리의 다른 글

[TIL] 2022년 3월 3주차  (0) 2022.03.16
[TIL] 2022년 3월 2주차  (0) 2022.03.07
[TIL] 2022년 2월 5주차 ~ 3월 1주차  (0) 2022.02.28
[TIL] 2022년 2월 4주차  (0) 2022.02.21
[TIL] 2022년 2월 3주차  (0) 2022.02.15