Spring Boot WebSocket AngularJS Gradle Example


WebSocket is a very thin, lightweight layer above TCP used to build interactive web applications that send messages back and forth between a browser and the server.

The best examples are live updates websites, where once user access the website neither user nor browser sends request to the server to get the latest updates. Server only keeps sending the messages to the browser.

For more information on WebSocket please read https://en.wikipedia.org/wiki/WebSocket

In this example, I am building a WebSocket application with Spring Boot using STOMP Messaging to provide automatic updates on the greeting message depending on the time of the day for every 3 secs. Continue reading “Spring Boot WebSocket AngularJS Gradle Example”

Spring Boot Liquibase Gradle Example


It is often important to consider when developing web application, how to evolve the database schema of a Java web application.

Liquibase is an open source library for tracking, managing and applying database changes that can be used for any database. It helps you create the schema, run them during deployment and also help you write automated tests so that your changes will work in production.

Liquibase is a tool that reads a list of database changes from a changelog file. The changelog file is often XML-based, but it could be in other formats also, such as YAML, JSON and SQL formats. Once a new change is added to the changelog file, Liquibase will read the file, detect the new change, and apply it to the database. When code changes are committed to the version control system, the changelog file containing the database “version” also gets committed along with it.

For more information http://www.liquibase.org/

Continue reading “Spring Boot Liquibase Gradle Example”

Spring Boot Activiti Example


This example shows the simplicity of embedding Business Process Management (BPM) into our application using Activiti. We will build a spring boot application that embeds standards-based Business Process Modeling Notation (BPMN) logic into our application.

Activiti has advanced process design tools for embedding more sophisticated BPM logic into our application. These tools include an Eclipse-based and Web-Based BPMN Editor to name a few. Continue reading “Spring Boot Activiti Example”

Solving Josephus problem using Java

The Josephus problem (or Josephus permutation) is a theoretical problem related to a certain counting-out game.

People are standing in a circle waiting to be executed. Counting begins at a specified point in the circle and proceeds around the circle in a specified direction. After a specified number of people are skipped, the next person is executed. The procedure is repeated with the remaining people, starting with the next person, going in the same direction and skipping the same number of people, until only one person remains, and is freed.

For more information you can read https://en.wikipedia.org/wiki/Josephus_problem

Continue reading “Solving Josephus problem using Java”

Jenkins Setup in Windows

Jenkins is the leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project.

  • Jenkins is a self-contained Java-based program, ready to run out-of-the-box, with packages for Windows, Mac OS X and other Unix-like operating systems.
  • Jenkins can be easily set up and configured via its web interface, which includes on-the-fly error checks and built-in help.
  • As an extensible automation server, Jenkins can be used as a simple CI server or turned into the continuous delivery hub for any project.
  • With hundreds of plugins in the Update Center, Jenkins integrates with practically every tool in the continuous integration and continuous delivery toolchain.
  • Jenkins can be extended via its plugin architecture, providing nearly infinite possibilities for what Jenkins can do.
  • Jenkins can easily distribute work across multiple machines, helping drive builds, tests and deployments across multiple platforms faster.

Continue reading “Jenkins Setup in Windows”