What are JavaBeans? – Definition, Properties, Advantages, Disadvantages

Reusability is the major concept for any programming language. JavaBean is one such software component designed for reusability in a variety of environments. This tutorial on JavaBeans answers all your queries like What is Jave Beans Exactly, their Properties, Advantages of Using them, Disadvantages, etc. all in detail. By going through this guide you will be well versed on how to implement Java Beans by checking out the simple example program provided further.

What is JavaBeans?

Javabeans is a Portable, Platform Independent Model written in the Programming Language Java. In simple words, they are nothing but the classes that encapsulate several objects within a single object. You can access the objects from multiple places and includes several elements namely constructors, getter/setter methods, etc.

JavaBeans are the ordinary java classes that should follow the following conventions:

  • The JavaBean class must have a public, no-argument constructor (default constructor).
  • The JavaBean class should implement the Serializable interface.
  • It must have private variables.
  • It must have getter and setter methods.
  • The JavaBean class attributes must be accessed via accessors (getter method) and mutator (Setter method) methods.

Syntax for Setter methods

public void setName(String name)

Syntax for getter methods

public String getName()

Must Read:

Why we use JavaBeans?

  • JavaBeans are reusable software components.
  • Using JavaBeans rather than Java Scriptlets in your JSP page allows better separation of the view logic from the business logic.

How to Access the Java Beans Class?

In Order to Access the Java Beans Class, we use getter and setter methods.

How to Access Java Beans Class

Java Beans Properties

Java Bean Property is a named feature that users of the object can access. The feature can be any data type including the classes you define. Java Bean Property can be read, write, read-only, write-only. Features of Java Beans can be accessed using the two methods.

getProperty Name

If the Property Name is Firstname then the Method Name would be getFirstName() to read the Employee Name. The method is known as Accessor. Properties of getter Methods are as such

  • It should be Public in Nature.
  • The return shouldn’t be void.
  • It needs to be prefixed with the word get.
  • getMethod shouldn’t take any argument.

SetProperty Name

If the Property Name is Firstname then the Method Name would be SetFirstName() in order to write the Employee Name. Properties of Setter Methods are as follows

  • It should be public in nature.
  • Return Type needs to be Void.
  • Setter Method needs to be prefixed using the word Set.
  • It should take Some Argument.

Since we are aware of the theoretical knowledge of Java Beans let’s get started to know the implementation process of Java Beans.

Implementation of JavaBeans Example Program

class Student{
private int rollno;
private String name;
private int age;
public void setRollno(int rollno){
this.rollno = rollno;
}
public int getRollno(){
return rollno;
}
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
public void setAge(int age){
this.age = age;
}
public int getAge(){
return age;
}
}
public class JavaBean {
public static void main(String args[]){
Student obj = new Student();
obj.setRollno(111123);
obj.setName("Prashant Srivastava");
obj.setAge(21);
System.out.println("Student rollno is: " +obj.getRollno());
System.out.println("Student name is: " +obj.getName());
System.out.println("Student age is: " +obj.getAge());
}
}

Output:

What are JavaBeans

Java Beans Advantages

We have outlined some of the major benefits of using Java Beans. They are as follows

Portable: Java Beans Components are built purely in Java and are fully portable to the environments that are supported by the Java Run Time Environment. Platform Specifics that support the Java Beans are implemented in Java Virtual Machine.

Compact and Easy: Components of Java Beans are simple to create and easy to use. It will not take much time to write a Simple Bean. Since a Bean is lightweight it will not carry a lot of inherited baggage to support the bean’s environment.

Carries the Strength of Java Platform: Java Beans are pretty compatible and don’t have any complicated mechanism for registering components with run time system.

Along with the numerous advantages that come with Java Beans there are certain disadvantages as well and we would discuss the same.

Disadvantages of Java Beans

  • Since Java Beans are mutable they will not have the advantages provided by the immutable objects.
  • Java Beans will be in an inconsistent state partway because of its construction.
  • Creating a getter and setter method for each property individually may result in boilerplate code.