Skip to main content

Posts

Tech Conversant Weekly Jan 23 - Jan 28

Topic: General                                                                                                                                              Level: All In this post, we shall catch up on the multi-faceted technological updates that happened over the past week as well as a few that seized my attention, Introducing Microservices Patterns with Spring Integration  Catalog with in-build patterns and architecture facilitating the integration with Spring modules and each of these modules is in turn Spring boot component https://spring.io/blog/2023/01/25/introducing-microservices-patterns-with-spring-integration Jakarta EE 10, Java faces 4 can now be programmatically accessed via API and with extension mappings, the xhtml is made redundant with context params, ClientWindowScoped annotation can maintain the same bean scopes across multiple pages as long the jfwid is the same, and finally MultipleFileUpload model mapping for processing https://blog.payara.fish/a-quick-look-at-face

Tech Conversant Weekly Jan 16 - Jan 21

Topic: General                                                                                                                                              Level: All In this post, we shall catch up on the multi-faceted technological updates that happened over the past week as well as a few that seized my attention, Frequently we read properties from file to the application, conversely, we can write to configuration properties file as well from Java  https://youtube.com/shorts/GzuYu6XPaVs Building custom URLs with special characters creates complexities in request mapping on the server-side code. The REST requests are to be intercepted for carrying out preprocessing not only on the URL but on the whole request before delegation to the controller. Create an implementation for ClientHttpRequestInterceptor and override the intercept method, subsequently registering the interceptor onto the rest template, any requests are routed via the implementation. https://www.baeldung.com/spring-restt

Tech Conversant Weekly Jan 09 - Jan 14

Topic: General                                                                                                                                              Level: All In this post, we shall catch up on the multi-faceted technological updates that happened over the past week as well as a few that seized my attention, Type annotation and receiver parameter from JDK 8, offer a compilation validation guideline.  In combination, template design can be attained by formalizing the client implementation to follow.  https://www.objectos.com.br/blog/objectos-weekly-008-the-java-receiver-parameter.html With flapMap on the streams API, operations can be performed on the inner collection, ie list within a list https://dev.to/wkrzywiec/java-series-flatmap-2fif Jakarta MVC on top of Jakarta REST presents decoupled web-based requests handling architecture https://blog.payara.fish/a-look-at-jakarta-mvc-in-jakarta-ee-10 JDK 20 Project Loom's ScopedValue vs. ThreadLocal  ThreadLocal enables sharing d

Tech Conversant Weekly Jan 02 - Jan 07

Topic: General                                                                                                                                              Level: All In this post, we shall catch up on the multi-faceted technological updates that happened over the past week as well as a few that seized my attention, Microservices using shared memory for interservice communication and data processing, to speed up the processing between multiple services and achieve low latency with high throughput, creating a Virtual memory that offers shared memory space residing in the local disk for the services to leverage. The Chronicle library facilitates creating the memory region of the heap on a file for virtual memory and debugging the file with readable YAML format. The feature of the memory map file has been available since JDK4, FileChannel.map + MapMode.READ_WRITE = MappedByteBuffer (not thread safe) Other places for improvement are, 1) Thread safe access 2) Long offsets (64-bit) 3) Comple

Tech Conversant Weekly Dec 05 - Dec 10

Topic: General                                                                                                                                              Level: All In this post, we shall catch up on the multi-faceted technological updates that happened over the past week as well as a few that seized my attention, The Garbage collector in JVM abstracts away from managing the memory allocation of the Java application by releasing/dereferencing/defragmenting the object allocated in the memory preventing memory leaks and space depletion. Several GC implementations strategically try to balance on the below parameters for optimal performance of GC, 1. Low latency  2. High Throughput  3. Efficient resources usage (CPU and memory) Typical stages involved in the GC are, 1. Mark (Tracing) - the objects are tree represented and from the application root reachable nodes are painted (LIVE) and unreachable (NON-LIVE) are marked for GC. 2. Sweep - Nonlive objects cleared from the heap memory  3. C

Tech Conversant Weekly Nov 28 - Dec 03

Topic: General                                                                                                                                              Level: All In this post, we shall catch up on the multi-faceted technological updates that happened over the past week as well as a few that seized my attention, How can a DTO contribute to enhancing the security of the java application? A DTO can be a JavaBeans (encapsulated) or POJO (no constructor) or an immutable Record class (added advantage on serialization), that maps the data from the database layer domain model to the presentation layer, restricting the data on a need-to-know basis and acts as a proxy providing filtering and preprocessing. https://snyk.io/blog/how-to-use-java-dtos/ By employing static code analysis tools, the NullPointerException feasibility on the code flow is determined, making the code not only null-safe but also cutting down the exception propagated stacktrace given in the piped code sequence invocation

Tech Conversant Weekly Nov 21- Nov 26

Topic: General                                                                                                                                              Level: All In this post, we shall catch up on the multi-faceted technological updates that happened over the past week, Modularity can be achieved by confining the impact of change within the module, a well-defined boundary without leaks. JDK9s Modules offered preliminary isolation for packaged module structures, however at an application level module accesses should be rule defined. Spring Modulith with ArchUnit and jMolecules, established package relationship, restricted accesses and validates relationship during tests. By default, a module can access the content of any other module but cannot access subpackages of other modules. https://blog.frankel.ch/spring-modulith-modularity-maturity/ Benefits of using Spring 6 in terms of ORM, Text blocks to hold SQL in query annotation, Records to define DTO, UUID as basic type in JPA 3, JP