ObjectMapper 클래스
ObjectMapper란?
ObjectMapper는 Jackson 라이브러리의 주요 액터 클래스입니다. ObjectMapper 클래스는 기본 POJO(일반 올드 Java 객체) 또는 범용 JSON 트리 모델(JsonNode) 사이에서 JSON을 읽고 쓰는 기능과 변환을 수행하는 관련 기능을 제공합니다.
또한 다양한 스타일의 JSON 콘텐츠 모두에서 작동하며 다형성 및 객체 ID와 같은 고급 객체 개념을 지원하도록 고도로 사용자 정의할 수 있습니다. ObjectMapper는 보다 고급 ObjectReader 및 ObjectWriter 클래스의 팩토리로도 작동합니다.
※ 간단히 말하면?
Jackson의 ObjectMapper는 Java Objec↔Json 파싱을 간단하게 해주는 클래스입니다.
사용해 보았다!
이번에는 WebSocket을 사용하여 채팅 응용 프로그램을 만들고 있습니다.
실제로, 사용하고 있는 부분의 소스 코드를 공유합니다.
@Slf4j
@RequiredArgsConstructor
@Service
public class ChatService {
// 宣言
private final ObjectMapper objectMapper;
private Map<String, ChatRoom> chatRooms;
@PostConstruct
private void init() {
chatRooms = new LinkedHashMap<>();
}
public List<ChatRoom> findAllRoom() {
return new ArrayList<>(chatRooms.values());
}
public ChatRoom findRoomById(String roomId) {
return chatRooms.get(roomId);
}
public ChatRoom createRoom(String name) {
String randomId = UUID.randomUUID().toString();
ChatRoom chatRoom = ChatRoom.builder()
.roomId(randomId)
.name(name)
.build();
chatRooms.put(randomId, chatRoom);
return chatRoom;
}
public <T> void sendMessage(WebSocketSession session, T message) {
try {
// パーシング
session.sendMessage(new TextMessage(objectMapper.writeValueAsString(message)));
} catch (IOException e) {
log.error(e.getMessage(), e);
}
}
}
결과
성공적으로 Json이 돌아옵니다.
※덧붙여서, WebSocket 테스트로 사용하고 있는 것은 이하입니다.
Simple WebSocket Client
※소스 코드는 이하가 됩니다.
htps : // 기주 b. 코 m / 토 65 / ぇ b 소 c t 에 m
Reference
이 문제에 관하여(ObjectMapper 클래스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Anveloper/items/b8b15f6a214decca47a4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
이번에는 WebSocket을 사용하여 채팅 응용 프로그램을 만들고 있습니다.
실제로, 사용하고 있는 부분의 소스 코드를 공유합니다.
@Slf4j
@RequiredArgsConstructor
@Service
public class ChatService {
// 宣言
private final ObjectMapper objectMapper;
private Map<String, ChatRoom> chatRooms;
@PostConstruct
private void init() {
chatRooms = new LinkedHashMap<>();
}
public List<ChatRoom> findAllRoom() {
return new ArrayList<>(chatRooms.values());
}
public ChatRoom findRoomById(String roomId) {
return chatRooms.get(roomId);
}
public ChatRoom createRoom(String name) {
String randomId = UUID.randomUUID().toString();
ChatRoom chatRoom = ChatRoom.builder()
.roomId(randomId)
.name(name)
.build();
chatRooms.put(randomId, chatRoom);
return chatRoom;
}
public <T> void sendMessage(WebSocketSession session, T message) {
try {
// パーシング
session.sendMessage(new TextMessage(objectMapper.writeValueAsString(message)));
} catch (IOException e) {
log.error(e.getMessage(), e);
}
}
}
결과
성공적으로 Json이 돌아옵니다.
※덧붙여서, WebSocket 테스트로 사용하고 있는 것은 이하입니다.
Simple WebSocket Client
※소스 코드는 이하가 됩니다.
htps : // 기주 b. 코 m / 토 65 / ぇ b 소 c t 에 m
Reference
이 문제에 관하여(ObjectMapper 클래스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Anveloper/items/b8b15f6a214decca47a4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)