1. Virtual Thread 소개Virtual Thread는 JDK 21에 정식 Feature로 등록된 경량 스레드로, Java의 동시성 (Concurreny) 처리를 개선하기 위해 OpenJDK의 Project Loom에서 개발되었습니다. 대표적인 경량 스레드로는 Kotlin의 coroutine, Go의 goroutine 등이 있습니다. 이제 Java만으로도 경량 스레드의 이점을 누릴 수 있게 되었고, Virtual Thread는 어떻게 동작하고 얼마나 성능이 좋아졌는지 알아보겠습니다. 2. Thread와 Virtual Thread의 구조Java의 Thread(Platform Thread)는 OS의 Kernel Thread와 1:1 관계로 매핑되어 동작하는 구조입니다.이러한 구조는 Java에서 생성..
JPA는 기술 명세이며, 인터페이스이다. JPA는 Java Persistence API의 약자이며, JAVA 애플리케이션에서 관계형 데이터베이스를 어떻게 사용해야 되는지를 정의한 인터페이스이다. 라이브러리가 아니다. 인터페이스이므로 구현이 없다. JPA를 구현한 여러 라이브러리가 존재한다. Spring으로 개발하다 보면 Hibernate 자주 볼 수 있는데, Hibernate는 JPA를 구현한 라이브러리이다. Hibernate 외 DataNucleus, EclipseLink 등 다른 여러 라이브러리가 존재한다.(꼭 Hibernate를 사용해야되는 것은 아니다.) Spring Data JPA는 개발자가 쉽게 JPA를 사용할 수 있도록 한 Spring에서 제공하는 모듈이다. Spring으로 개발하다 보면 J..
JAXB로 마샬링과 언마샬링 하려면 JAXB 클래스가 있어야 함JAXB 클래스는 .xsd라고 XML 스키마가 정의된 파일을 xjc 툴로 자동 생성함(.xsd 파일은 어디선가 받겠죠~!).xsd가 있는 경로에서 "xjc -d . *"를 실행하면 JAXB 클래스가 생성됨, 좀더 디테일한 설정은 Help 참조(xjc -d . * -p com.company.sub)마샤링과 언마샬링은 아래 소스 코드 참고 public class JaxbConvertor {private static JaxbConvertor mSingleton = null;private JAXBContext mJAXBContext = null; private JaxbConvertor()throws JAXBException {mJAXBContext ..
XML 데이터를 SOAP Body에 넣기 public static SOAPMessage makeSoapRequest(Document document)throws Exception {MessageFactory messageFactory = MessageFactory.newInstance(SOAPConstants.DEFAULT_SOAP_PROTOCOL);SOAPMessage soapMessage = messageFactory.createMessage();SOAPPart soapPart = soapMessage.getSOAPPart(); SOAPEnvelope envelope = soapPart.getEnvelope();SOAPBody soapBody = envelope.getBody();soapBody.ad..
- Total
- Today
- Yesterday
- C/C++
- AVIOContext
- CentOS
- elasticsearch
- Virtual Thread
- JAXB
- HDFS
- DB
- ffmpeg
- onbeforeunload
- springboot
- DATABASE
- jdk7
- Programming
- development
- jdk6
- HLS
- programmer
- fluentd
- popupWindow
- springframework
- oid
- HTTP Live Streaming
- JDK21
- springjpa
- Rolling-Restart
- libavformat
- JPA
- Spring
- Java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |