본문 바로가기

Back-End/Spring4

Spring Boot & OAuth2 기반 소셜 댓글 시스템 개발하기 회사에서의 잉여력 + 개인의 잉여력을 가지고 회사에도 도움 + 개인적인 공부에도 도움이 되는 프로젝트를 진행해 보고 싶었습니다. 제가 맡고 있는 서비스에 아쉬운점이 소셜 댓글이 없다는 것인데(ㅠ.ㅠ) 아쉬움도 달래고 공부도 하고 제 서비스에 댓글기능도 붙일겸 직접 소셜 인증(페이스북, 구글, 트위터, 카카오) & 간단한 댓글 Getting Started를 개발하기로 야심찬 계획(?)을 세웠습니다. 모든 소스는 github에 있습니다.개요목표는 페이스북, 구글, 트위터, 카카오 등 국내에서 많이 쓰이는 서비스들의 OAuth인증을 통한 댓글 시스템 구현하기! 여기서 트위터를 제외한 다른 인증은 모두 OAuth2를 사용합니다. Spring에는 이를 구현한 고마운 라이브러리인 Spring Social과 Spri.. 2017. 6. 24.
Gradle에 task 여러개 실행하도록 설정하기 기존에는 task를 grunt 하나만 돌리다가 이번에 webpack, grunt를 함꼐 쓰게 되면서 Gradle Build시 task를 순차적으로 모두 수행하도록 설정해 보았습니다.import org.apache.tools.ant.taskdefs.condition.Os task grunt(type:Exec) { workingDir "./" if (Os.isFamily(Os.FAMILY_WINDOWS)) { //on windows commandLine "cmd", "/c", "grunt" } else { //on linux commandLine "grunt" } } compileJava.dependsOn grunt기존에 1개만 처리되는 task는 위와 같은 방식입니다. 여기서 타입을 Exec으로 받아서 하.. 2017. 6. 9.
Parameter AOP 설정하기 간단 팁 보통 메소드단위의 AOP를 많이 사용하시는데 유저정보에 대한 값을 파라미터에서 AOP방식으로 캐치하여 User객체로 전환시키는 방법을 간단한 예제를 통해 알아보겠습니다.@Target(ElementType.PARAMETER) @Retention(RetentionPolicy.RUNTIME) public @interface User { }위의 예제소스를 보시면 User 어노테이션을 PARAMETER타입으로 선언하였습니다. 어노테이션의 매개변수가 필요하시다면 내부에 생성하시면 됩니다.@Controller public class Controller { @GetMapping(value = "/test") public String test(@User User user, HttpSession session) { ..... 2017. 6. 9.
Spring boot + devtools로 편리한 개발환경 구축 Java Application 개발시 소스가 변할때 마다 서버를 재가동시키고 일일이 버튼을 누르는 일이 매우 귀찮았습니다.(저만 그런가...?) 이러한 비생산적인 요소를 줄이기 위해 이리저리 찾아보다 devtools에 대해 알게되었고 한국어로된 문서를 좋아하시는 분들을 위해 작성해 봅니다. 해당 글은 document문서를 요약하고 Intellij에서 빠른 환경구축을 할 수 있게끔 작성하였습니다.Point: 모든 소스는 guithub에서 보실 수 있습니다.특징Property Defaultsdevtools는 thymeleaf, Freemarker, Groovy Templates, Velocity, Mustache 등 다양한 템플릿에 대한 개발 캐싱을 모두 자동 비활성화 처리하였습니다.Point: 기존에 사용.. 2016. 12. 14.