profile
하이

Java Spring Security with API

WebSecurity로 Ajax로 JSON객체를 반환할 수 있는 API를 제작하는 법을 알아보겠습니다.우선 화면단에서 Ajax로 데이터를 전송할 Script를 구성해야합니다\_csrf_header, \_csrf를 가져와서 보내줘야하므로 meta에 선언하였고, js로 값

약 19시간 전
·
0개의 댓글
·
post-thumbnail

Java Spring Security Handler

Spring Security을 이용하여 인증과 인가의 관련된 Handler를 다루어 보겠습니다.AuthenticationSuccessHandler을 상속 받아 사용하는 SimpleUrlAuthenticationSuccessHandler를 이용하여 성공했을때 진입할 수

2023년 5월 17일
·
0개의 댓글
·

Java Spring Security Provider

이전 포스트에서는 기본적으로 제공하는 Spring Security기능만을 이용한 로그인을 만들었습니다. 이번에는 Provider를 이용하여 자체적인 인증 프로세스를 구현하고, Handler러로 에러도 구현해봅니다. AuthenticationProvider provi

2023년 5월 16일
·
0개의 댓글
·
post-thumbnail

Java Spring Security, Session & Csrf Attack

Spring Security는 Session-Fixation 과 CSRF Attack을 방어할 수 있는 기능을 제공하고 있습니다.세션을 이용한 공격 방법입니다. 사용자의 인증받은 세션 토큰값을 그대로 가져와 사용함으로써 동일한 인증상태를 유지하게 됩니다. 사용자에게 토

2023년 5월 16일
·
0개의 댓글
·
post-thumbnail

Java Spring Security

Spring Security는 스프링 기반의 어플리케이션 보안을 담당하는 프레임워크입니다. Spring Security를 사용하면 사용자 인증, 권한, 보안처리를 간단하지만 강력하게 구현 할 수 있습니다.해당 글에서는 WebSecurityConfigurerAdapter

2023년 5월 15일
·
0개의 댓글
·
post-thumbnail

Java Singleton 알아보기

한번 초기화하고 계속 사용하는 것이 싱클톤 패턴이라고 합니다. Android를 개발하다보면 부딪히는 멀티 쓰레드일때 Singleton이 어떻게 작동되는지 직접 테스트를 해본적이 없어서 작성하게 되었다.앞에서 설명하였든 Singleton은 초기화시점이 생성되는 시점입니다

2023년 4월 29일
·
0개의 댓글
·
post-thumbnail

Spring Transaction with AOP

트랜잭션(Transaction 이하 트랜잭션)이란, 데이터베이스의 상태를 변화시키기 해서 수행하는 작업의 단위를 뜻한다. 코드에서 선언을 하여서 분기별로 데이터베이스 작업이 이뤄질때 추가작업을 지시 가능합니다. 아래의 그림을 보면 이해하실겁니다.간단하게 Transact

2023년 4월 28일
·
0개의 댓글
·

JPA 값 타입들

JPA에 사용되는 값들의 종류에 대해 알아봅니다. 여지껏 사용했던 @Entity 타입의 객체는 key값으로 관리되므로 개별적인 생명주기를 갖고있는데 반해서, 값 타입들은 단순한 값 이상의 의미가 없습니다.자바 기본 타입은... 우리가 알고있는 내용이므로 제외했습니다.자

2023년 4월 24일
·
0개의 댓글
·

JPA 영속성 전이,고아객체

JPA Entity를 DB저장 및 삭제를 할때 연관된 객체도 함께 작업해주는 편의기능이 있습니다.이를 영속성 전이 cascade라고 합니다.cascade에는 6가지 방법이 있습니다. 아래 3가지를 그나마(?) 자주 사용합니다.• ALL: 모두 적용• PERSIST: 영

2023년 4월 23일
·
0개의 댓글
·
post-thumbnail

JPA 프록시와 연관관계 관리

프록시를 이해하고, 연관관계를 관리하는 법을 알아보겠습니다. 1. 프록시(Proxy)란? 프록시란 실제 객체(Member,Orders etc...)를 참조해주는 객체(Object)라고 생각하면 됩니다. JPA는 JAVA의 객체지향적인 아키택처가 가능하게 해주는 라이브

