전체 글(160)
-
2023.07.17 TIL
(1) Oracle Cloud - 데이터베이스를 내 컴퓨터에 설치해놓고 접속을 하게 되는 식으로 진행되었다면(우리 컴퓨터에는 was, DB가 있다. 그 was(tomcat)에 어떤 프로젝트를 add 해놨냐 하면 -> 127.0.0.1:1521 이런 식으로 내 컴퓨터에서만 접속할 수 있게 해놓았다) , 평소에 사용하는 개인컴퓨터를 서버로 사용하게 된다면 외부에서 내 컴퓨터에 공격이 들어올 수도 있다. - Oracle cloud는 DB와 관련된 것인데, 그 DB를 빌려서 사용하게 되면 127.0.0.1 에 접속하지 않아도 된다. - 전세계 어디서든 해당 db에 접속할 수 있게 된다. (2) 컴퓨터 구조 1. CPU, RAM, HDD - CPU는 사람으로 치면 두뇌에 해당한다. 암산으로만 하면 힘드니까 기억해..
2023.07.17 -
2023.07.14 TIL
(1) 예외를 처리하는 법 -> ControllerAdvice package com.kh.app.handler.exception; import org.apache.ibatis.javassist.NotFoundException; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; import com.kh.app.exception.LoginFailException; @ControllerAdvice(annotations = Controller...
2023.07.14 -
2023.07.13 TIL
(1) 다양한 메소드가 사용가능 할때 RestAPI를 어떻게 작성하는가? - 여러 개의 메소드를 사용가능 할때, 같은 URL을 만들어놓고 메소드만 가지고 분리해서 사용하는 경우가 있다. (2) CSR방식 - model에 담아서 포워딩 하는 것이 아니라 Responsebody 어노테이션 받아서 그대로 VO를 내보내준다. - 백엔드 개발할때는 Dao -> Service -> Controller 순으로 만든다. - Board와 관련된 도메인에 대해서 기능을 만들때, 어떤 기능을 만들지 고민을 하게 된다. 그 기능에 맞춰서 메소드를 준비해줘야 한다. - 이 메소드에 해당되는 것부터 작성을 해준다. Sql먼저 쭉 만들고 -> DAO -> SERVICE -> CONTROLLER 순으로 작업을 하게 된다.(컨트롤러는..
2023.07.13 -
2023.07.12 TIL
(1) Spring Security 객체를 Servlet-Context.xml에 추가하면 에러가 나는데 Root-Context.xml에 추가하면 에러가 안나는 이유 - 스프링을 실행하면 컨테이너에 bean들을 만든다. dependency에 뭔가 만족되지 않는 이유는 servlet바구니 안쪽에 bcryptPasswordEnconder를 만들어주었는데도 MemberService 측에서 찾지 못하게 됨. - root바구니 안쪽에도 MemberService 객체가 만들어져 있고 인코더를 필요로 하고 잇는데 servlet-context에 접근할 수 없어서 에러가 난 것이다. - root-context에 encoder를 추가하면 root와 servlet 모두다 접근이 가능하다. 그래서, root-context.xm..
2023.07.12 -
2023.07.07 TIL
[1] Cookie - 클라이언트 측에 저장한다. - key, value 형태로 저장된다. - 서버가 쿠키를 만들어서 클라이언트 측에 전달한다. - member/login 을 하면 요청받은 서버가 Cookie를 하나 만들어서 그 쿠키를 기억해서 클라이언트에 전달함. - 광고를 볼 때, 체크박스 체크하면 24시간 동안 광고 안보이기나 아이디 저장을 누르면 항상 기억되게 만든다거나 할 때, 쿠키가 사용된다. - 저장된 쿠키는 요청을 보낼 때마다, 포함되어서 보내진다. (1) 서버에서 쿠키를 구워서 클라이언트한테 주는 방법 1. 쿠키 생성 path : 현재경로 기준으로 쿠키가 만들어짐 기본적으로는 path가 현재경로 기준이 됨 - 하지만, path를 설정할 수 있음 - 만료시간을 설정할 수 있음 2. resp..
2023.07.07 -
2023.07.03 TIL
(1) AOP란? - AOP는 Aspect Oriented Programming이다. 특정 관점에 대해서 프로그래밍을 하는 것이다. - 현재까지의 작업 내용을 Controller, Service, Dao 이렇게 했었는데 AOP는 서비스 관점에서 프로그래밍을 한다는 것이다. - 예시를 들자면 db 왔다갔다 할 때, 시간이 꽤 걸린다. 프로그래밍이 느리다 싶으면 was, db랑 통신할 때(dao)에서 db까지 왓다갔다할때, 좀 오래 걸릴 수가 있다. - 이게 느리다 싶으면 쿼리문에 문제가 있는거 아닌가 확인할 필요가 있다. 그래서 dao에 log를 활용해서 쿼리문들이 실행되는 시간을 측정할 필요가 있다. - 특정 기능 하나에다가 추가하는게 아니라 모든 기능에 추가할 수 있다. - dao를 타겟으로 삼아서 쿼..
2023.07.03