본문 바로가기
반응형

개발 이야기/Springboot20

[Kotlin] Springboot, AOP를 활용한 요청 데이터 조작(feat. Reflection) Kotlin + Springboot 환경에서 간단한 AOP를 만드는 방법을 공유합니다. AOP란 Aspect Oriented Programming의 약자로 직역하면 관점 지향 개발이라 합니다. 공통적인 기능들을 모듈화 해서 개발자가 적용하고 싶은 위치(메서드, 클래스 등)에 심을 수 있습니다. 이번 예제에서는 사용자로부터 요청된 전송데이터를 AOP를 통해 조작해보는 것을 해보려고합니다. 요청 데이터를 조작하는데에는 Reflection을 사용합니다. Reflection 이란 클래스 정보를 코드상에서 사용하는 기술로 개발자가 직접 class의 다양한 정보들(필드, 메서드, 어노테이션 등등)을 불러올수 있는 기술입니다. 주로 자바에서 코드를 조작하는 방법으로 많이 언급 되는데 당연히 코틀린에서도 가능합니다. .. 2021. 2. 9.
[Kotlin] Springboot + WebSocket 사용법 Kotlin + Springboot 환경에서 WebSocket(웹소켓)을 사용하기 위한 방법을 기술합니다. 간단한 채팅앱을 만들어 보며 WebSocket 설정과 사용법을 알아보겠습니다. (백엔드. 즉, Kotlin + Springboot + Gradle 환경 구성에 대한 내용만을 다루었습니다.) 01. 모듈 생성/다운로드 https://start.spring.io/를 통해 Springboot를 위한 모듈을 생성해봅니다. 위와 같이 설정 체크 해주고 GENERATE 클릭 해서 zip파일을 다운 받습니다. 다운받은 zip파일 압축 해제 하고, IDE에서 해당 프로젝트를 추가해봅시다. 그리고 build.gradle.kt 파일을 열어보면 아래와 같습니다. plugins { id("org.springframewo.. 2020. 6. 7.
[Kotlin] Springboot + Redis 사용법 Redis는 메모리 DB로 일반적인 DB(disk를 사용)보다 속도가 빠릅니다. 그렇기 때문에 대량의 데이터를 다루는 서비스에서 캐시 서버로서 많이 사용됩니다. 해당 글에서는 코틀린을 사용해 Springboot + Redis 연동 및 간단한 사용방법을 정리합니다. 01. Dependency 추가 build.gradle.kt 파일을 열어 아래와 같이 Redis 사용을 위한 lib를 추가해줍시다. ...(중략) repositories { mavenCentral() } dependencies { implementation("org.springframework.boot:spring-boot-starter-web") implementation("org.springframework.boot:spring-boot-s.. 2020. 4. 26.
[Kotlin] Springboot + Mybatis 사용법 ORM 기술인 JPA를 사용해서 DB 데이터 조작, 조회를 하면 편하지만 때론 SQL만으로 쿼리를 짜서 조회할 상황도 있을 것이라 생각됩니다. MySQP + JPA 셋팅 방법은 여기 있습니다. https://basketdeveloper.tistory.com/74 [Kotlin] Spring boot에서 MySQL + JPA 사용법 지난번 Springboot + gradle 설정(https://basketdeveloper.tistory.com/73)에 이어 Spring boot에서 DB(Mysql) 간단 연동법과 JPA를 사용하는 방법을 정리해봅니다. 01. build.gradle.kt 에 Dependency 추가 impo.. basketdeveloper.tistory.com 이번에는 Kotlin +Spr.. 2020. 3. 28.
[Kotlin] Springboot에서 MySQL + JPA 사용법 지난번 Springboot + gradle 설정(https://basketdeveloper.tistory.com/73)에 이어 Spring boot에서 DB(Mysql) 간단 연동법과 JPA를 사용하는 방법을 정리해봅니다. 01. build.gradle.kt 에 Dependency 추가 import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import org.springframework.boot.gradle.tasks.run.BootRun plugins { id("org.springframework.boot") version "2.2.4.RELEASE" id("io.spring.dependency-management") version "1.0.9.RELEASE.. 2020. 2. 23.
[Kotlin] Springboot + Gradle 시작하기 최근 회사에서 Kotlin으로 개발을 하게 되어 새로운 언어를 공부해야 됬는데요... 코틀린(Kotlin)은 이전까지 안드로이드 개발. 즉, 앱개발 할 때 사용되는 언어라 생각했습니다. 2017년 구글에서 안드로이드 개발언어로 코틀린을 정식으로 채택하고, 앱 개발 관련 공식문서들도 코틀린을 예제로 작성되는 등을 미뤄볼 때, 모바일 앱 개발자는 무조건 해야겠구나 생각했습니다. 하지만!!! 요즘은 Kotlin으로 서버 개발을 하는 회사도 있다고 하네요. Kotlin도 Java와 같이 JVM에서 돌아가기 때문에 Java랑 완벽히 호환이 되고, 최근 Typescript 같은 인기 많은 언어처럼 Null Safety, 함수형과 같은 특징을 가지고 있어 서버개발에 채택되는 경우가 점점 많아지는 추세라고 합니다. 기.. 2020. 2. 22.
Spring_Annotataion이란? 어노테이션(Annotation)은 주석과 비슷해 보이지만, 프로그램 실행 Run time까지 남아 일종의 메타데이터로서 기능을 한다. 서버 시작 시 자동으로 등록된다. 아래의 어노테이션은 자주 쓰이는 어노테이션이다. @Resource : bean의 이름과 매칭해서 DI(Dependency Injection) @Resource : 멤버변수에 사용, 네임을 통한 매칭 @Autowired : 멤버변수 이외에도 사용, 타입을 통한 매칭 @Repository : DB Exception transaction 처리, mapper 인터페이스에 처리, xml파일과 연동시 사용, DAO클래스 빈 등록, 별도의 저장소로 xml파일을 가진다는 의미 @Requestmapping : value값으로 url주소가 대입, metho.. 2018. 10. 3.
Spring_@Scheduled 사용하기 프로젝트에서 배치 돌려야 할 경우가 자주 발생 한다. SpringFrameWork에서 제공하는 @Scheduled 를 사용하면 원하는 시간대에 특정 서비스를 동작시킬 수 있다. 먼저, 아래와 같이 context 설정 파일에 scheduler를 등록한다. 1 2 3 4 5 6 Colored by Color Scripter cs 그리고 com.test.schedule 패키지에 java파일 하나 만들고, @Service와 @Scheduled 어노테이션을 써서 서비스를 등록한다. 1 2 3 4 5 6 7 8 @Service public class ScdMain { @Scheduled(cron = "0 5 18 * * ?") public void task() throws Exception{ // To Do .. .. 2018. 5. 25.
반응형