2023년 4월 23일
·
0개의 댓글
·
post-thumbnail

JPA 영속성과 연관관계 매핑

영속성 컨텐스트란 엔티티를 영구 저장하는 환경이라는 뜻이다. 애플리케이션과 데이터베이스 사이에서 객체를 보관하는 가상의 데이터베이스 같은 역할을 한다. 엔티티 매니저를 통해 엔티티를 저장하거나 조회하면 엔티티 매니저는 영속성 컨텍스트에 엔티티를 보관하고 관리한다.영속성

2023년 4월 12일
·
0개의 댓글
·
post-thumbnail

JPA 알아보기

JPA는 자바 진영에서 ORM(Object-Relational Mapping) 기술 표준으로 사용되는 인터페이스의 모음이다. 그 말은 즉, 실제적으로 구현된것이 아니라 구현된 클래스와 매핑을 해주기 위해 사용되는 프레임워크이다. JPA를 구현한 대표적인 오픈소스로는 H

2023년 4월 11일
·
0개의 댓글
·
post-thumbnail

Properties를 이용한 Value 자동 구성

Spring boot를 만들어 사용하다보면 application.properties에서 변수를 지정해서 사용한 적이 한번은 있을겁니다. Web Application이 실행되면서 Bean에 설정된 Property를 변경할 수 있게 제공하는 기능을 Environment A

2023년 4월 6일
·
0개의 댓글
·
post-thumbnail

@Conditional Annotation

아마 개발언어를 막 배우기 시작하면 변수 선언하는 걸 제외하고는 if문이 가장 먼저가 아닐까합니다. 조건을 통해 다양한 논리 회로를 구성할 수 있죠.@Conditional Annotation도 같은 맥락입니다 조건에따라 @Bean을 컨트롤 가능합니다.Conditiona

2023년 4월 6일
·
0개의 댓글
·
post-thumbnail

@Import Annotation 알아보기

Custom Annotation을 제작해서 사용할때 다양한 매타 관계를 붙혀서 작업을합니다. 예제이때 Components들은 ComponentScan이 선언 되어있는 패키지 안에 있어서 로딩이 가능합니다.다음과 같은 예를 봅시다.MySpringBootApplicatio

2023년 4월 5일
·
0개의 댓글
·
post-thumbnail

Spring Api 간단한 단위테스트

단위 테스트는 각 구성 요소의 효율성을 결정하기 위해 특정 코드 단위를 격리하고 테스트하는 방법입니다. 따라서 코드의 단위를 적게 잡을수록 더 자세하게 전체코드를 테스트하는게 가능합니다.여기서는 간단하게 Web 호출에 따른 ApiTest 각 component단위(Con

2023년 4월 4일
·
0개의 댓글
·
post-thumbnail

독립 실행형 Spring 기본원리

앞선 포스트에서는 Servlet의 원리를 알아봤습니다. 이번에는 Spring의 기본 원리를 알아보겠습니다.인프런 토비선생님의 스프링부트 강의내용을 옮긴 글입니다.원래 servlet에서는 servletContext.addServlet()을 이용하여 url을 일일히 맵핑해

2023년 4월 4일
·
0개의 댓글
·
post-thumbnail

독립 실행형 Servlet 기본원리

우리는 보통 웹서버를 구축하는 일을 Spring boot를 통해서 간단하게 구축합니다.Spring boot를 통해 Container를 설정하고 만드는일을 건너띄고 순수하게 웹 어플리게이션에 집중해서 개발할 수 있게 도와줍니다. 때문에 그 내부에 어떤식으로 동작하는지 알

2023년 4월 4일
·
0개의 댓글
·

REST API 알아보기

REST는 Representational State Transfer라는 용어의 약자로서 2000년도에 로이 필딩 (Roy Fielding)의 박사학위 논문에서 최초로 소개되었습니다. 로이 필딩은 HTTP의 주요 저자 중 한 사람으로 그 당시 웹(HTTP) 설계의 우수성

2023년 3월 28일
·
0개의 댓글
·