JPA(Java Persistence API) specification lets you define which objects should be persisted, and how those objects should be persisted in your Java applications. JPA is considered the standard industry approach for Object to Relational Mapping (ORM) in the Java Industry.
Often we come across situations where we do like to stick to a single language. The need to switch from Java to Hibernate Query Language (HQL) or Java Persistence Query Language (JPQL), it is a tedious process because the syntax is different for each and partly unintuitive. …
On my previous post, we have seen how you can deploy our docker apps on Elastic Beanstalk. This post documents how you can install a self signed certificate on Elastic Beanstalk which would enable HTTPS url for our application.
Many at times, there are business requirements that all requests and responses to an API should be over HTTPS, which definitely we consider doing in production. So for development and testing purposes, we can use a self signed certificate and get things working.
HTTPS is a secure protocol that allows browsers to send encrypted information to a server and vice versa…
Elastic Beanstalk(EB) is an AWS service that internally leverages Amazon EC2 and S3. It also deploys, manages and scales the applications for you.
AWS Elastic Beanstalk is an easy-to-use service for deploying and scaling web applications and services developed with Java, .NET, PHP, Node.js, Python, Ruby, Go, and Docker on familiar servers such as Apache, Nginx, Passenger, and IIS.
There are multiple ways to deploy applications using Elastic Beanstalk. You can deploy using the management console, the CLI, or the API. The amazing thing about Elastic Beanstalk is that once you upload your application, it takes care of things like…
Microservices is now a common term with every software development workspace. Let me remind you, in the simplest definition of what microservice is:
Microservices are a way of breaking large software projects into loosely coupled modules, which communicate with each other through simple Application Programming Interfaces (APIs).
Let see some of the cool features of IntelliJ IDEA IDE which can make life somewhat easy for developers.
Selecting “Always Select Opened File” automatically shows current file in the file tree on the left side. Handy especially in large projects.
This is one of the cool thing when doing boring changes in SQL, JSON and similar files.
The addition of the Stream was one of the major features added to Java 8. Streams are lazy-sequential data pipeline of functional blocks. It is n’t implemented as a data structure or by changing its elements directly.
Streams, just a dumb pipe providing the scaffolding to operate on, making it really a smart pipe.
Why are streams valuable to learn about ?
The basic concept behind streams is very simple:- We got a data source, perform zero or more intermediate operations, and then process to get a result.
More elaborately, the parts of a stream can be separated into mainly…
This tutorial is a continued episode for my last blog. In this blog, we would go through the new feature Spring Boot 2.3.0 introduced for building Spring Boot docker images using Cloud Native Buildpacks (CNB). We will try to understand the process and behavior pros and cons at the end too. First lets try to understand what is Cloud Native Build packs and its role. Lets get started…
CNBs are the part of the platform that take our application and convert it into something that the platform can actually run. Behind the scenes, a buildpack retrieves dependencies, processes assets, handles…
Almost all the Java developers are familiar with building war or jar files, nd using their preferred tools, but in case of a microservice architecture, there would be certainly a need to build docker images.
Building any image is not always an easy task. Prerequisites includes minimum of docker knowledge, writing a docker file, running a docker daemon, and finally building and publishing the image to a registry.
There are several Maven and Gradle docker plugins that integrate with your app process like Spotify docker plugin and fabric8 docker plugin.
In this article, we are going to focus on Jib…
Code coverage is an important aspect in any software development. It tells you how much of your code was executed by your tests. As a tool, it is useful during the development of your unit/integration tests because it helps highlight where your tests may have missed paths through the code.
For example, if the code you are testing has an if..then..else condition and your test calls the code with parameters that cause the if condition block to be tested but not the else block, code coverage helps highlight untested code.
This is a common practice that when we use a maven project, we find it hard to analyze what all dependencies and transitive dependencies comes bundled when we add a library. The general approach taken by most of the developers is manually inspecting if “I had used this dependency or not and if not then how can I remove it.”
The easiest way to see what all dependencies project uses is using the simple maven command in the root directory of project :
mvn dependency : tree
But this gives the entire hierarchy of the dependencies in project and not…