Posts

Null, undefined and empty checks in JavaScript

Whenever you are writing code in Javascript, the Most common point comes where you and your code reviewer comes to a point to write fail-safe code. When we are talking about fail-safety, the prominent use case comes to check null, undefined, and empty text values. It is very important to handle these values in order not to come across a code failure at runtime. If there are use cases where your variables attain null or undefined you will be in a position to understand and handle it. In JavaScript, the state with no value is represented by  null   or  undefined . It is one of the  primitive values . The most common way to handle the null value is to just put the variable in if condition check. var myVariable = null; //typeof null is "object" and treated falsy if(myVariable){ //resolves to false as value is null console.log(‘I will not print if the value is null.’); } Similar to null, undefined is also treated as falsy. The difference between undefined and null...

ManagedExecutorService JNDI configuration in REDHAT JBoss Enterprise Application Platform

Image
This blog will cover the JNDI configuration of ManagedExecutorService in Redhat JBoss EAP. Login to the JBoss Admin Console Go to Configuration >> Subsystems >> EE and click on Views. This will take you to Executor configuration Screen. You will find default configuration for Executor service. JNDI Name is configured as "java:jboss/ee/concurrency/executor/default". Now, you are set start consuming this JNDI name to consume Executor service. try { javax.naming.InitialContext context = new javax.naming.InitialContext(); javax.enterprise.concurrent.ManagedExecutorService service = (javax.enterprise.concurrent.ManagedExecutorService)context.lookup("java:jboss/ee/concurrency/executor/default"); Future f = service.submit(new ThreadProcessor()); //ThreadProcessor is callable or runnable thread } catch (NamingException e1) { e1.printStackTrace(); }

Top most used GIT commands

Checkout GIT repository in current folder git clone <repository name> . Checkout GIT repository in current folder git checkout -b <new branch name> Push new branch changes to remote repository git push origin  <new branch name> Cherry pick code git cherry-pick <Commit hash string> list all the un-tracked files git clean -n Remove all the un-tracked files git clean -f Remove all the un-tracked files and directories git clean -f -d Delete branch git branch -d <branch Name>              /* local branch */ git branch -D <branch Name>               /* for delete local + remote branch */ Applying stash git stash apply <Stash with index> List all Stash available git stash list Abort merge in progress, this reverts all the files from abort git merge --abort Abort cherry pick that is in progress git cherry-pick --abort Checkout main branch gi...

Most common MySQL or MariaDB commands for Web Developers

Create Database    create database <Database Name>; Selecting a Database   Use <Database Name>; List all tables in Database   show tables; Create User table CREATE TABLE USER ( ID int NOT NULL, NAME varchar(100) NOT NULL, EMAIL_ADDRESS varchar(100), PRIMARY KEY (ID) ) Or  CREATE TABLE USER ( ID int NOT NULL AUTO_INCREMENT, NAME varchar(100) NOT NULL, EMAIL_ADDRESS varchar(100) NOT NULL, SALARY double DEFAULT NULL, NOTE text, PRIMARY KEY (ID) )

Connecting MariaDB using JDBC

Assumption :      You have MariaDB and Client installed. Steps:      Run client and create database using command "create database".       create database test;      Now, connect to that database using "USE" command       Use test;      Create new table USER with following command       CREATE TABLE USER (       ID int NOT NULL,       NAME varchar(100) NOT NULL,       EMAIL_ADDRESS varchar(100),       PRIMARY KEY (ID)       )      Now, download the driver from mysql site. I'm using "mysql-connector-java-5.1.46". MySql and MariaDB are similar so for basic connectivity mysql drivers works. Class.forName("com.mysql.jdbc.Driver"); java.sql.Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "password"); Prepare...

Polymorphism in Java OOP

Image
Polymorphism is word made from two words "Poly" which means many and "morph" means shape/form. Polymorphism means "ability to take multiple shapes or forms". In Java, method and Object both takes multiple forms. There are two forms of polymorphism : Compile time Polymorphism Run time Polymorphism Compile time polymerphism Compile time polymorphism is achieved using method overloading. Method will have same signaturre(name) but different parameters.This method is bound statically with method name and input parameter type hence static binding. Output : Display String Display int Runtime Polymorphism Method overriding is used to achieve Runtime polymorphism. Method will be overridden in subclass. This method is resolved depending on Object instance dynamically at runtime. Output : Display of Display Unit. Display of Monitor.

Inter Thread Communication(Producer-Consumer Problem) simplified

Image
Inter thread communication is very interesting topic where you learn how two thread can talk to each other in a multi-threaded environment. And this is demonstrated with a very simple example of Producer-Consumer problem. Object class's wait and notify method will be used for inter thread communication. I'm assuming two thread Producer Consumer These will be spawned using main thread. Producer will try producing Product. Produce action will be represented by making Available property in Product Object true.  And consumer will be consuming that object by making available property false.  Same object will be used to pass to both threads for inter thread communication Code accessing same object will be synchronised  Main methods used are : Thread.sleep >> It will be used to give some delay so that we can understand code execution. Object.wait >> Wait will be called on product which will make current thread to release lock and wait. Object...