package javaapplication48;
/**
* @author user
*/
import [Link].*;
import [Link].*;
import [Link];
import [Link];
import [Link].*;
import [Link].*;
import [Link].*;
import [Link].*;
public class JavaApplication48 extends JFrame {
private JTextField empIdField, empNameField, basicPayField, hraField, daField;
private JTextArea resultArea;
private Connection connection;
public JavaApplication48() {
setTitle("Employee Payslip System");
setSize(700, 500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
[Link] = new Insets(10, 10, 10, 10);
empIdField = addLabelAndTextField("Employee ID:", 0, gbc);
empNameField = addLabelAndTextField("Employee Name:", 1, gbc);
basicPayField = addLabelAndTextField("Basic Pay:", 2, gbc);
hraField = addLabelAndTextField("HRA:", 3, gbc);
daField = addLabelAndTextField("DA:", 4, gbc);
JButton insertButton = new JButton("Insert Data");
[Link] = 0; [Link] = 5; add(insertButton, gbc);
JButton submitButton = new JButton("Fetch Payslip");
[Link] = 1; add(submitButton, gbc);
resultArea = new JTextArea(10, 40);
[Link](false);
addComponentWithScrollPane(resultArea, 6, gbc);
connectDatabase();
[Link](e -> insertEmployeeData());
[Link](e -> fetchEmployeeDetails([Link]()));
private JTextField addLabelAndTextField(String labelText, int yPos, GridBagConstraints gbc) {
[Link] = 0; [Link] = yPos; add(new JLabel(labelText), gbc);
JTextField textField = new JTextField(20);
[Link] = 1; add(textField, gbc);
return textField;
private void addComponentWithScrollPane(JComponent component, int yPos, GridBagConstraints
gbc) {
[Link] = 0; [Link] = yPos; [Link] = 2;
JScrollPane scrollPane = new JScrollPane(component);
add(scrollPane, gbc);
}
private void connectDatabase() {
try {
[Link]("[Link]");
connection = [Link](
"jdbc:oracle:thin:@localhost:1521:XE", // Replace XE with your Oracle SID
"system", // Replace with your Oracle username
"manager" // Replace with your Oracle password
);
} catch (Exception e) {
showError("Database Connection Failed!");
private void insertEmployeeData() {
try {
double basicPay = [Link]([Link]());
double hra = [Link]([Link]());
double da = [Link]([Link]());
double grossPay = basicPay + hra + da;
double netPay = grossPay - (0.05 * grossPay);
String query = "INSERT INTO empdetails (emp_id, emp_name, bp, hra, da, grosspay, netpay)
VALUES (?, ?, ?, ?, ?, ?, ?)";
PreparedStatement statement = [Link](query);
[Link](1, [Link]());
[Link](2, [Link]());
[Link](3, basicPay);
[Link](4, hra);
[Link](5, da);
[Link](6, grossPay);
[Link](7, netPay);
if ([Link]() > 0) {
[Link](this, "Employee data inserted successfully!");
} catch (Exception e) {
showError("Error inserting data!");
private void fetchEmployeeDetails(String empId) {
try {
String query = "SELECT emp_name, bp, hra, da, grosspay, netpay FROM empdetails WHERE
emp_id = ?";
PreparedStatement statement = [Link](query);
[Link](1, empId);
ResultSet resultSet = [Link]();
if ([Link]()) {
[Link]([Link]("Employee ID: %s\nName: %s\nBasic Pay: %.2f\nHRA:
%.2f\nDA: %.2f\nGross Pay: %.2f\nNet Pay: %.2f",
empId, [Link]("emp_name"), [Link]("bp"),
[Link]("hra"), [Link]("da"),
[Link]("grosspay"), [Link]("netpay")));
} else {
[Link]("Employee not found!");
} catch (SQLException e) {
showError("Error fetching data!");
}
private void showError(String message) {
[Link](this, message, "Error", JOptionPane.ERROR_MESSAGE);
public static void main(String[] args) {
[Link](() -> new JavaApplication48().setVisible(true));
desc empdetails;
Name Null? Type
----------------------------------------- -------- ----------------------------
EMP_ID NOT NULL VARCHAR2(10)
EMP_NAME VARCHAR2(100)
BP NUMBER(10,2)
HRA NUMBER(10,2)
DA NUMBER(10,2)
GROSSPAY NUMBER(10,2)
NETPAY NUMBER(10,2)