Author: Vinisha Sharma

Java 11: Introduction to new String functions

Reading Time: 3 minutes It’s been a while since the release of Java 11 and with that, some new functions have been introduced on String. These functions provide additional functionalities and computations to be done on String then the existing one. Through the course of this blog, we will explore those functions one by one along with some examples.  These String functions have been added as a part of Continue Reading

Try with resource enhancements in Java 9

Reading Time: 2 minutes We all have done I/O operations in our code which used to be very troublesome when it comes to always keep in mind closing the resources once the usage has been made. But, when in Java 7, Try-With-Resource was introduced, this limitation was taken care of. Now a user needs not to worry about the open resources. To understand what enhancements have been done in Continue Reading

What’s new with Process API in JAVA 9?

Reading Time: 4 minutes With the introduction of Java 9, various improvements have been made in the Process API. Process API in Java 9 version helps to manage and control operating system processes. In Java 8 and earlier versions, the API lacks some key functionality, which makes handling processes in Java a mess. The limitations of the API often force developers to resort to native code in earlier Java Continue Reading

How to handle URL Encoded Form Data in Spring REST?

Reading Time: 3 minutes Sometimes, our REST endpoint needs to consume data in the form of application/x-www-form-urlencoded or using multipart/form-data. The source of this data can probably be an HTML form. Now, the first question which should come to our mind is, what is exactly this application/x-www-form-urlencoded or using multipart/form-data and how can we let our spring application consume this. This blog will help you to find answers to Continue Reading

Reactive Streams with JAVA 9

Reading Time: 5 minutes With the introduction of Java 9, Java community has started to show its support directly towards Reactive streams, which was earlier used by leveraging third-party libraries. Please visit my earlier blog on Reactive streams to understand the basic ideologies which are working behind it like the push-pull model or backpressure. As a part of this blog, we will explore how we can leverage the same Continue Reading

Java 9: Getting started with Jshell in JAVA 9

Reading Time: 3 minutes Java Shell tool (JShell) has been introduced as a part of JAVA 9. It is a Read-Evaluate-Print Loop (REPL), which evaluates declarations, statements, and expressions as they are entered and immediately shows the results. The tool is run from the command line. In this blog, we will learn about this interactive tool that can be used for learning the Java programming language and prototyping Java Continue Reading

Aspect Oriented Programming with Spring

Reading Time: 4 minutes What is AOP? Applications are generally developed with multiple layers. A typical Java application has Web Layer – Exposing the services to the outside world using REST or a web application Business Layer – Business Logic Data Layer – Persistence Logic While the responsibilities of each of these layers are different, there are a few common aspects that apply to all layers Logging Security These Continue Reading

Functional Java: It’s good to be lazy

Reading Time: 5 minutes In Java, we are often tempted towards writing a code which is executed eagerly. There’s a good reason for that – eager code is easy to write and to reason about. But delaying commitments until the last responsible moment is a good agile practice. When executing the code, we can gain performance by being just a little lazy.  In this blog, we will try to Continue Reading

Functional Java: Practicality of programming with immutability

Reading Time: 4 minutes Whenever we have tried to learn about functional programming, these two terms have always gained our attention. The first one is pure functions and the second one is immutability. I have tried to explain what are pure functions in one of my previous blogs.  In this particular blog, we’ll discuss the practicality of programming with immutability. What does immutability mean? The definition that you can Continue Reading

Reactive Java: Understanding Reactive streams

Reading Time: 3 minutes With a lot of buzz in the programming world about “reactive Programming”, a new concept following the same path has been introduced. This is “Reactive streams” backed up by the idea of backpressure. In this blog, we try to understand, what does it mean exactly? What are Reactive Streams? We are here talking about handling streams of data that needs to be handled in an Continue Reading

Functional Java: Understanding Pure Functions with JAVA

Reading Time: 3 minutes Functional programming is a programming paradigm which is gaining its popularity day by day. It revolves around binding everything in pure mathematical functions style. It is is the process of building software by composing pure functions, avoiding shared state, mutable data, and side-effects. Functional programming is declarative rather than imperative, and application state flows through pure functions. We call it as a declarative type of Continue Reading

Can we do joins in MongoDB?

Reading Time: 3 minutes MongoDB is a NoSQL document database designed for ease of development and scaling. The best part about using a relational DBMS is that we can perform a wide range of relational queries on it. Doing joins on different tables is very easy. But, when we talk about MongoDB, the way data is stored here is quite different from any relational DBMS. How data is Stored Continue Reading

Spring-Webflux: Testing your Router Functions with WebTestClient

Reading Time: 3 minutes I recently started working on the functional approach of Spring Boot Webflux. You can explore it more on my previous blog on Spring Boot Webflux. It is a new concept and you may not find many useful blogs on it unlike for annotation based controllers. However, going with some trial and error, I have come out with how one can test its router functions along Continue Reading