Managing an application’s performance, and specifically keeping it in good condition, is one of the hardest challenges in software development. That’s true for virtually any programming language and platform. Java is no exception to this rule. But beyond that, Java also presents some unique challenges of its own. For instance, one of those challenges has to do with garbage collection. …
What are Microservices? Code Examples, Best Practices, Tutorials and More
Microservices are increasingly used in the development world as developers work to create larger, more complex applications that are better developed and managed as a combination of smaller services that work cohesively together for more extensive, application-wide functionality. Tools such as Service Fabric are rising to meet the need to think about and build apps using a piece-by-piece methodology that is, …
9 Best Practices to Handle Exceptions in Java
Exception handling in Java isn’t an easy topic. Beginners find it hard to understand and even experienced developers can spend hours discussing how and which Java exceptions should be thrown or handled. That’s why most development teams have their own set of rules on how to use them. And if you’re new to a team, you might be surprised how …
11 Simple Java Performance Tuning Tips
It’s one thing to write code that works. But what about clean, readable, concise code? That’s another thing entirely. To create an app that solves one problem? Not that hard. What about one that not only solves the problem, but it’s also easy and pleasurable to use? Now we’re talking. You could apply the same reasoning for many software properties, …
JBoss Performance Monitoring: The Complete Guide
Ensuring your apps work as designed and deliver a productive user experience starts with monitoring applications metrics. This helps you understand whether your software is performing at optimal levels. Many developers use JBoss (now called WildFly and maintained by Red Hat) to build, deploy, and host transactional applications written in Java. JBoss boasts several awesome features, like fast startup speeds, lightweight functionality, …
Java 12: New Features and Enhancements Developers Should Know
Oracle will soon roll out Java 12 in March 2019 and new releases will drop once every six months thereafter. The goal is to make new releases more frequent for the Java ecosystem, with certain releases earmarked as long-term support (LTS). And by support, we mean the allocation of update releases for bug fixes and critical security patches. This latest …
Java Logs: 4 Types of Logs You Need to Know
Logging is an important topic in software development, especially if you need to analyze bugs and other unexpected events in your production environment. Implementing your logging often seems easy. But as you probably experienced yourself, logging is far more complex than it might seem. That’s why you can find lots of articles about it here on the blog. As an …
SLF4J: 10 Reasons Why You Should Be Using It
What Is SLF4J and What are the Benefits of Using It? One of the most important aspects of developing an efficient system is to have clean, helpful logs that will help you understand what errors are being triggered, and what information is being processed. When you are first creating an application, you might not know what logging framework will be …
Top Java Application Servers: Tomcat vs. Jetty vs. GlassFish vs. WildFly
If you want to write a Java web application, the first thing you’ll need to do is make a difficult decision: choosing the Java application server on which your application will run. This is a tough choice because there are many outstanding ones out there, and the differences between them aren’t always obvious. It’s easy to wind up in a state of …
Java Logging Frameworks: log4j vs logback vs log4j2
If you ever had to analyze an issue in production, I’m sure you know how important it is to have good logging. Good logging requires three things: The log messages need to provide the required information to understand what the application does internally. Writing log messages has to be as efficient as possible so that it doesn’t affect the performance …
Types of Exceptions in Java
Java is an object-oriented programming language. It provides support for various mechanisms such as exception handling. This feature of Java enables developers to manage the runtime errors caused by the exceptions. In this article, you will learn about exceptions in Java. You will also learn about different types of exceptions in Java. Exceptions are the unwanted errors or bugs or …
Top 10 Java Debugging Tips
One of the biggest nightmares for all developers is to debug their code. Debugging code written in Java is a tough task. Debugging is the process of determining and fixing bugs or errors present in the code, project, or application. Debugging your application helps you improve the quality of the code. It is a must-have skill for every Java programmer. …
Learn Java: Tutorials for Beginners, Intermediate, and Advanced Programmers
If you want to be a developer, create applications, or learn how to code, then Java is the best programming language to work with. In this article, we will introduce some of the best Java tutorials for beginners as well as advanced programmers. These tutorials will help you to learn and nourish your programming skills in Java. But first, we’ll …
MongoDB Tutorial: Get Going from Scratch Using Java
There are numerous database systems that take a non-tabular NoSQL approach to handle data management. One of the most popular is MongoDB, which is used in various industries. While MongoDB is only the playground for Ruby on Rails or Node.js developers, using MongoDB with a modern Java framework like Spring Boot results in a powerful tool in the problem-solving arsenal. …
What’s New in Java 10
Java 10 overview March 2018 saw the latest semi-annual release of Java: Java 10. In this article, we’ll examine the big changes introduced in this version, as well as talk about some of the smaller improvements that will make life easier for developers and ops alike. Java 10: Big changes The two big stories in Java 10 are: the new …
Java vs. Python: Coding Battle Royale
While we all started to learn how to code with HTML, developing a sophisticated app requires a more advanced language. Java and Python are two of the hottest programming languages in the market right now because of their versatility, efficiency, and automation capabilities. Both languages have their merits and their flaws, but the main difference is that Java is statically …
Design Patterns Explained – Service Locator Pattern with Code Examples
The service locator pattern is a relatively old pattern that was very popular with Java EE. Martin Fowler described it in 2004 on his blog. The goal of this pattern is to improve the modularity of your application by removing the dependency between the client and the implementation of an interface. Interfaces are one of the most flexible and powerful …
The State of Logging in Java
When developing an application, chances are that it won’t perform as expected on the first run. In order to check what went wrong, developers in general use debuggers. But experienced developers know that if it happens in production, most debuggers won’t be available. Hence, they pepper the source code with logging statements to help their future self debug the next …




















