본문 바로가기
728x90
반응형

spring boot17

[SpringBoot] @Mock, @MockBean 차이가 뭘까? 테스트 케이스를 작성하다가 좀 헷갈리는게 있었다. @Mock, @MockBean 차이가 뭐지??? 쓰긴 하고 있는데 알고 써야 하지 않을까라는 의문이 들었다. 그래서 찾아봤다. 먼저 Mock 객체를 선언할 때에는 2가지 방법이 있다. 1. 첫번째 : mock() 을 이용해서 선언 1 2 3 4 5 6 7 8 9 10 11 12 @RunWith(MockitoJUnitRunner.class) public class UserServiceTest { @InjectMocks private UserService userService; UserRepository userRepository = mock(UserRepository.class); @Test public void findByEmail_test(){ when.. 2018. 4. 10.
[SpringBoot]Spring Boot Oauth login With Facebook 삽질기!!! https://spring.io/guides/tutorials/spring-boot-oauth2/ 위 사이트에 가면 Spring boot 를 이용해서 Oauth를 이용해서 Login 을 할 수 있는 샘플을 만들어볼 수 있다. 그래서 나도 해봤는데.. 그게 삽질의 시작이었다...Tutorial 자체는 그렇게 어렵지 않게 따라 할 수 있다. 따라하기가 어렵다면 Git에서 소스를 내려 받아서 해볼 수도 있다. 이제 이 Tutorial 을 진행하기 위해서 Facebook Developer 사이트에서 앱을 등록을 해야 한다. 그래야 Client Id 하고 Client Secret을 받을 수 있다. https://developers.facebook.com 위 사이트에 들어 가면 본인의 Facebook 계정으로 앱을.. 2018. 3. 4.
[Spring Boot]Rest API 호출을 위한 Client Code 공부하면서 만든 Oauth Server에 대한 테스트를 Postman으로는 했는데 실제로 Client Code가 필요하게 되었다. 2017/09/04 - [Development/Java] - [Spring Boot]Oauth server 적용해보기 테스트만 할 경우에는 Postman만 써도 상관이 없지만 실제 Client 가 호출을 하려면 code가 필요하다. 그래서 여기저기 구글링을 해가면서 찾아봤다. 우선 Oauth Token을 발급 받기위한 코드가 필요하다. 12345678910111213141516171819202122232425262728public String getOAuth2Token(String username, String password) { final String CLIENT_ID =.. 2017. 9. 14.
[Spring Boot]Oauth server 적용해보기 Spring Boot Project에 OauthServer를 설정해보았다. 소스는 https://github.com/blusky10/study_spring 의 simple-spring-oauth 브랜치를 다운로드 받으면 된다. Client 는 private이라는 api에 접근하기 위해서 oauthserver 에 token 발급 요청을 한다. 발급된 token을 가지고 private이라는 api에 접근한다. (Client 는 미리 등록되어있다고 가정한다. 따라서 Client를 Oauth서버에 등록하는 과정은 생략된다.) 1. 먼저 ResourceServer를 설정한다. ResourceServer는 Resource Owner의 정보를 가지고 있는 서버를 의미한다. 1 2 3 4 5 6 7 8 9 10 11 .. 2017. 9. 4.
[Spring Security]간단 Spring Security Spring Security 를 적용하는 내용을 처음부터 차근차근 정리를 해보려고 한다. 목표는 Spring Security 를 공부하면서 각각의 기능들을 적용해보는것이다. 진행하다보면 Spring Security 뿐만 아니라 다른 내용들도 점점 추가될것 같다. 다 만들고 나서는 git에 소스를 공유할 생각이다. ^^;; 언제가 될지는 잘 모르겠다. 환경 : java 1.8, Spring Boot 1.5.3 Release, Maria DB, JPA, gradle build.gradle12345678910111213141516171819202122232425262728293031323334buildscript { ext { springBootVersion = '1.5.3.RELEASE' } reposito.. 2017. 6. 27.
[한빛리더스14기]실전 스프링 부트 워크북! 회사에서 Spring boot를 사용하기 시작한지는 한 1~2년 정도 된것 같다. 쓴다기 보다는 Spring 사이트에 있는 소스들을 가져다 붙이는 수준이었다. 체계적으로 공부해본적은 없고 눈앞에 닥치면 찾아서 하다보니 부족한 점이 많이 느껴졌다. 이번에 받은 이 "실전 스프링 부트 워크북"은 그런 부족한 점을 채워줄수 있는 좋은 가이드가 되었다. Chapter 1에서 부터 4까지는 Spring Boot를 실습하기 위한 준비 단계정도로 볼수 있다. 기본적인 이론과 설명들, 프로젝트 구성에 대해서 소개를 해주고 있다. 그리고 Chapter 5부터 본격적으로 Spring Boot를 가지고 Web 어플리케이션을 만들기 시작한다. 특히 Chapter 6 을 보면 Spring Boot Test 에 대해서 설명을 하.. 2017. 6. 20.
[Spring]Controller Test 하기 테스트케이스를 만들어서 작업을 하면 소스코드가 수정될 경우 코드를 테스트 해보기가 참 수월하다. 그런데 이 테스트 케이스 작성하는게 생각보다 만만치는 않다. 실제 DB 를 읽어서 테스트를 해야 하는지. 아니면 Mock 객체를 정의를 해서 사용을 해야 하는지. 실제 DB 를 사용할 경우 저장된 data 가 변경이 되어서 구현했을 당시 테스트 케이스는 Pass였지만 나중에 빌드 시점에 테스트 케이스가 실행될 경우에 Fail 이 나면 어떻게 할것인지. 생각해보면 그냥 서비스 구현해서 화면 띄우고 버튼 눌러서 테스트 하는것이 더 편할지도 모른다는 생각이 들기도 한다. 작성할 때마나 서비스 테스트, repository테스트, 컨트롤러 테스트에 대해서 구글링 하면서 작성을 하다보니 뭔가 남는게 없는것 같아서 샘플을.. 2017. 6. 12.
[Spring]Jasypt 를 이용한 properties 암호화 프로젝트 내부에는 설정파일들이 많이 있다. 대표적인 항목이 DB 접속 정보가 있다. 그런데 이 접속정보에는 ID, PASSWORD 가 항상 존재 한다. ID는 상관이 없지만 PASSWORD 정보가 파일 내부에 평문으로 적혀있으면 외부에 노출될 위험이 있다. 그래서 암호화를 해야 한다. Jasypt를 이용하면 이런 항목들을 쉽게 암호화 할 수 있다. 먼저 라이브러리를 다운로드 받는다. http://www.jasypt.org/download.html 사이트에 들어가보면 상단에 DOWNLOAD JASYPT 라는 링크가 있다. 그 걸 누르면 라이브러리를 다운로드 받을 수 있다. 이 글을 쓰는 시점의 버전은 1.9.2 이다. 다운로드 한다음 사용 방법은 간단하다. 압축을 푼후에 bin 폴더로 이동한다. 그리고 콘.. 2017. 4. 25.
728x90
반응형