

Tìm hiểu về RSocket
Rsocket là gì ? RSocket là giao thức truyền thông mới, nhằm giải quyết các vấn đề mà giao thức HTTP hiện tại gặp phải. Rsocket là 1 giao thức nhị phân sử dụng để transport các byte stream như TCP, WebSocket và Aeron. Vậy những hạn chế của giao thức HTTP là gì ? - Nó chỉ support mô hình tương tác request/response - Không hiệu quả - Không reactive Một kiến...
Connect multiple database using hibernate
I. Giới thiệu Trong bài viết này mình sẽ hướng dẫn config project Spring boot connect multiple database sử dụng hibernate, cụ thể ở đây mình có 2 database là PostgreSQL và MySQL. Ở đây mình mình sẽ sử dụng kotlin. II. Implement: 1. Maven dependencies: Thực hiện import các dependencies cần thiết vào project: <dependency> ...
Map multiple JPA Entities to one database table with hibernate
Overview: Trong nhiều dự án, bạn có thể sẽ gặp phải vấn đề cần mapping nhiều entities vào 1 table duy nhất. Vậy làm thế nào để thực hiện điều này với JPA. Trong bài này mình sẽ giới thiệu cách map nhiều entity vào 1 table. Sử dụng multiple entities có thể giúp tăng tốc xử lý đọc và ghi xuống database. Trong bài viết này mình sẽ sử dụng database...
Compact DTO projection query with JPA
Giới thiệu Trong bài viết này, mình sẽ giới thiệu cách làm thế nào để viết DTO projection JPQL query bằng cách bỏ đi phần package name khi dùng JPA, Hibernate và Spring. Để hiểu DTO projections là gì thì bạn có thể đọc thêm ở đây. Model Giả sử mình có 1 User entity mapping với UserDto như bên dưới: User entity: CREATE TABLE `user` ( `name` varchar(500) NOT NULL, ...
Mapping PostgreSQL Interval và Java Duration với Hibernate
Giới thiệu: PostgreSQL Interval là gì? PostgreSQL Interval là kiểu dữ liệu cho phép bạn lưu trữ và thao tác trong một khoảng thời gian tính bằng năm, tháng, ngày, giờ, phút, giây, v.v. Ví dụ : 1 year 2 mons 3 days 02:30:40. Một giá trị interval yêu cầu kích thước lưu trữ 16 byte có thể lưu trữ một khoảng thời gian với phạm vi được phép là từ -178.000.000...
Collector.filtering và Collectors.flatMapping Trong Java 9
1. Overview Stream.collect() là một trong các phương thức đầu cuối (terminal operation) của Stream API trong Java 8. Nó cho phép thực hiện các thao tác có thể thay đổi trên các phần tử được lưu giữ trong Stream. Chẳng hạn như: chuyển các phần tử sang một số cấu trúc dữ liệu khác, áp dụng một số logic bổ sung, tính toán, … Lớp Java Collectors cung cấp...

Tìm hiểu về ModelMapper trong Java
1. Tại sao cần phải Map? Các object trong java có cấu trúc tương tự nhay nhưng khác object models, khi muốn set data của object này cho object kia với các field tương ứng, ta phải đi set từng field một rất mất công. Ví dụ ta có 2 Ojbect như bên dưới: public class CustomerDTO { private long customerId = 1; private String fullName = "Robert King"; private String...
Sync Data From MySQL To ElasticSearch
Giới thiệu: MySQL là gì ? MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở ... Đọc tiếp Elasticsearch là gì ? Elasticsearch là một công cụ tìm kiếm dựa trên nền tảng Apache Lucene... Đọc tiếp Logstash là gì ? Logstash is an open source, server-side data processing pipeline that ingests data from a multitude of sources simultaneously, transforms it, and then sends it to your...


