본문 바로가기

개발/Spring17

Quartz + Spring Batch 조합하기 Zum 에서 BeyondJ2EE 김태기 팀장님과 표준화 프로젝트를 진행하며, Zum 에서의 Batch 에 대한 표준을 작성하며 알게 된 Quartz Framework 의 매력과 직접 개발해본 Spring 과의 조합 및 궁합을 소개해보려고 합니다.Quartz란?Quartz Scheduler 는 거의 모든 Java 응용 프로그램에 통합 할 수 있는 풍부한 기능의 오픈 소스 작업 스케줄 라이브러리입니다.저에게는 다소 생소했던 라이브러리였습니다. 그래서 리서치를 해보았더니,스프링에서 Unix의 Cron 처럼 특정시간 혹은 몇분 혹은 몇시간마다 동작해는 스케쥴러를 구현해야 했다. 그래서 찾아보게 된게 Spring + Quartz Scheduler 조합의 활용이었다. 하지만 Spring 3.1 버전 부터는 Quar.. 2017. 8. 25.
Spring - Open Session In View Spring에서 ORM을 사용하여 개발을 하며, Transaction을 이해할 때 쯔음 닥쳐온 혼란이 있습니다.지인에게 자신있게 Transaction을 설명해주기 위해 Spring Boot로 빠르게 어플리케이션을 올렸고@GetMapping("/member/{memberIdx}") public String member(@PathVariable Long memberIdx, Model model) { Member member = memberRepository.findOne(memberIdx); model.addAttribute("name", member.getName()); model.addAttribute("team", model.getTeam().getName()); return "index"; } Tra.. 2017. 1. 14.
Spring Boot에서 Redis 사용하기 Redis란?Remote Dictionary Server의 약자오픈 소스 소프트웨어휘발성이면서 영속성을 가진 key-value 저장소Redis는 NoSQLNoSQL은 데이터 간의 관계를 정의하지 않고 고정된 스키마를 갖지 않는 새로운 형태의 데이터베이스로서, 관계형 데이터베이스(RDBMS)를 경량화한 데이터베이스 입니다. 관계형 데이터베이스의 특징 을 제거하고 만들어진 다른 모든 형태의 DBMS를 칭하 기도 하며, SQL 계열 질의어를 사용할 수 있다는 사실 을 강조한다는 면에서 “Not Only SQL”로 불리기도 합니다.Redis는 이러한 NoSQL의 종류 중 하나입니다.데이터 모델NoSQL이 가지고 있는 대표적인 데이터 모델은 아래와 같습니다.Key-Value하나의 Key에 하나의 Value를 갖는.. 2016. 12. 4.
Spring Boot로 TEAMUP BOT 만들기 - (2) Spring Boot로 TEAMUP BOT 만들기 - (2) 이전 포스팅에서 기본적인 봇의 뼈대를 완성했다면, 이번 포스팅에서는 보다 체계적인 구조와 기능을 완성하기 위해 스프링에서 제공해주는 아래 기능들을 활용해보려고 합니다!ReflectionMVC의 Controller와 같이 봇에서 구현한 명령어의 Controller를 만들어 봅니다.AOP구현된 명령어에 권한 설정을 해봅니다.Scheduling스케줄링을 활용하여 기능을 구현합니다.ReflectionReflection이란 객체를 통해 클래스의 정보를 분석해 내는 프로그램 기법을 말합니다. 스프링이 아닌 자바의 특징으로 실행중인 자바프로그램 내부를 검사하고 내부의 속성을 수정할 수 있습니다. Spring Container의 BeanFactory가 어플리.. 2016. 10. 17.