Java Swing in Computer Science

OptimalCesium avatar
OptimalCesium
·
·
Download

Start Quiz

Study Flashcards

29 Questions

Which graphical framework is used for building portable Java-based graphical user interfaces?

Swing

What does the setText() method do for a JCheckBox?

Sets the text of the checkbox to the given text.

Java Swing components allow mixing of AWT heavyweight and Swing lightweight components in an application.

True

Which method is used to create a new JRadioButton with no text?

JRadioButton()

JComboBox shows a popup menu with a list of options for selection.

True

What is a pluggable look and feel (PL&F) in Java Swing components?

It allows the application to run with native look and feel on different platforms.

Swing components are JavaBean ____. (compliant)

compliant

JDBC stands for Java ________ Connectivity.

Database

Match the following JDBC components with their descriptions:

DriverManager = Manages a list of database drivers Connection = Represents communication context for contacting a database ResultSet = Holds data retrieved from a database SQLException = Handles errors in a database application

Match the following Java components with their descriptions:

Java 2D = Set of classes for advanced 2D graphics and imaging Accessibility = Allows Java applications to interact with assistive technologies Drag and Drop = Enables data transfer across different applications within Java

How many types of JDBC drivers are there according to the content?

4

The JDBC-ODBC bridge driver is also known as the ________ driver.

Type-1

Type-2 driver is written in Java language.

False

Which driver does not require any native database library?

Type-4

Match the following JDBC driver types with their descriptions:

Type-1 = Uses ODBC driver to connect to the database and is also known as Universal driver Type-2 = Uses client-side libraries of the database and is a database dependent driver Type-3 = Uses middleware to convert JDBC calls into the vendor-specific database protocol and is fully written in Java Type-4 = Interacts directly with the database, known as the Thin Driver and is fully written in Java language

What is the purpose of JRootPane in Java Swing?

JRootPane is used to provide access to the content pane, menu bar, and glass pane of a JFrame.

Which of the following Swing components are derived from JComponent class? (Select all that apply)

JButton

JLabel can display both text and image at the same time.

False

JTextArea is used for representing a ________ area that displays text.

multi line

Match the following components with their descriptions:

JCheckbox = A component that can be selected or deselected, displaying its state to the user. JTextField = A component that allows editing of a single line of text. JPasswordField = A component that allows editing of a single line of text where typed characters are not shown. JTextArea = An area that displays and allows editing of multiple lines of text.

How do you retrieve the value from the OUT parameter after calling a stored procedure?

Appropriate getXXX() method

What is the standard way to select rows from a database and view them in a result set?

SELECT statement

The ResultSet interface represents the result set of a database query.

True

If you do not specify any ResultSet type, you will automatically get one that is ___.

TYPE_FORWARD_ONLY

Match the ResultSet type with its description:

TYPE_FORWARD_ONLY = The cursor can only move forward in the result set. TYPE_SCROLL_INSENSITIVE = The cursor can scroll forward and backward, and the result set is not sensitive to changes made by others to the database. TYPE_SCROLL_SENSITIVE = The cursor can scroll forward and backward, and the result set is sensitive to changes made by others to the database.

What method is used to set auto-commit to false in the first code snippet?

conn.setAutoCommit(false)

What is the purpose of using batch processing in JDBC?

To execute a group of SQL statements together for better performance

What method is used to add the SQL statements to the batch in the second code snippet? pstmt.______();

addBatch

In batch processing, statements are executed individually rather than as a group.

False

Study Notes

Swing

  • Java Foundation Classes (JFC) is a graphical framework for building portable Java-based graphical user interfaces.
  • JFC consists of Abstract Window Toolkit (AWT), Swing, and Java 2D.
  • Swing is a part of JFC that is used to create window-based applications.
  • Swing components facilitate efficient graphical user interface (GUI) development.

Features of Swing

  • Platform Independent: Swing components are not platform specific, and can be used on any platform.
  • Lightweight: Swing components are lightweight, which helps in creating a lighter UI.
  • Plugging: Swing has a powerful component that can be extended to provide support for the user interface.
  • Manageable: It is easy to manage and configure Swing components, with the ability to make changes at runtime.
  • MVC: Swing follows the concept of Model View Controller (MVC), which allows for changes in one component without impacting others.

Java Foundation Class

  • Java Foundation Classes (JFC): JFC provides a consistent user interface for Java programs, regardless of the underlying user interface system.

Swing vs AWT

  • Swing: Swing components are platform-independent, lightweight, and support pluggable look and feel.
  • AWT: AWT components are platform-dependent, heavyweight, and do not support pluggable look and feel.

Component Hierarchy

  • JComponent Class: JComponent class is the root of the visual component class hierarchy in JFC.
  • JComponent: The JComponent class is a repository of functionality for all visual components.

Panes

  • RootPane: A root pane is created when a JFrame is created.
  • GlassPane: A glass pane is a transparent pane that covers the entire visible area of the root pane.
  • ContentPane: A content pane is where all the visible content is placed.
  • LayeredPane: A layered pane is a Swing container that holds components using the concept of layers.

Swing Components

  • JLabel: JLabel is used to display a short string or an image icon.
  • JTextField: JTextField is a component that allows editing of a single line of text.
  • JPasswordField: JPasswordField is a component that allows editing of a single line of text, but the view indicates that something was typed, without showing the actual characters.

Example Code

  • Example code is provided for JLabel, JTextField, JPasswordField, and JRootPane.### JTextArea
  • Used to display and edit text
  • Inherits JComponent class
  • Can be customized to user's needs
  • Constructors:
    • JTextArea(): constructs a new blank text area
    • JTextArea(String s): constructs a new text area with a given initial text
    • JTextArea(int row, int column): constructs a new text area with a given number of rows and columns
    • JTextArea(String s, int row, int column): constructs a new text area with a given number of rows and columns and a given initial text
  • Commonly used methods:
    • append(String s): appends the given string to the text of the text area
    • getLineCount(): gets the number of lines in the text of the text area
    • setFont(Font f): sets the font of the text area to the given font
    • setColumns(int c): sets the number of columns of the text area to the given integer
    • setRows(int r): sets the number of rows of the text area to the given integer

JCheckBox

  • Used to create a checkbox
  • Inherits JToggleButton class
  • Can be selected or deselected
  • Displays its state to the user
  • Constructors:
    • JCheckBox(): creates a new checkbox with no text or icon
    • JCheckBox(Icon i): creates a new checkbox with the specified icon
    • JCheckBox(Icon icon, boolean s): creates a new checkbox with the specified icon and the boolean value specifies whether it is selected or not
    • JCheckBox(String t): creates a new checkbox with the specified string
    • JCheckBox(String text, boolean selected): creates a new checkbox with the specified string and the boolean value specifies whether it is selected or not
    • JCheckBox(String text, Icon icon): creates a new checkbox with the specified string and icon
    • JCheckBox(String text, Icon icon, boolean selected): creates a new checkbox with the specified string and icon and the boolean value specifies whether it is selected or not
  • Methods to add Item Listener to checkbox: +.addActionListener(ItemListener l): adds item listener to the component
    • itemStateChanged(ItemEvent e): abstract function invoked when the state of the item to which listener is applied changes
    • getItem(): returns the component-specific object associated with the item whose state changed
    • getStateChange(): returns the new state of the item
    • getSource(): returns the component that fired the item event
  • Commonly used methods:
    • setIcon(Icon i): sets the icon of the checkbox to the given icon
    • setText(String s): sets the text of the checkbox to the given text
    • setSelected(boolean b): sets the checkbox to selected if the boolean value passed is true or vice versa
    • getIcon(): returns the image of the checkbox
    • getText(): returns the text of the checkbox

JRadioButton

  • Used to create a radio button
  • Used to select one option from multiple options
  • Added to a ButtonGroup to select only one radio button at a time
  • Methods used:
    • JRadioButton(): creates a new unselected radio button with no text
    • setButtonGroup(ButtonGroup G): adds the radio button to a ButtonGroup
    • isSelected(): returns a boolean value indicating whether the radio button is selected or not

JComboBox

  • Used to create a combo box
  • Inherit JComponent class
  • Can be editable or read-only
  • Constructors:
    • JComboBox(): creates a new empty combo box
    • JComboBox(ComboBoxModel M): creates a new combo box with items from the specified ComboBoxModel
    • JComboBox(E[] i): creates a new combo box with items from the specified array
    • JComboBox(Vector items): creates a new combo box with items from the specified vector
  • Commonly used methods:
    • addItem(E item): adds the item to the combo box
    • addItemListener(ItemListener l): adds an item listener to the combo box
    • getItemAt(int i): returns the item at the specified index
    • getItemCount(): returns the number of items in the combo box
    • getSelectedItem(): returns the selected item
    • removeItemAt(int i): removes the item at the specified index
    • setEditable(boolean b): sets the combo box to be editable or not

JList

  • Used to display a set of objects and allows the user to select one or more items
  • Inherit JComponent class
  • Constructors:
    • JList(): creates a new empty list
    • JList(E[] l): creates a new list with the elements of the specified array
    • JList(ListModel d): creates a new list with the specified ListModel
    • JList(Vector l): creates a new list with the elements of the specified vector
  • Commonly used methods:
    • getSelectedIndex(): returns the index of the selected item
    • getSelectedValue(): returns the selected value
    • setSelectedIndex(int i): sets the selected index
    • setSelectionBackground(Color c): sets the background color of the list
    • setSelectionForeground(Color c): sets the foreground color of the list

