A Maven project for learning Java during my free time. Most of the explanations are written directly in the code as Javadoc. I use tests to understand technical detail in different frameworks. You can run these tests using:
mvn clean install
This project is tested under Java 11 and Java 15.
| Module | Description |
|---|---|
| Akka | Build highly concurrent, distributed, and resilient message-driven applications on the JVM https://akka.io |
| AssertJ | AssertJ testing framework. |
| Basic | Basic usage of Java core APIs. |
| CLI | Apache Commons CLI. |
| Date | Date manipulation using java.util.* and java.time.*. |
| Elasticsearch | Elasticsearch: Open source, distributed, RESTful search engine |
| Encoding | Encoding challenge in Java. |
| IO | Java File I/O. |
| Immutables | Generate simple, safe and consistent value objects. https://immutables.github.io/ |
| Jackson | Jackson, a high-performance JSON processor for Java. |
| Java 8 | New functionality of Java 8, including filter, map, stream. |
| Jetty | Jetty Server. |
| JGit | Basic usages of JGit. |
| JMH | Java Microbenchmark Harness (JMH). |
| JSON | JSON conversion libraries in Java. |
| JUnit | JUnit testing framework. |
| Logback | Logback logging framework. |
| Maven | Basic functionality of Maven. |
| Mongo | The MongoDB database |
| Mockito | Mockito, the most popular mocking framework for Java unit tests |
| OCA | Oracle Certified Associate Java SE 8 |
| OCP | Oracle Certified Professional Java SE 8 |
| Reliability | Tips to make production more reliable. |
| Rest | RESTful API using Jersey. |
| Typesafe Config | Typesafe Config, configuration library for JVM languages. |
| XML | XML serialization, XPath, XSD. |
| VAVR | Functional component library that provides persistent data types and functional control structures. |
Here are some blog posts that I wrote using the source code of this repository. Visit https://mincong.io to see the complete list.
- Why Do We Need Completable Future?
- 3 Ways to Handle Exception In Completable Future
- How CompletableFuture is tested in OpenJDK?
Date manipulation using java.util.* and java.time.*.
- Using Java Time In Different Frameworks
- Controlling Time with Java Clock
- Convert Date to ISO 8601 String in Java
Mockito, the most popular mocking framework for Java unit tests. https://site.mockito.org
- Mockito: 3 Ways to Init Mock in JUnit 5
- Mockito: 3 Ways to Init Mock in JUnit 4
- Mockito: ArgumentCaptor
- Mockito: 4 Ways to Verify Interations
- Testing with GwtMockito
I use Google Java Code Style for this repo.