Java Stack vs. Heap

Java Heap Space vs. Stack Memory: How Java Applications Allocate Memory

Angela Stringfellow Developer Tips, Tricks & Resources

Java applications need a certain amount of RAM on a computer to run. Each time an object or variable is declared, it needs more RAM. Simply designating enough memory to hold every value declared and run each method would lead to a bloated application. To keep application memory requirements lean, it is partitioned in ways that require less memory and …

Common Mistake to Avoid with Java Exception Handling

7 Common Mistakes You Should Avoid When Handling Java Exceptions

Thorben Janssen Developer Tips, Tricks & Resources

Handling an exception is one of the most common but not necessarily one of the easiest tasks. It is still one of the frequently discussed topics in experienced teams, and there are several best practices and common mistakes you should be aware of. Here are a few things you should avoid when handling exceptions in your application. Mistake 1: Specify …

Use Jackson XML module to support for both JSON and XML data

Solving the XML Problem with Jackson

Eugen Paraschiv Developer Tips, Tricks & Resources

Introduction Jackson is a popular library for handling JSON in Java applications, quickly becoming the de-facto standard in the ecosystem. Starting with version 2, it has also introduced a mature XML implementation alongside its established JSON support. Adding Jackson XML to the Project Adding the Jackson XML module to the project only needs a single dependency – the Jackson XML …

Understand Java Memory Leaks

How Memory Leaks Happen in a Java Application

Eugen Paraschiv Developer Tips, Tricks & Resources

Introduction to Memory Leaks In Java Apps One of the core benefits of Java is the JVM, which is an out-of-the-box memory management. Essentially, we can create objects and the Java Garbage Collector will take care of allocating and freeing up memory for us. Nevertheless, memory leaks can still occur in Java applications. In this article, we’re going to describe the …

Solving Logback problems

Solving Your Logging Problems with Logback

Eugen Paraschiv Developer Tips, Tricks & Resources

Logback is a logging framework for Java applications, created as a successor to the popular log4j project. In fact, both of these frameworks were created by the same developer. Given that logging is a crucial part of any application for both debugging and audit purposes, choosing an adequate logging library is a foundational decision for any project. There are several …

Java Strings dos and don't

The Do’s and Don’ts of Java Strings

Lyndsey Padget Developer Tips, Tricks & Resources

Today we’re going to be talking about Strings in Java.  If you write Java often, you know that a String is considered a first class object, even though it is not one of the eight primitive types.  What you may not know is how to best handle Strings in production applications. To do this, you’ll need to understand how to …

Java EE

How To Build Microservices With Java EE And JBossForge

Thorben Janssen Developer Tips, Tricks & Resources

Microservices have become one of the most popular architectural styles in the recent years. Previously, most development teams created huge monoliths which implemented all customer requirements. The downside of this approach is that the application often becomes a huge, unstructured combination of components, classes, and interfaces. That makes it hard to understand the overall system and to predict the side-effects …

How to Handle Exceptions in Java

How to Specify and Handle Exceptions in Java

Thorben Janssen Developer Tips, Tricks & Resources

Errors happen all the time in the software world. It might be an invalid user input or an external system that is not responding, or it’s a simple programming error. In all these situations, the errors occur at runtime and the application needs to handle them. Otherwise, it crashes and can’t process further requests. Java provides a powerful mechanism which …

Top Java Tools

Top Java Tools: 63 Tools to Power Every Phase of Java Development

Alexandra Altvater Developer Tips, Tricks & Resources

Many know Java as one of the simplest, but most powerful (not to mention sought-after) programming languages used by web developers. There are others who see it in the opposite light, saying that Java is a hard and more complex programming language. In order to execute your Java coding more effectively, there are a handful of Java tools that web …

Java Web Services Tutorial: Improve App Communication And Flexibility

Eugen Paraschiv Developer Tips, Tricks & Resources

Web services have taken the development world by storm, especially in recent years as they’ve become more and more widely adopted. There are naturally many reasons for this, but first, let’s understand what exactly a web service is. The World Wide Web Consortium (W3C) defines “web of services” as “message-based design frequently found on the Web and in enterprise software”. …

Java Interview Questions

20 Java Pros and Dev Leaders Share Their Favorite Java Interview Questions (and How You Should Prepare to Answer Them)

Alexandra Altvater Developer Career Development

