Core Java — JavaBeans
1 min readJun 23, 2021
--
JavaBeans are java classes which are created as per following conventions
- It must have a zero-argument public constructor.
- It must provide getter-setter methods to access private instance variables.
- It must implement Serializable interface.
Let’s create a Java class according to these rules.
import java.io.Serializable;public class Employee implements Serializable { private Integer id;
private String firstName;
private String lastName;
private Double salary; public Employee() {
} public Integer getId() {
return this.id;
} public void setId(Integer id) {
this.id = id;
} public String getFirstName() {
return this.firstName;
} public void setFirstName(String firstName) {
this.firstName = firstName;
} public String getLastName() {
return this.lastName;
} public void setLastName(String lastName) {
this.lastName = lastName;
} public Double getSalary() {
return this.salary;
} public void setSalary(Double salary) {
this.salary = salary;
}}
Now, we can call Employee class a JavaBean.
Some uses of JavaBeans
- We can create a list of employee by reading their data from the database.
List<Employee> employeeList = new ArrayList<>();
while(resultSet.next()) {
Employee employee = new Employee();
employee.setId(resultSet.getInteger("id"));
employee.setFirstName(resultSet.getString("firstname"));
employee.setLastName(resultSet.getString("lastname"));
employee.setSalary(resultSet.getDouble("salary"));
employeeList.add(employee);
}
return employeeList;
2. We can transfer employees data from servlet doGet/doPost methods to JSP page for rendering it as HTML.
protected void doGet(HttpServletRequest request, HttpServletResponse response) {
List<Employee> employeeList = employeeDAO.getAllEmployees;
request.setAttribute("employees", employeeList);
request.getRequestDispatcher("employees.jsp").forward(request,
response);
}
In JSP page
<table>
<tr>
<th>ID</th>
<th>Name</th>
<th>Salary</th>
</tr>
<c:forEach items="${employees}" var="employee">
<tr>
<td>${employee.id}</td>
<td>${employee.firstname} ${employee.lastname}</td>
<td>${employee.salary}</td>
</tr>
</c:forEach>
</table>
JavaBeans are often used to represent real world data. It is easy to store, transfer and access the data if we use JavaBeans specification.