본문 바로가기

[spring boot] jackson대신에 gson으로 사용하기 들어가기 최근에 참고한 자료에 따르면 gson이 성능이 좋아져서 jackson보다 더 좋아졌다는 글이 있었다. 그래서 한번 spring boot의 json 매퍼를 변경해서 사용해보았다. 작성자: ospace114@empal.com, http://ospace.tistory.com/ 기본 환경 먼저 dependency을 추가하자. spring boot을 사용한다면 version을 사용하지 않아도 자동으로 버전을 잡아준다. 현재 기준(2022.07.06)으로 버전 2.8.8 이하는 vulerability가 있어서 사용을 권장하지 않는다. com.google.code.gson gson 그리고 기존 jackson은 spring-boot-starter-web에서 exclusions에 포함시켜서 제외시켜준다. org.. 더보기
Kotlin 배우기2 - 심화 들어가기 심화에서는 kotlin만의 특징적인 기능과 추가적인 부분을 정리했다. 작성자: ospace114@empal.com, http://ospace.tistory.com/ 연산자 “?.” 연산자를 사용해서 객체가 null아닌 경우만 참조할 수 있다. fun main() { var str:String? = null var len = str?.length println("length is $len") }“?:(elvis)” 연산자를 사용해서 객체가 null인 경우 기본값을 정의할 수 있다. fun main() { var str:String? = null var len = str?.length ?: 0 println("length is $len") }“!!.” 연산자를 사용해 객체가 절대 null이 되면 안.. 더보기
Kotlin 배우기1 - 기본 들어가기 Kotlin을 공부하면서 간단하게 정리해보았다. 기본에서 시작해서 나름대로 심화까지 다룰려고 한다. 프로그래밍 언어에 어느정도 익숙한 개발자를 위한 내용으로 Java을 사용했다면 이해하기 더 쉬울거라 생각한다. 가급적 자잘한 설명은 생략하고 압축해서 정리했다. 작성자: ospace114@empal.com, http://ospace.tistory.com/ HelloWorld 시작은 HelloWorld이다. fun main() { println("Hello world!") }코드에서 알 수 있듯이 main()이 있어야 실행된다. 그리고 println()을 통해서 문자열을 출력되고 있음을 알 수 있다. 구문 마지막에는 세미콜론(;)은 없다. 물론 사용할 수도 있지만 없어도 문제가 없기에 생략해서 사용.. 더보기
Reactive Programming 맛보기 Reactive란? Reactive는 변화가 발생하면 대응하는 프로그래밍 모델이라고 할 수 있다. 예를 들어 네크워크 구성요소는 I/O 이벤트에 대응하고 UI 컨트롤러는 입력 이벤트에 대응한다. Reactive 프로그래밍은 데이터 처리에서 비동기 데이터 스크림과 이벤트드리븐 방식으로 접근하는 패러다임이다. 보통 관찰자Observer 패턴을 사용해서 감시하고 이벤트를 받는다. 또한 함수형 프로그래밍으로 데이터 스크림 조작 및 처리하는데 사용된다. 논블록킹 배압관리(nonblocking backpressure)로 생산속도와 소비소도를 조절하여 리소스 누수나 성능 문제를 해결한다. backpressure는 push 시나리오에서 생산자가 소비자보다 더 빠른 경우 생산자에게 천천히 보내라는 시그널이다. 작성자: .. 더보기
[Java] RTP 서버 간단히 구현하기 RTP는 실시간 전송 프로토콜(Realtime Transport Protocol)로 오디오와 비디오를 실시간을 전송하기 위한 프로토콜입니다. 지연에 민감하기 때문에 처리가 가벼운 UDP로 사용하고 있다. RTP는 데이터 전송용이고 제어용으로는 RTCP를 사용합니다. 여기서는 jrtp라고 RTP전송하는 프로토콜 라이브러리에 초점을 맞춰서 다룰 예정입니다. 전송되는 내부 데이터 처리 방식에 대해서는 다루지 않습니다. 작성자: ospace114@empal.com, http://ospace.tistory.com/ 들어가기 Java에서 jrtp라는 RTP를 지원하는 오픈소스 라이브러리가 있다. 실제 코드를 보면 전송하는 기본 프로토콜 구조만 구현되어 있고, 서버로서 동작하는 기능은 빈약한다. 그렇지만 구동하는데는.. 더보기
[java] enum 사용하기 들어가기 enum은 잘 사용하지 않은 기능 중에 하나이다. 익숙하지도 않지만, 사용하기 불편하다는 이유도 있기도 하다. 그러나 알아두면, 정말 유용하게 사용할 일이 많다. :) 작성자: http://ospace.tistory.com/,2016.11.11 (ospace114@empal.com) 그냥 상수형 데이터? 그냥 상수형 데이터를 정의해서 사용한다고 하면 다음과 같이 사용할 경우가 대부분이다. class Week { public final static int SUNDAY = 0; public final static int MONDAY = 1; public final static int TUESDAY = 2; // ... } // 주말여부 pubic bool isWeekend(int week) { if.. 더보기
JSP 간단하게 시작하기... JSP는 다 알것이라고 생각하고 JSP설명은 뛰어넘도록 하겠다. 여기서는 실제 JSP 간단한 사용예제를 보도록 하겠다. 여기서는 세세한 설명은 없고, 간단한 설명과 결과를 확인하는 위주로 하겠다. 그리고 서블렛에 대한 사용 예는 없다. Writer: http://ospace.tistory.com/(ospace114@empal.com) 2008.12.05 순서 JSP 간단한 구조 및 설정 JSP로 간단한 계산 프로그램 생성 Java 객체와 연동하기 1. JSP 간단한 구조 및 설정 JSP를 사용하기 위해서는 톰캣이 필요하다. 물론 톰캣을 사용하기 위해서는 java도 필요하다. 대충 받아서 설치한다. Java JDK: http://java.sun.com/javase/downloads/index.jsp 톰캣:.. 더보기
Java 쓰레드 간단한 코드 예제 아래 내용은 어느책에서 참고했던 건데 정확한 책 명칭이 생각이 안난다. 혹시 아시는 분이 계시면 메일이나 덧글을 달아주세요. ^^ http://ospace.tistory.com/(ospace114@empal.com) 2008.07.24 주의: 가져가실때에는 출처를 명시해주세요. 쓰레드 TIME-WAITING 상태로 들어가기 public class TestClass extends Thread { public TestClass() { new TestClass().start(); } public void run() { while(true) { sleep(100); // milliseconds } } } Enumerating Thread 단순히 쓰레드들을 생성하고 생성된 쓰레드에 대한 조회 public void.. 더보기

반응형