분류 전체보기(255)
-
[기술면접] Spring - 1/3
Spring 핵심 키워드 AOP IOC DI Spring MVC 구조 빈, 컨테이너 개념 디자인 패턴 [기술면접] Spring - 1/3의 목차 WAS(Web Application Server)와 WS(Web Server)의 차이 Spring Framework @RequestBody, @RequestParam, @ModelAttribute의 차이 Spring MVC 제어의 역전 (IoC, Inversion of Control) 스프링 빈의 라이프사이클은 어떻게 관리되는지 설명 Spring Filter와 Interceptor에 대해 설명하고, 사용 예시를 설명 관점지향 프로그래밍(AOP, Aspect Oriented Programming)는 무엇이고, 언제 사용할 수 있을까요? 😎 WAS(Web Appli..
2023.03.02 -
[기술면접] 프로그래밍 공통
[기술면접] 프로그래밍 공통 목차 Restful API 프레임워크와 라이브러리의 차이 Call By Value와 Call By Reference의 차이 CORS 절차지향 프로그래밍과 객체지향 프로그래밍의 차이점 OAuth 2.0의 흐름 CSRF에 대해 설명하고, 이를 막기 위한 방법 대칭키, 비대칭키 암호화 방식 TDD(Test-Driven-Development) MSA(Microservice Architecture) 😎 Restful API에 대해 설명해주세요. Restful API는 HTTP 통신을 Rest 설계 규칙을 잘 지켜서 개발한 API를 Restful한 API라고 합니다. Rest 설계 규칙은 URI는 정보의 자원만 표현해야 하며, 자원의 상태와 행위는 HTTP Method에 명시하는걸 말합..
2023.03.02 -
크롬 브라우저 쿠키 삭제 방법
개인 PC를 종종 남들에게 보여줘야 하는 경우가 생깁니다. 그때 제 검색기록이 다 보이면 민망할 때가 있는데요, 전 그래서 미리 크롬 쿠키를 삭제합니다. 방법만 알면 1분이면 후다닥 지울 수 있기에 유용하게 사용할 수 있습니다. 다만, 가끔 사용하는거라 잘 까먹어서 이렇게 기록으로 박제해두려 합니다. 주의! 로그인 했던 모든 사이트에서 로그아웃이 됩니다. 백업을 꼭 해두세요~ 시작합니다. 전 두가지 방법을 통해 쿠키를 삭제합니다. 첫 번째 설정 → 개인 정보 보호 및 보안 → 쿠키 및 기타 사이트 데이터 모든 사이트 데이터 및 권한 보기 → 모든 데이터 삭제를 클릭합니다. 이어서 바로 진행합니다. 두 번째 설정 → 개인 정보 보호 및 보안 → 인터넷 사용 기록 삭제 전체 기간 → 인터넷 사용 기록 삭제 ..
2023.02.17 -
[Cinemagram] 공통기능은 묶어보자 AOP, 마지막 확인 - (16)
이번 포스팅은 Cinemagram의 마지막포스팅입니다.물론, 계속해서 리팩터링 하거나 기능을 추가할 예정이지만 우선 이렇게 막을 내리고 추후에 작업을 해서 올리도록 하겠습니다. AOP란?Aspect Oriented Programming의 약자로 관점 지향 프로그래밍입니다. 그렇다고 객체지향프로그래밍은 버리겠다는 것이 아니라 추가로 적용 가능합니다. 예를 들어보겠습니다. 로그인 기능, 회원가입 기능을 구현하고자 할 때 로직을 기술해 보면 다음과 같습니다.핵심기능로그인 로직회원가입 로직1. username, password입력1. username, password, email, name입력2. DB에 SELECT쿼리 보냄2. DB에 INSERT함3. 로그인(세션) 두 기능의 핵심기능은 다르겠지만 공통적으로..
2023.02.13 -
[Cinemagram] 댓글 등록 및 삭제 - (15)
이번 포스팅에서는 댓글(Commnet) 등록과 삭제 기능 구현을 하겠습니다. 댓글 모델 만들기 어떤 필드가 필요할까요?누가어떤 내용을어떤 이미지에몇 시에 적었는지이렇게 필드를 구성한 후 연관관계를 잡아주면 됩니다. Comment@NoArgsConstructor@AllArgsConstructor@Getter@Entitypublic class Comment extends BaseTimeEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private int id; @Column(length = 100, nullable = false) private String content; @JoinColumn(nam..
2023.02.08 -
[타임리프] Session Id를 html, js에 가져다 쓰는 방법
토이프로젝트를 할 때 html이나 js로 sessionId가 넘어가지 않아서 애를 많이 먹었습니다. 오히려 자바 코드 짜는 것보다 이 부분에서 시간을 더 많이 쏟은 듯합니다. 그만큼 헷갈리고 다음에도 헷갈릴 가능성이 있기에 기록으로 남겨둡니다. html Controller @GetMapping("/user/{pageUserId}") public String profile(@PathVariable int pageUserId, Model model, @AuthenticationPrincipal CustomUserDetails customUserDetails) { ... model.addAttribute("sessionId", customUserDetails.getUser().getId()); return "..
2023.02.08