JDBC

  • Java Database Connectivity
  • Used for database-independent connectivity between Java and a wide range of databases
  • API provides a set of interfaces that allows for portable access to an underlying database
  • JDBC components:
    • DriverManager: manages a list of database drivers
    • Driver: handles the communication with the database server
    • Connection: represents the communication context
    • Statement: used to submit SQL statements to the database
    • ResultSet: holds the data retrieved from the database
    • SQLException: handles errors that occur in a database application
  • JDBC Architecture:
    • Two-tier architecture: Java application talks directly to the data source
    • Three-tier architecture: Java application talks to a middle tier, which talks to the data source
  • JDBC drivers:
    • Type-1 driver: JDBC-ODBC bridge driver
    • Type-2 driver: Native-API driver
    • Type-3 driver: Network Protocol driver
    • Type-4 driver: Thin driver
  • JDBC statements:
    • Statement: general-purpose access to the database
    • PreparedStatement: used when you plan to use the SQL statements many times
    • CallableStatement: used to access the database stored procedures### Creating Statement Objects
  • A Statement object needs to be created using the Connection object's createStatement() method before it can be used to execute a SQL statement.
  • The createStatement() method returns a Statement object, which can then be used to execute a SQL statement with one of its three execute methods.

Execute Methods

  • boolean execute(String SQL): Returns a boolean value of true if a ResultSet object can be retrieved; otherwise, it returns false.
  • int executeUpdate(String SQL): Returns the number of rows affected by the execution of the SQL statement.
  • ResultSet executeQuery(String SQL): Returns a ResultSet object.

Closing Statement Objects

  • A Statement object should be closed to save database resources.
  • A simple call to the close() method will do the job.
  • If the Connection object is closed first, it will also close the Statement object.

PreparedStatement Objects

  • The PreparedStatement interface extends the Statement interface, providing additional functionality.
  • It allows for the flexibility of supplying arguments dynamically.
  • Creating a PreparedStatement object is similar to creating a Statement object, but with the prepareStatement() method.
  • Parameters in JDBC are represented by the ? symbol, known as the parameter marker.
  • Values for every parameter must be supplied before executing the SQL statement using the setXXX() methods.

Execute Methods with PreparedStatement

  • The execute methods with PreparedStatement are similar to those with Statement, but with the added functionality of using SQL statements that can input parameters.

Closing PreparedStatement Objects

  • A PreparedStatement object should be closed to save database resources.
  • A simple call to the close() method will do the job.
  • If the Connection object is closed first, it will also close the PreparedStatement object.

CallableStatement Objects

  • The CallableStatement object is used to execute a call to a database stored procedure.
  • Creating a CallableStatement object is similar to creating a PreparedStatement object, but with the prepareCall() method.
  • Three types of parameters exist: IN, OUT, and INOUT.
  • The registerOutParameter() method binds the JDBC data type to the data type that the stored procedure is expected to return.

Closing CallableStatement Objects

  • A CallableStatement object should be closed to save database resources.
  • A simple call to the close() method will do the job.
  • If the Connection object is closed first, it will also close the CallableStatement object.

ResultSet

  • The ResultSet interface represents the result set of a database query.
  • A ResultSet object maintains a cursor that points to the current row in the result set.
  • The methods of the ResultSet interface can be broken down into three categories: navigational methods, get methods, and update methods.

Connection Modes

  • Connection with URL: DriverManager.getConnection(url)
  • Connection with URL, user, password: DriverManager.getConnection(url, user, password)
  • Connection with URL and Properties: DriverManager.getConnection(url, properties)
  • Connection via Try-With-Resources: try (Connection connection = DriverManager.getConnection(url, user, password)) { ... }

JDBC Transactions

  • If the JDBC Connection is in auto-commit mode, every SQL statement is committed to the database upon its completion.
  • To enable manual-transaction support, use the setAutoCommit() method.
  • Commit and rollback changes using the commit() and rollback() methods.

Commit and Rollback

  • conn.commit(): Commits the changes to the database.
  • conn.rollback(): Rolls back the changes to the database.

Using Savepoints

  • The Savepoint interface gives additional transactional control.
  • Setting a savepoint defines a logical rollback point within a transaction.
  • conn.setSavepoint("Savepoint1"): Defines a new savepoint.
  • conn.rollback(savepoint1): Rolls back work to the specified savepoint.

Batch Updations

  • Batch Processing allows grouping related SQL statements into a batch and submitting them with one call to the database.
  • The addBatch() method is used to add individual statements to the batch.
  • The executeBatch() method is used to start the execution of all the statements grouped together.
  • The clearBatch() method removes all the statements added to the batch.

Batching with Statement Object

  • Set auto-commit to false using setAutoCommit().
  • Add SQL statements to the batch using addBatch().
  • Execute all the SQL statements using executeBatch().
  • Commit all the changes using commit().

This quiz covers the basics of Java Swing, a graphical framework used to build portable Java-based graphical user interfaces. It is a part of Java Foundation Classes (JFC) and is used to create window-based applications.

Make Your Own Quizzes and Flashcards

Convert your notes into interactive study material.

Get started for free

More Quizzes Like This

Advance Java Unit 1: JFC and AWT
16 questions

Advance Java Unit 1: JFC and AWT

ProgressiveEmpowerment avatar
ProgressiveEmpowerment
Java Unit 1: JFC and AWT
16 questions

Java Unit 1: JFC and AWT

SpiritualBananaTree4216 avatar
SpiritualBananaTree4216
Java GUI Components: AWT and Swing
30 questions

Java GUI Components: AWT and Swing

FlourishingPyramidsOfGiza avatar
FlourishingPyramidsOfGiza
Use Quizgecko on...
Browser
Browser