Advanced Java Programs
Advanced Java Programs
1. Login Form Using AWT Components
import java.awt.*;
import java.awt.event.*;
public class LoginFormAWT extends Frame implements ActionListener {
TextField username, password;
Label l1, l2, msg;
Button login;
LoginFormAWT() {
setTitle("Login Form");
setSize(300, 200);
setLayout(new FlowLayout());
l1 = new Label("Username:");
l2 = new Label("Password:");
username = new TextField(20);
password = new TextField(20);
password.setEchoChar('*');
login = new Button("Login");
login.addActionListener(this);
add(l1); add(username);
add(l2); add(password);
add(login);
msg = new Label();
add(msg);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
msg.setText("Logged in as: " + username.getText());
}
public static void main(String[] args) {
new LoginFormAWT();
}
}
2. Form Using List and Choice
import java.awt.*;
public class ListChoiceFormAWT extends Frame {
List languageList;
Choice countryChoice;
ListChoiceFormAWT() {
setTitle("List and Choice Form");
setSize(300, 200);
setLayout(new FlowLayout());
languageList = new List(3);
languageList.add("Java");
languageList.add("C++");
languageList.add("Python");
countryChoice = new Choice();
countryChoice.add("India");
countryChoice.add("USA");
countryChoice.add("UK");
add(new Label("Select Language:"));
add(languageList);
add(new Label("Select Country:"));
add(countryChoice);
setVisible(true);
}
public static void main(String[] args) {
new ListChoiceFormAWT();
}
}
3. Simple Calculator Using GridLayout
import java.awt.*;
import java.awt.event.*;
public class CalculatorGridLayout extends Frame implements ActionListener {
TextField display;
Button[] numButtons;
Button add, sub, mul, div, eq;
double num1, num2, result;
String operator;
CalculatorGridLayout() {
setTitle("Simple Calculator");
setLayout(new GridLayout(4, 4));
display = new TextField();
add(display);
numButtons = new Button[10];
for (int i = 0; i < 10; i++) {
numButtons[i] = new Button(String.valueOf(i));
numButtons[i].addActionListener(this);
add(numButtons[i]);
}
add = new Button("+"); add.addActionListener(this);
sub = new Button("-"); sub.addActionListener(this);
mul = new Button("*"); mul.addActionListener(this);
div = new Button("/"); div.addActionListener(this);
eq = new Button("="); eq.addActionListener(this);
add(add); add(sub); add(mul); add(div); add(eq);
setSize(300, 300);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
String command = e.getActionCommand();
if (command.charAt(0) >= '0' && command.charAt(0) <= '9') {
display.setText(display.getText() + command);
} else if (command.equals("+") || command.equals("-") || command.equals("*") || command.equals("/")) {
num1 = Double.parseDouble(display.getText());
operator = command;
display.setText("");
} else if (command.equals("=")) {
num2 = Double.parseDouble(display.getText());
switch (operator) {
case "+": result = num1 + num2; break;
case "-": result = num1 - num2; break;
case "*": result = num1 * num2; break;
case "/": result = num1 / num2; break;
}
display.setText(String.valueOf(result));
}
}
public static void main(String[] args) {
new CalculatorGridLayout();
}
}
4. Card Deck Using CardLayout
import java.awt.*;
import java.awt.event.*;
public class CardLayoutExample extends Frame implements ActionListener {
CardLayout card;
Button b1, b2, b3;
Panel cardPanel;
CardLayoutExample() {
setTitle("CardLayout Example");
card = new CardLayout(40, 30);
cardPanel = new Panel();
cardPanel.setLayout(card);
b1 = new Button("Panel 1");
b2 = new Button("Panel 2");
b3 = new Button("Panel 3");
Panel p1 = new Panel();
p1.add(new Label("This is Panel 1"));
Panel p2 = new Panel();
p2.add(new Label("This is Panel 2"));
Panel p3 = new Panel();
p3.add(new Label("This is Panel 3"));
cardPanel.add(p1, "Panel 1");
cardPanel.add(p2, "Panel 2");
cardPanel.add(p3, "Panel 3");
add(cardPanel);
setLayout(new FlowLayout());
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
add(b1);
add(b2);
add(b3);
setSize(400, 400);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
card.next(cardPanel);
}
public static void main(String[] args) {
new CardLayoutExample();
}
}
5. Menu Bar with Submenu (AWT)
5. Menu Bar with Submenu (AWT)
import java.awt.*;
import java.awt.event.*;
public class MenuBarAWTExample extends Frame {
MenuBar menuBar;
Menu fileMenu, editMenu, viewMenu;
MenuItem newItem, openItem, exitItem;
MenuBarAWTExample() {
setTitle("Menu Bar Example");
setSize(400, 300);
menuBar = new MenuBar();
fileMenu = new Menu("File");
newItem = new MenuItem("New");
openItem = new MenuItem("Open");
exitItem = new MenuItem("Exit");
fileMenu.add(newItem);
fileMenu.add(openItem);
fileMenu.add(exitItem);
editMenu = new Menu("Edit");
viewMenu = new Menu("View");
menuBar.add(fileMenu);
menuBar.add(editMenu);
menuBar.add(viewMenu);
setMenuBar(menuBar);
setVisible(true);
}
public static void main(String[] args) {
new MenuBarAWTExample();
}
}
6. Swing Applet with ScrollPane and JComboBox
6. Swing Applet with ScrollPane and JComboBox
import javax.swing.*;
import java.awt.*;
public class ScrollComboBoxApplet extends JApplet {
public void init() {
String[] languages = { "English", "Marathi", "Hindi", "Sanskrit" };
JComboBox comboBox = new JComboBox<>(languages);
JTextArea textArea = new JTextArea(5, 20);
JScrollPane scrollPane = new JScrollPane(textArea);
add(comboBox, BorderLayout.NORTH);
add(scrollPane, BorderLayout.CENTER);
}
}
7. JTree Example
7. JTree Example
import javax.swing.*;
import javax.swing.tree.DefaultMutableTreeNode;
public class JTreeExample extends JFrame {
public JTreeExample() {
setTitle("JTree Example");
DefaultMutableTreeNode root = new DefaultMutableTreeNode("Root");
DefaultMutableTreeNode child1 = new DefaultMutableTreeNode("Child 1");
DefaultMutableTreeNode child2 = new DefaultMutableTreeNode("Child 2");
root.add(child1);
root.add(child2);
JTree tree = new JTree(root);
add(new JScrollPane(tree));
setSize(300, 300);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String[] args) {
new JTreeExample();
}
}
8. JTable Example
8. JTable Example
import javax.swing.*;
import java.awt.*;
public class JTableExample extends JFrame {
public JTableExample() {
setTitle("JTable Example");
String[][] data = {
{ "1", "John", "25" },
{ "2", "Anna", "30" },
{ "3", "Paul", "28" }
};
String[] columnNames = { "ID", "Name", "Age" };
JTable table = new JTable(data, columnNames);
add(new JScrollPane(table), BorderLayout.CENTER);
setSize(400, 300);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String[] args) {
new JTableExample();
}
}
9. JProgressBar Example
9. JProgressBar Example
import javax.swing.*;
public class JProgressBarExample extends JFrame {
JProgressBar progressBar;
JProgressBarExample() {
setTitle("JProgressBar Example");
progressBar = new JProgressBar(0, 100);
progressBar.setValue(0);
progressBar.setStringPainted(true);
add(progressBar);
setSize(400, 100);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
fillProgressBar();
}
private void fillProgressBar() {
int i = 0;
try {
while (i <= 100) {
progressBar.setValue(i);
Thread.sleep(100);
i += 5;
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new JProgressBarExample();
}
}
10. Handling Key Events in Applet
10. Handling Key Events in Applet
import java.awt.*;
import java.awt.event.*;
public class KeyEventApplet extends Applet implements KeyListener {
String msg = "";
public void init() {
addKeyListener(this);
}
public void keyPressed(KeyEvent ke) {
msg = "Key Pressed: " + ke.getKeyChar();
repaint();
}
public void keyReleased(KeyEvent ke) {
msg = "Key Released: " + ke.getKeyChar();
repaint();
}
public void keyTyped(KeyEvent ke) {
msg = "Key Typed: " + ke.getKeyChar();
repaint();
}
public void paint(Graphics g) {
g.drawString(msg, 20, 50);
}
}
11. Handling Mouse Events with MouseListener
import java.awt.*;
import java.awt.event.*;
public class MouseEventExample extends Frame implements MouseListener {
String msg = "";
MouseEventExample() {
addMouseListener(this);
setSize(300, 300);
setVisible(true);
}
public void mouseClicked(MouseEvent e) {
msg = "Mouse Clicked";
repaint();
}
public void mouseEntered(MouseEvent e) {
msg = "Mouse Entered";
repaint();
}
public void mouseExited(MouseEvent e) {
msg = "Mouse Exited";
repaint();
}
public void mousePressed(MouseEvent e) {
msg = "Mouse Pressed";
repaint();
}
public void mouseReleased(MouseEvent e) {
msg = "Mouse Released";
repaint();
}
public void paint(Graphics g) {
g.drawString(msg, 50, 50);
}
public static void main(String[] args) {
new MouseEventExample();
}
}
12. Login Form Using JTextField and JPasswordField (Swing)
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class LoginFormExample extends JFrame implements ActionListener {
JTextField usernameField;
JPasswordField passwordField;
LoginFormExample() {
setTitle("Login Form");
setLayout(new GridLayout(3, 2));
JLabel usernameLabel = new JLabel("Username:");
JLabel passwordLabel = new JLabel("Password:");
usernameField = new JTextField();
passwordField = new JPasswordField();
JButton loginButton = new JButton("Login");
loginButton.addActionListener(this);
add(usernameLabel);
add(usernameField);
add(passwordLabel);
add(passwordField);
add(loginButton);
setSize(300, 150);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
String username = usernameField.getText();
String password = new String(passwordField.getPassword());
System.out.println("Username: " + username);
System.out.println("Password: " + password);
}
public static void main(String[] args) {
new LoginFormExample();
}
}
13. Handling KeyPressed, KeyReleased, KeyTyped in Applet
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class KeyEventApplet extends Applet implements KeyListener {
String msg = "";
public void init() {
addKeyListener(this);
setFocusable(true);
requestFocus();
}
public void keyPressed(KeyEvent e) {
msg = "Key Pressed: " + e.getKeyChar();
repaint();
}
public void keyReleased(KeyEvent e) {
msg = "Key Released: " + e.getKeyChar();
repaint();
}
public void keyTyped(KeyEvent e) {
msg = "Key Typed: " + e.getKeyChar();
repaint();
}
public void paint(Graphics g) {
g.drawString(msg, 20, 50);
}
}
14. Handling MouseMotionListener Events
import java.awt.*;
import java.awt.event.*;
public class MouseMotionListenerExample extends Frame implements MouseMotionListener {
String msg = "";
MouseMotionListenerExample() {
addMouseMotionListener(this);
setSize(400, 300);
setVisible(true);
}
public void mouseDragged(MouseEvent e) {
msg = "Mouse Dragged at: " + e.getX() + ", " + e.getY();
repaint();
}
public void mouseMoved(MouseEvent e) {
msg = "Mouse Moved at: " + e.getX() + ", " + e.getY();
repaint();
}
public void paint(Graphics g) {
g.drawString(msg, 50, 50);
}
public static void main(String[] args) {
new MouseMotionListenerExample();
}
}
15. Use of WindowAdapter Class
import java.awt.*;
import java.awt.event.*;
public class WindowAdapterExample extends Frame {
WindowAdapterExample() {
setTitle("Window Adapter Example");
setSize(300, 200);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent we) {
System.exit(0);
}
});
setVisible(true);
}
public static void main(String[] args) {
new WindowAdapterExample();
}
}
16. Arithmetic Operations in Applet
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class ArithmeticApplet extends Applet implements ActionListener {
TextField num1, num2, result;
Button addButton, subButton;
public void init() {
num1 = new TextField(5);
num2 = new TextField(5);
result = new TextField(5);
result.setEditable(false);
addButton = new Button("Add");
subButton = new Button("Subtract");
add(num1);
add(num2);
add(addButton);
add(subButton);
add(result);
addButton.addActionListener(this);
subButton.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
int number1 = Integer.parseInt(num1.getText());
int number2 = Integer.parseInt(num2.getText());
if (e.getSource() == addButton) {
result.setText(String.valueOf(number1 + number2));
} else if (e.getSource() == subButton) {
result.setText(String.valueOf(number1 - number2));
}
}
}
17. Use of InetAddress Class
import java.net.*;
public class InetAddressExample {
public static void main(String[] args) {
try {
InetAddress ip = InetAddress.getLocalHost();
System.out.println("Current IP address: " + ip.getHostAddress());
System.out.println("Host Name: " + ip.getHostName());
} catch (UnknownHostException e) {
e.printStackTrace();
}
}
}
18. Use of URL and URLConnection
import java.io.*;
import java.net.*;
public class URLConnectionExample {
public static void main(String[] args) {
try {
URL url = new URL("http://www.example.com");
URLConnection urlConnection = url.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(urlConnection.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null) {
System.out.println(inputLine);
}
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
19. Database Interaction with JDBC
import java.sql.*;
public class JDBCExample {
public static void main(String[] args) {
try {
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/testdb", "username", "password");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM users");
while (rs.next()) {
System.out.println("User ID: " + rs.getInt("id"));
System.out.println("Username: " + rs.getString("username"));
}
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
20. Servlet Program for Authentication
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
PrintWriter out = response.getWriter();
response.setContentType("text/html");
if ("admin".equals(username) && "admin123".equals(password)) {
out.println("Login Successful
");
} else {
out.println("Invalid Credentials
");
}
}
}