BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Java Content on InfoQ

  • JUnit 5 - An Early Test Drive - Part 2

    JUnit, Java's most ubiquitous testing framework, is getting an update. In part one of our JUnit 5 coverage, we looked at how we got here and wrote some preliminary tests. In part two, we take a closer look at how to run tests and at some of the very cool new features JUnit 5 brings to the table for us developers.

  • Working with Multiple Databases in Spring

    Accessing multiple databases in enterprise applications can be a challenge. With Spring it is easy enough to define a common data source, but once we introduce multiple data sources things get tricky. This article demos a technique for accessing multiple databases in Spring Boot applications easily and with minimum configuration.

  • JUnit 5 - An Early Test Drive - Part 1

    JUnit, Java's most ubiquitous testing framework, is getting an update. Yes, JUnit 5 is a complete rewrite that decouples "JUnit the Platform" from "JUnit the Tool" and makes the platform available to other testing frameworks, which might very well redefine the future of testing on the JVM. More than that, it evolves the API and has a very promising extension model.

  • HTTP-RPC: A Lightweight Cross-Platform REST Framework

    HTTP-RPC is an open-source framework allowing developers to create and access cross-platform polyglot RESTful web services using a convenient, RPC-like metaphor, while preserving fundamental REST principles such as statelessness and uniform resource access.

  • What the JIT!? Anatomy of the OpenJDK HotSpot VM

    If you've ever wondered what happens when your bytecode executes, join former Oracle G1GC performance-lead Monica Beckwith in her guided tour of just-in-time (JIT) compilation and runtime optimizations in OpenJDK HotSpot VM.

  • Configure Once, Run Everywhere: Decoupling Configuration and Runtime

    Configuration is one of the most widely used cross-cutting concerns in application development. Apache Tamaya is a new incubator project that brings standardized property management to Java.

  • Living in the Matrix with Bytecode Manipulation

    In this article we take a deep dive into two popular bytecode manipulation frameworks: Javassist & ASM. Bytecode manipulation is used in Java libraries like Spring and Hibernate, most JVM languages and even your IDE. For this reason, and because it’s really quite fun, it is a valuable skillset to learn for performing tasks that are otherwise impossible. And once you learn it, the sky's the limit!

  • Locating Common Micro Service Performance Anti-Patterns

    In this second installment on diagnosing performance issues, performance engineer Andreas Grabner focuses on spotting patterns that cause performance and scalability issues in distributed Micro Service Oriented Architectures.

  • Angular 2 and TypeScript - A High Level Overview

    AngularJS has become the world's most popular JavaScript framework for creating web applications. And now Angular 2 and TypeScript have brought true object oriented web development to the mainstream, using a syntax that is strikingly close to Java 8. In this article we provide a high-level overview of the Angular 2 framework.

  • High Load Trading Transaction Processing with Reveno CQRS/Event Sourcing Framework

    Reveno is a powerful new, easy to use, highly performant, JVM based lock-free transaction processing framework based on CQRS and event-sourcing patterns. In this article we will develop a simple trading system implementation using the Reveno framework.

  • Invokedynamic - Java’s Secret Weapon

    invokedynamic was the first new Java bytecode since Java 1.0 and was crucial in implementing the "headline" features of Java 8 (such as lambdas and default methods). In this article, we take a deep dive into invokedynamic and explain why it is such a powerful tool for the Java platform and for JVM languages such as JRuby and Nashorn.

  • Beyond Page Objects: Next Generation Test Automation with Serenity and the Screenplay Pattern

    Automated acceptance testing reduces time wasted in manual testing and bug fixing, and when combined with Behaviour-Driven Development, can guide development effort. But it requires skill, practice and discipline. The Screenplay Pattern helps teams address these difficulties and is where you may end up by mercilessly refactoring Page Objects using SOLID design principles.

BT