Java prototype pattern example

Sometimes creating a new object is expensive, you need use "new" keyword and set properties. Prototype pattern is a good way to create the instance without "new" keyword. You can change the value of properties when needed after cloning object. Example code is like following.

Java singleton pattern example

Singleton make sure only one instance in your program. There are two kinds of singleton: initialization first, lazy initialization. The first one initializes class in the beginning. The second one initializes class when getInstance method is first invoked. The codes of them are like following.

Java builder pattern example

There are two kinds of builder pattern on the internet. Both of them separate the construction of a complex object from its representation. In this page I will show you how to use them.

Java factory method example

Factory method pattern is used to create different "product" when you overridden the create method in subclass. Your business logic code is handle the "product" which created by overridden method. The diagram of it is like following.

Java abstract factory example

Abstract factory is one of the most popular design patterns. You can upgrade your program by adding concrete factory and without modifying the code. In this blog I will show you how it works. The diagram of it is like following.

Java comparable and comparator example

There are two ways to sort multiple objects. Create a Comparator or make objects implement Comparable interface. In this blog I will show you how to sort multiple objects.

Java maven thrift example

In last blog I have show you how to use thrift in java. You may found that you have to use command to generate class and move it into your package. Today I will show you how to use maven generate thrift class. It is easy and efficient.

Java thrift example

Thrift is one of the most popular remote procedure call (RPC) frameworks. You can use it to build cross-platform system. In this page I will show you how to use it in Java.

Java stringbuilder remove last character

Using StringBuilder or StringBuffer is more efficient then String when you need append some strings. There is a problem when use them in loop. We have to remove the last character when end the loop. Today I will show you how to remove last character when you use StringBuilder or StringBuffer.

Java blockingqueue producer consumer example

In this page I will show you how to use BlockingQueue. Producer put products into BlockingQueue and consumer consumes the products one by one. The products in BlockingQueue will be consumed on a FIFO (first-in-first-out) basis. Sample code is like following.

Java future callable example

In this blog I will show you how to use Future and Callable to get the result asynchronously. Write your logic code in call method of Callable then submit it and get Future. isDone method in Future class can help you to get the result of your task. get method of Future class will get the result of your task, this method will block the thread if the task doesn't finish. Sample code is like following.

Java serialization when object changed

It is easy to serialize object to byte array and deserialize byte array to object. Today I will show you how to serialize and deserialize object when it changed.

Spring Boot interceptor example

In this page I will show you how to use interceptor in Spring Boot. You can use interceptor handling common business logic. The structure of project is like following.

MySQL enable remote access

In this page I will show you how to make MySQL to support remote accessing. I assume you install MySQL in your environment and local login successfully. Before remote accessing we need creating a database.

Your password does not satisfy the current policy requirements

When you see "Your password does not satisfy the current policy requirements" error message that means your password is not safe. MySQL use validate_password plugin to test passwords and improve security. There are 3 levels in validate_password_policy. You can check the value of it by using following command.