Java remains a popular programming language, and it’s still the most sought-after programming language among employers. That means if you’re looking for a programming job, prospective employers will likely be asking questions designed to gauge your knowledge of this long-established programming language. (If you’re interviewing for new developer positions, you should probably brush up on your DevOps interview questions, too.) …

JUnit 5 Code Example

A Look at JUnit 5’s Core Features & New Testing Functionality

Eugen Paraschiv Developer Tips, Tricks & Resources

JUnit 5 is the updated version of the highly popular testing library for Java applications, JUnit, scheduled to be released in Q3 2017. The new version enables a lot more testing options and finally adds support for Java 8 features. In fact, JUnit 5 requires Java 8 to work. The library is composed of several modules, organized in 3 main sub-projects: JUnit …

Gradle vs. Maven

Gradle vs. Maven: Performance, Compatibility, Builds, & More

Alexandra Altvater Developer Tips, Tricks & Resources

Gradle is one of several Java development tools featured in Stackify’s Comprehensive Java Developer’s Guide, but it’s not the only build automation tool to consider. Maven is an older and commonly used alternative, but which build system is best for your project? With other tools, such as Spring, allowing developers to choose between the two systems, coupled with an increasing …

How Log4J2 Works: 10 Ways to Get the Most Out Of It

Eugen Paraschiv Developer Tips, Tricks & Resources

Log4j2 is the updated version of the popular and influential log4j library, used extensively throughout the Java ecosystem for so many years. Version 2.x keeps all the logging features of its predecessor and builds on that foundation with some significant improvements, especially in the area of performance. And of course, given how instrumental logging is for any application, both for …

Java Management Extensions

What is Java Management Extensions? An Overview of JMX, mBeans and Consoles, Tutorials & More

Alexandra Altvater Developer Tips, Tricks & Resources, Insights for Dev Managers

Java remains one of the most popular programming languages in 2017, landing second only to JavaScript among the languages developers use most. Developers for this popular language are in high demand, as well, requiring a diverse skillset including communication, in-depth knowledge of the ecosystem, and of course an understanding of the language so deep they could code in their sleep. …

What is Java DevOps?

What is Java DevOps? Benefits, Considerations, Tutorials and More

Alexandra Altvater Developer Tips, Tricks & Resources, Insights for Dev Managers

DevOps sees the coming together of practices, philosophies, and tools that allow you to create services and applications very quickly. This means that you can improve on your apps and evolve them at a much faster rate than those developers who are using traditional software development processes. We’ve talked about DevOps, in general, a great deal, but today, we’re going …

Important Skills and Characteristics for Java Developers

20 Development Leaders and Java Pros Reveal the Most Important Characteristics and Skills of Great Java Developers

Alexandra Altvater BuildBetter, Developer Career Development, Insights for Dev Managers

Java remains one of the most popular programming languages. In our recent deep-dive into the hottest programming languages for 2017, Java landed second among the most-used programming languages and the languages with the most active repositories on GitHub – beat out only by JavaScript in both categories. Aside from its widespread use, it’s also the most in-demand programming language among …

Java Logging Sins

9 Logging Sins in Your Java Applications

Eugen Paraschiv Developer Tips, Tricks & Resources

Logging runtime information in your Java application is critically useful for understanding the behavior of any app, especially in cases when you encounter unexpected scenarios, errors or just need track certain application events. In a real-world production environment, you usually don’t have the luxury of debugging. And so, logging files can be the only thing you have to go off …

What is VisualVM? How to Use VisualVM, Benefits, Tutorials and More

Alexandra Altvater Developer Tips, Tricks & Resources, Insights for Dev Managers

VisualVM is a Java profiler, one of the several types of Java performance tools (to see more of our favorite Java performance tools, check out this post). In today’s post, we’ll take a look at VisualVM, how it works, and some integrations and alternatives. A Definition of VisualVM VisualVM is a powerful tool that provides a visual interface to see deep and …

Develop your application with Spring Boot

How Spring Boot Can Level Up your Spring Application

Eugen Paraschiv Developer Tips, Tricks & Resources

The Spring Ecosystem There are a two stable, mature stacks for building web applications in the Java ecosystem, and considering the popularity and strong adoption, the Spring Framework is certainly the primary solution. Spring offers a quite powerful way to build a web app, with support for dependency injection, transaction management, polyglot persistence, application security, first-hand REST API support, an MVC framework …