Advanced Java Lab PB1 to PB4
Advanced Java Lab PB1 to PB4
package com.studentmgt;
import java.util.Scanner;
import java.sql.*;
do {
System.out.println("1. Add new Student");
System.out.println("2. Delete a specified student's Record");
System.out.println("3. Update Student's Address");
System.out.println("4. Search for a particular Student");
System.out.println("5. Exit");
System.out.print("Enter your choice: ");
choice = scanner.nextInt();
switch (choice) {
case 1:
addNewStudent(conn, scanner);
break;
case 2:
deleteStudentRecord(conn, scanner);
break;
case 3:
updateStudentAddress(conn, scanner);
break;
case 4:
searchStudent(conn, scanner);
break;
case 5:
System.out.println("Exiting...");
break;
default:
System.out.println("Invalid choice. Please try again.");
}
} while (choice != 5);
conn.close();
scanner.close();
} catch (SQLException se) {
se.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
String sql = "INSERT INTO student (regno, sname, dob, address, class, course) VALUES (?, ?, ?,
?, ?, ?)";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setInt(1, regNo);
preparedStatement.setString(2, sname);
preparedStatement.setString(3, dob);
preparedStatement.setString(4, address);
preparedStatement.setString(5, class_);
preparedStatement.setString(6, course);
preparedStatement.executeUpdate();
System.out.println("Student added successfully!");
}
if (resultSet.next()) {
System.out.println("Student Details:");
System.out.println("Registration Number: " + resultSet.getInt("regno"));
System.out.println("Name: " + resultSet.getString("name"));
System.out.println("Date of Birth: " + resultSet.getString("dob"));
System.out.println("Address: " + resultSet.getString("address"));
System.out.println("Class: " + resultSet.getString("class"));
System.out.println("Course: " + resultSet.getString("course"));
} else {
System.out.println("No student found with the given Registration Number.");
}
}
}
import java.sql.*;
import java.util.Scanner;
import java.sql.*;
int choice;
do {
System.out.println("MENU");
System.out.println("1. Add new Account Holder information");
System.out.println("2. Amount Deposit");
System.out.println("3. Amount Withdrawal (Maintain minimum balance 500 Rs)");
System.out.println("4. Display all information");
System.out.println("5. Exit");
System.out.print("Enter your choice: ");
choice = scanner.nextInt();
switch (choice) {
case 1:
addNewAccountHolder(conn, scanner);
break;
case 2:
depositAmount(conn, scanner);
break;
case 3:
withdrawAmount(conn, scanner);
break;
case 4:
displayAllInformation(conn);
break;
case 5:
System.out.println("Exiting...");
break;
default:
System.out.println("Invalid choice. Please try again.");
}
} while (choice != 5);
conn.close();
scanner.close();
} catch (SQLException se) {
se.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
String sql = "INSERT INTO bank (accno, acname, address, balance) VALUES (?, ?, ?, ?)";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setInt(1, accNo);
preparedStatement.setString(2, accHolderName);
preparedStatement.setString(3, address);
preparedStatement.setDouble(4, balance);
int rowsInserted = preparedStatement.executeUpdate();
if (rowsInserted > 0) {
System.out.println("New account holder information added successfully!");
} else {
System.out.println("Failed to add new account holder information.");
}
} catch (SQLException se) {
se.printStackTrace();
}
}
String sql = "UPDATE bank SET balance = balance + ? WHERE accno = ?";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setDouble(1, amount);
preparedStatement.setInt(2, accNo);
int rowsUpdated = preparedStatement.executeUpdate();
if (rowsUpdated > 0) {
System.out.println("Amount deposited successfully!");
} else {
System.out.println("No account found with the given Account Number.");
}
} catch (SQLException se) {
se.printStackTrace();
}
}
import java.rmi.Remote;
import java.rmi.RemoteException;
TaxImpl.java
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
@Override
public double calculateTax(double income) throws RemoteException {
if (income <= 300000) {
return 0;
} else if (income <= 600000) {
return (income - 300000) * 0.05;
} else if (income <= 900000) {
return (300000 * 0.05) + ((income - 600000) * 0.10);
} else if (income <= 1200000) {
return (300000 * 0.05) + (300000 * 0.10) + ((income - 900000) * 0.15);
} else if (income <= 1500000) {
return (300000 * 0.05) + (300000 * 0.10) + (300000 * 0.15) + ((income - 1200000) * 0.20);
} else {
return (300000 * 0.05) + (300000 * 0.10) + (300000 * 0.15) + (300000 * 0.20) + ((income -
1500000) * 0.30);
}
}
}
TaxServer.java
import java.rmi.Naming;
TaxClient.java
import java.rmi.Naming;
import java.util.Scanner;
4. Write a Java class called SimpleInterest with methods for calculating simple
interest. Have this class as a servant and create a server program and register in
the rmiregistry. Write a client program to invoke these remote methods of the
servant and do the calculations. Accept inputs at command prompt.
SimpleInterest.java
import java.rmi.Remote;
import java.rmi.RemoteException;
SimpleInterestImpl.java
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
@Override
public double calculateSimpleInterest(double principal, double rate, double time) throws
RemoteException {
return (principal * rate * time) / 100;
}
}
SimpleInterestServer.java
import java.rmi.Naming;
import java.rmi.registry.LocateRegistry;
import java.rmi.Naming;