Java beans

1,851 views

Published on

Published in: Technology, Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,851
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
217
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Java beans

  1. 1. Advanced Java Programming Topic: Java Beans By Ravi Kant Sahu Asst. Professor, LPU
  2. 2. Introduction  Every Java user interface class is a JavaBeans component.  Java Beans makes it easy to reuse software components.  Developers can use software components written by others without having to understand their inner workings. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  3. 3. Java Beans  JavaBeans is a software component architecture that extends the power of the Java language by enabling well-formed objects to be manipulated visually at design time in a pure Java builder tool.  It is a reusable software component.  A JavaBean is a specially constructed Java class written in the Java and coded according to the JavaBeans API specifications. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  4. 4. Java Beans Specifications 1. 2. 3. 4. 5. A bean must be a public class. A bean must have a public no-arg constructor, though it can have other constructors if needed. public MyBean(); A bean must implement the Serializable interface to ensure a persistent state. It should provide methods to set and get the values of the properties, known as getter (accessor) and setter (mutator) methods. A bean may have events with correctly constructed public registration and deregistration methods that enable it to add and remove listeners. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  5. 5. Java Beans Specification  The first three requirements must be observed, and therefore are referred to as minimum JavaBeans component requirements.  The last two requirements depend on implementations.  It is possible to write a bean component without get/set methods and event registration/deregistration methods. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  6. 6. Java Beans Example public class StudentsBean implements java.io.Serializable { private String firstName = null; private String lastName = null; private int age = 0; public StudentsBean() { } public String getFirstName() { return firstName; } public String getLastName(){ return lastName; } public int getAge(){ return age; } public void setFirstName(String firstName) { this.firstName = firstName; } public void setLastName(String lastName) { this.lastName = lastName; } public void setAge(Integer age){ this.age = age; } } Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  7. 7. Java Beans Component  The classes that define the beans, referred to as JavaBeans components or bean components.  A JavaBeans component is a serializable public class with a public no-arg constructor. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  8. 8. Bean Properties  Properties are discrete, named attributes of a Java bean that can affect its appearance or behavior.  They are often data fields of a bean. For example, JButton component has a property named text.   Accessor and mutator methods are provided to let the user read and write the properties. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  9. 9. Property-Naming Patterns  The bean property-naming pattern is a convention of the JavaBeans component model that simplifies the bean developer's task of presenting properties.  A property can be a primitive data type or an object type.  The property type dictates the signature of the accessor and mutator methods. Note: Properties describe the state of the bean. Naturally, data fields are used to store properties. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  10. 10. Accessor Methods  The accessor method is named get<PropertyName>(), which takes no parameters and returns a primitive type value or an object of a type identical to the property type.  public String getMessage() public int getXCoordinate() public int getYCoordinate()   Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  11. 11.  For a property of boolean type, the accessor method should be named is<PropertyName>( ) which returns a boolean value. For example: public boolean isCentered() Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  12. 12. Mutator Methods  The mutator method should be named as set<PropertyName>(dataType p) which takes a single parameter identical to the property type and returns void.     public void setMessage(String s) public void setXCoordinate(int x) public void setYCoordinate(int y) public void setCentered(boolean centered) Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  13. 13. Java EvEnt ModEl Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  14. 14. Event Delegation Model  The Java event delegation model provides the foundation for beans to send, receive, and handle events.  The Java event model consists of the following three types of elements: The event object: An event object contains the information that  describes the event.  The source object: A source object is where the event originates. When an event occurs on a source object, an event object is created.  The event listener object: An object interested in the event handles the event. Such an object is called a listener. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  15. 15. Event classes and Event Listener interfaces  An event object is created using an event class, such as ActionEvent, MouseEvent, and ItemEvent. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  16. 16. Source Components  The source component contains the code that detects an external or internal action that triggers the event.  Upon detecting the action, the source should fire an event to the listeners by invoking the event handler defined by the listeners.  The source component must also contain methods for registering and deregistering listeners. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  17. 17. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  18. 18. Listener Components  A listener component for an event must implement the event listener interface.  The object of the listener component cannot receive event notifications from a source component unless the object is registered as a listener of the source.  A listener component may implement any number of listener interfaces to listen to several types of events.  A source component may register many listeners. A source component may register itself as a listener. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  19. 19. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  20. 20. Creating Custom Source Components  A source component must have the appropriate registration and deregistration methods for adding and removing listeners.  Events can be unicasted (only one listener object is notified of the event) or multicasted (each object in a list of listeners is notified of the event). Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  21. 21. Unicast public void add<Event>Listener(<Event>Listener l) throws TooManyListenersException; Multicast The naming pattern for adding a multicast listener is the same, except that it does not throw the TooManyListenersException. public void add<Event>Listener(<Event>Listener l) Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  22. 22. Deregistration Method The naming pattern for removing a listener (either unicast or multicast) public void remove<Event>Listener(<Event>Listener l) Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  23. 23. Creating Java Beans Step 1: Create a Java Bean file e.g. “LightBulb.java” Step 2: Compile the file: javac LightBulb.java Step 3: Create a manifest file, named “manifest.tmp” Step 4: Create the JAR file, named “LightBulb.jar” Step 5: Load jar file. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  24. 24. Manifest File Create text file manifest.tmp  Manifest file describes contents of JAR file  Name: name of file with bean class Java-Bean: true - file is a JavaBean Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  25. 25. Creating Jar file c - creating JAR file f - indicates next argument is name of file m - next argument manifest.tmp file Used to create MANIFEST.MF Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  26. 26. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  27. 27. . .

×