1. main method 1-1 프로그램을 실행하기 위해 JVM이 사용하는 표준 메소드이다. 1-2 public static 이유 - JVM이 public이 아닐 경우 접근할 수가 없고 static이 아니면 객체가 없으므로 접근할 수 없다. 2. main method 없이 프로그램 실행 2-1 자바 7 이후로는 불가능하다. 2-2 자바 7이전에는 static initialiser라는 방식이 있어 main method없이 가능했다. public class Main { static { system.exit(0); } } 2-3 Servlet이나 EJB 같은 프레임워크는 자체 lifecycle이 있어서 별도의 main이 필요 없다. 3. main메소드의 signature는 변경가능한가 3-1 불가능하다. J..
1. Identifier - 클래스, 메소드, 패키지, 속성, 변수 등을 식별할 수 있는 식별자 - 대소문자 가림 public class Demo { public static void main(String args[]) { int i = 20; } } 1-1 Demo, main, String, args, i 5개의 identifier가 있다. int는 keyword이다. 1-2 [A-Z], [a-z],[0-9], $, _ 사용가능. 첫글자는 숫자를 허용하지 않음 1-3 reserved name은 허용하지 않음 1-4 클래스 이름을 identifier로 사용가능함 String String = "TEST" 2. reserved words 2-1 literals, keywords 3. keywords 3-1 ..
0. 이 포스트는 이전 Fooball club예제를 REST로 다시 작성하는 시리즈의 일부이다. 1. 적용된 테크닉 1-1 JWT 생성 및 검증 1-2 OncePerRequestFilter 생성 및 등록 1-3 AuthenticationEntryPoint 작성 2. 이 포스트에서 할 내용 2-1 보안 설정하기 2-2 인증용 컨트롤러 만들기 2-3 JWT 유틸리티 생성하기 2-3 인증용 endpoint 작성하기 2-4 JWT 검증용 필터 작성하기 3. 보안설정하기 3-1 지난 포스트에서 안보이던 JwtRequestFilter가 보인다. 이것은 Request마다 JWT 검증용으로 사용한다. 3-2 필요한 곳에 인증을 적용하기 위해 skills, players, teams에 대한 접근을 USER권한 이있는 사..
0. 이 포스트는 이전 Fooball club예제를 REST로 다시 작성하는 시리즈의 일부이다. 1. 적용된 테크닉 1-1 전역에러 처리 클래스 설정 @ControllerAdvice 1-2 Rest Controller @Validated, @Valid 처리 1-3 Optional 처리하기 map - orElseThrow/orElseGet 처리 2. 이 포스트에서 작성할 내용 2-1 인증관련 연결 2-2 전역 예외처리 클래스 정의 2-3 Skill CRUD 구현하기 3. 인증 관련 연결하기 3-1 SecurityConfig 3-1-1 기본적인 인증을 UserDetailsService를 바로 이용하는 방식으로 정의 3-1-2 PasswordEncoder를 BCrypt방식으로 적용 3-1-3 csrf disa..
0. 이 포스트는 이전 Fooball club예제를 REST로 다시 작성하는 시리즈의 일부이다. 1. 적용된 테크닉 1-1 Data JPA Entity 작성하기 one to many, many to many 1-2 @MappedSuperclass, @Embedable, @Embedded, @Enumerated 1-3 외부 데이터베이스에서 초기 데이터 로딩 설정 2. 이 포스트에서 작성할 것 2-1 프로젝트 생성 및 jaxb와 jjwt 추가 2-2 폴더 작성 및 Entity 작성 2-3 데이터 베이스 확인 3. 프로젝트 생성 3-1 결국은 REST API를 작성하는 것이 목표이다. 3-2 데이터베이스는 MySql을 사용한다. 3-3 스프링보안을 적용하고 JWT를 사용한 인증을 사용한다. 3-4 Data J..
0. 지난 포스트는 이 포스트의 후속인데 순서가 뒤바뀌어 있다. 0-1 전체 소스도 아래부분을 포함하여 사용자와 팀과 매핑한 부분도 포함되어 있다. 0-2 아래 포스트를 보면 이전 포스트의 TeamController의 processTeamSetup 코드와 약간 다른데 0-2-1 더블클릭 방지를 위한 부분이 들어 있다. 0-2-2 첫 클릭시에 이미 SessionStatus가 complete되어 버리는데 0-2-3 더블 클릭시에는 세션 데이터가 없기 때문에 team 속성을 가지고 올 때 에러가 난다. 그 부분을 수정했다. Spring Security : Authentication 사용하기 1. Authentication은 인증 토큰이라고 할 수 있다. 1-1 인증토큰이라면 인증을 위한 정보를 가진 하나의 단..
1. Authentication은 인증 토큰이라고 할 수 있다. 1-1 인증토큰이라면 인증을 위한 정보를 가진 하나의 단위라고 생각하면 된다. 1-2 이 토큰은 정보를 담은 객체일 뿐 인증이 된 것일 수도 아닐 수도 있다. 2. Controller에서 entity를 저장할 때 유저정보와 연동이 필요한 경우 유용하게 사용할 수 있다. 3. 3가지 방식이 있는데 3-1 Authentication을 주입받아서 사용하기 3-2 Principal을 주입받아서 사용하기 3-3 @AuthenticationPrincipal을 사용하기 3-4 SecurityContext를 SecurityContextHolder에서 받아와서 사용하기 3-5 아래 소스로 설명한다. // Team Entity // 예제를 위해 User 속성..
0. 이미지는 인터넷 검색에서 가져온 내용이다. 개인의 정리 차원에서 작성한 내용이라 신경쓰지 않는다. 1. 스프링 보안 2가지로 큰 문제로 나눌 수 있다. 1-1 인증 1-2 권한(접근제어) 2. 인증 - 스프링은 권한에서 인증을 따로 떼낸 구조이다. 2-0 인증에 관해 인터넷에 수많은 포스트들이 있는데 아래 링크에서 아래 사진을 가져왔다. 2-0-1 찾아본 도식 중에서는 제일 좋은 것 같고 이 구조만 알아도 반은 먹고 들어간다. Spring Security : Authentication Architecture Here is the diagram for demonstrating list of classes and filters involved in spring security authentication..
- Total
- Today
- Yesterday
- 도커 개발환경 참고
- AWS ARN 구조
- Immuability에 관한 설명
- 자바스크립트 멀티 비동기 함수 호출 참고
- WSDL 참고
- SOAP 컨슈머 참고
- MySql dump 사용법
- AWS Lambda with Addon
- NFC 드라이버 linux 설치
- electron IPC
- mifare classic 강의
- go module 관련 상세한 정보
- C 메모리 찍어보기
- C++ Addon 마이그레이션
- JAX WS Header 관련 stackoverflow
- SOAP Custom Header 설정 참고
- SOAP Custom Header
- SOAP BindingProvider
- dispatcher 사용하여 설정
- vagrant kvm으로 사용하기
- git fork, pull request to the …
- vagrant libvirt bridge network
- python, js의 async, await의 차이
- go JSON struct 생성
- Netflix Kinesis 활용 분석
- docker credential problem
- private subnet에서 outbound IP 확…
- 안드로이드 coroutine
- kotlin with, apply, also 등
- 안드로이드 초기로딩이 안되는 경우
- navigation 데이터 보내기
- 레이스 컨디션 navController
- raylib