0% found this document useful (0 votes)
5 views20 pages

Employee Database Servlet Operations

The document provides a comprehensive guide on creating various Java Servlet programs for database operations, session management, and user authentication. It includes examples for CRUD operations on an Employee table, session tracking using hidden fields, persistent cookies, URL rewriting, request forwarding, and a simple login/logout system. Each section contains code snippets and explanations for implementing the respective functionalities.

Uploaded by

darjismit63
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views20 pages

Employee Database Servlet Operations

The document provides a comprehensive guide on creating various Java Servlet programs for database operations, session management, and user authentication. It includes examples for CRUD operations on an Employee table, session tracking using hidden fields, persistent cookies, URL rewriting, request forwarding, and a simple login/logout system. Each section contains code snippets and explanations for implementing the respective functionalities.

Uploaded by

darjismit63
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

5.

Write a Servlet program to perform database-driven operations such as


Insertion, Deletion,

Update, and Selection on an Employee table.

Employee Table (MySQL Example)


CREATE TABLE employee (
emp_id INT PRIMARY KEY,
emp_name VARCHAR(50),
emp_salary DOUBLE,
emp_dept VARCHAR(30)
);

import [Link].*;

import [Link].*;

import [Link].*;

import [Link].*;

public class EmployeeServlet extends HttpServlet {

Connection con;

public void init() throws ServletException {

try {

[Link]("[Link]");

con = [Link](

"jdbc:mysql://localhost:3306/company",

"root",

"password"
);

} catch (Exception e) {

[Link]();

protected void doPost(HttpServletRequest req, HttpServletResponse res)

throws ServletException, IOException {

[Link]("text/html");

PrintWriter out = [Link]();

String action = [Link]("action");

try {

if ([Link]("insert")) {

PreparedStatement ps = [Link](

"INSERT INTO employee VALUES (?,?,?,?)"

);

[Link](1, [Link]([Link]("id")));

[Link](2, [Link]("name"));

[Link](3, [Link]([Link]("salary")));

[Link](4, [Link]("dept"));

[Link]();

[Link]("Employee Inserted Successfully");


} else if ([Link]("update")) {

PreparedStatement ps = [Link](

"UPDATE employee SET emp_name=?, emp_salary=?, emp_dept=? WHERE emp_id=?"

);

[Link](1, [Link]("name"));

[Link](2, [Link]([Link]("salary")));

[Link](3, [Link]("dept"));

[Link](4, [Link]([Link]("id")));

[Link]();

[Link]("Employee Updated Successfully");

} else if ([Link]("delete")) {

PreparedStatement ps = [Link](

"DELETE FROM employee WHERE emp_id=?"

);

[Link](1, [Link]([Link]("id")));

[Link]();

[Link]("Employee Deleted Successfully");

} else if ([Link]("select")) {

Statement st = [Link]();

ResultSet rs = [Link]("SELECT * FROM employee");

[Link]("<table border='1'>");

[Link]("<tr><th>ID</th><th>Name</th><th>Salary</th><th>Dept</th></tr>");
while ([Link]()) {

[Link]("<tr>");

[Link]("<td>" + [Link](1) + "</td>");

[Link]("<td>" + [Link](2) + "</td>");

[Link]("<td>" + [Link](3) + "</td>");

[Link]("<td>" + [Link](4) + "</td>");

[Link]("</tr>");

[Link]("</table>");

} catch (Exception e) {

[Link](e);

public void destroy() {

try {

[Link]();

} catch (Exception e) {

[Link]();

[Link] Mapping

<servlet>

<servlet-name>EmployeeServlet</servlet-name>

<servlet-class>EmployeeServlet</servlet-class>

</servlet>
<servlet-mapping>

<servlet-name>EmployeeServlet</servlet-name>

<url-pattern>/employee</url-pattern>

</servlet-mapping>

6. Write a Servlet program to maintain session using the Hidden Field concept (Prepare 3

Servlets).

Flow
1. FirstServlet – Collects user name
2. SecondServlet – Receives name via hidden field, collects age
3. ThirdServlet – Receives name and age via hidden fields and displays them

[Link]

import [Link].*;

import [Link].*;

import [Link].*;

public class FirstServlet extends HttpServlet {

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {


[Link]("text/html");

PrintWriter out = [Link]();

String name = [Link]("name");

[Link]("<html><body>");

[Link]("<form action='SecondServlet' method='post'>");

[Link]("<input type='hidden' name='uname' value='" + name + "'>");

[Link]("Enter Age: <input type='text' name='age'><br><br>");

[Link]("<input type='submit' value='Next'>");

[Link]("</form>");

[Link]("</body></html>");

2:[Link]
import [Link].*;

import [Link].*;

import [Link].*;

public class SecondServlet extends HttpServlet {

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

[Link]("text/html");

PrintWriter out = [Link]();


String name = [Link]("uname");

String age = [Link]("age");

[Link]("<html><body>");

[Link]("<form action='ThirdServlet' method='post'>");

[Link]("<input type='hidden' name='uname' value='" + name + "'>");

[Link]("<input type='hidden' name='age' value='" + age + "'>");

[Link]("<input type='submit' value='Display Details'>");

[Link]("</form>");

[Link]("</body></html>");

3 [Link]

import [Link].*;
import [Link].*;
import [Link].*;

public class ThirdServlet extends HttpServlet {


protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

[Link]("text/html");
PrintWriter out = [Link]();

String name = [Link]("uname");


String age = [Link]("age");

[Link]("<html><body>");
[Link]("<h2>Session Details</h2>");
[Link]("Name: " + name + "<br>");
[Link]("Age: " + age);
[Link]("</body></html>");
}
}

4 Sample HTML Page ([Link])


<html>
<body>
<form action="FirstServlet" method="post">
Enter Name: <input type="text" name="name"><br><br>
<input type="submit" value="Submit">
</form>
</body>
</html>

7. Write a Servlet program to implement session tracking using Persistent Cookies.

Session Tracking Using Persistent Cookies


Servlet Code (Java)
import [Link].*;
import [Link].*;
import [Link].*;

public class PersistentCookieServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {

[Link]("text/html");
PrintWriter out = [Link]();

String username = [Link]("username");

// If username is provided, create a persistent cookie


if (username != null && ![Link]()) {

Cookie userCookie = new Cookie("user", username);

// Set cookie expiry time (e.g., 24 hours)


[Link](60 * 60 * 24);

[Link](userCookie);

[Link]("<h2>Welcome, " + username + "</h2>");


[Link]("<p>Persistent cookie has been created.</p>");
}
else {
// Read existing cookies
Cookie[] cookies = [Link]();
boolean found = false;

if (cookies != null) {
for (Cookie c : cookies) {
if ([Link]().equals("user")) {
[Link]("<h2>Welcome back, " + [Link]() + "</h2>");
[Link]("<p>Session tracked using persistent cookie.</p>");
found = true;
break;
}
}
}

if (!found)
{
[Link]("<h2>No user cookie found</h2>");
[Link]("<p>Please login first.</p>");
}
}

[Link]();
}
}

HTML Form (Client Side)

<html>
<head>
<title>Persistent Cookie Example</title>
</head>
<body>
<form action="PersistentCookieServlet" method="get">
Enter Name: <input type="text" name="username">
<input type="submit" value="Submit">
</form>
</body>
</html>

8: Write a Servlet program to maintain session using URL Rewriting.

First Servlet ([Link])

import [Link].*;
import [Link].*;
import [Link].*;

public class LoginServlet extends HttpServlet {

public void doPost(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {
[Link]("text/html");
PrintWriter out = [Link]();

String uname = [Link]("username");

[Link]("<html><body>");
[Link]("<h2>Welcome " + uname + "</h2>");

// URL Rewriting
[Link]("<a href='WelcomeServlet?user=" + uname + "'>");
[Link]("Click here to continue</a>");

[Link]("</body></html>");
}
}

Second Servlet ([Link])


import [Link].*;
import [Link].*;
import [Link].*;

public class WelcomeServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {

[Link]("text/html");
PrintWriter out = [Link]();

String uname = [Link]("user");

[Link]("<html><body>");
[Link]("<h2>Hello " + uname + "</h2>");
[Link]("<p>Session maintained using URL Rewriting</p>");
[Link]("</body></html>");
}
}

HTML Form ([Link])


<html>
<body>
<form action="LoginServlet" method="post">
Enter Username:
<input type="text" name="username">
<input type="submit" value="Login">
</form>
</body>
</html>

9. Write a Servlet program to implement Request Forwarding and include an external


resource in the current Servlet context.

1 Forwarding Servlet (Request Forwarding)


2 [Link]
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];

@WebServlet("/forward")
public class ForwardServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {

// Set attribute to share data with forwarded servlet


[Link]("message", "Request forwarded from ForwardServlet");
// Forward request to another servlet
RequestDispatcher rd = [Link]("target");
[Link](request, response);
}
}

2 Target Servlet (Receives Forwarded Request)


[Link]

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

@WebServlet("/target")

public class TargetServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

[Link]("text/html");

PrintWriter out = [Link]();

String msg = (String) [Link]("message");


[Link]("<h2>Target Servlet</h2>");

[Link]("<p>" + msg + "</p>");

3 Including an External Resource (Servlet Include)


[Link]
import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

@WebServlet("/include")

public class IncludeServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

[Link]("text/html");

PrintWriter out = [Link]();

[Link]("<h2>Main Servlet Content</h2>");

[Link]("<p>Before including external resource</p>");


// Include external resource

RequestDispatcher rd = [Link]("[Link]");

[Link](request, response);

[Link]("<p>After including external resource</p>");

4 External Resource (HTML)


[Link]

<h3>This is External HTML Resource</h3>

<p>Included using [Link]()</p>

10. Create a simple Login and Logout system using HttpServlet, HttpSession, and
Cookies.

1. Login Page ([Link])


<!DOCTYPE html>
<html>
<head>
<title>Login</title>
</head>
<body>
<h2>Login</h2>
<form action="LoginServlet" method="post">
Username: <input type="text" name="username" required><br><br>
Password: <input type="password" name="password" required><br><br>
<input type="submit" value="Login">
</form>
</body>
</html>
2. Login Servlet ([Link])
import [Link].*;
import [Link].*;
import [Link].*;

public class LoginServlet extends HttpServlet {

public void doPost(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {

[Link]("text/html");
PrintWriter out = [Link]();

String username = [Link]("username");


String password = [Link]("password");

// Simple validation (hardcoded)


if ([Link]("admin") && [Link]("admin123")) {

// Create session
HttpSession session = [Link]();
[Link]("user", username);

// Create cookie
Cookie ck = new Cookie("username", username);
[Link](60 * 60); // 1 hour
[Link](ck);

[Link]("<h2>Login Successful</h2>");
[Link]("<a href='WelcomeServlet'>Go to Welcome Page</a>");

} else {
[Link]("<h2>Invalid Username or Password</h2>");
[Link]("<a href='[Link]'>Try Again</a>");
}
}
}

3. Welcome Servlet ([Link])


import [Link].*;
import [Link].*;
import [Link].*;

public class WelcomeServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {

[Link]("text/html");
PrintWriter out = [Link]();

HttpSession session = [Link](false);

if (session != null) {
String user = (String) [Link]("user");

[Link]("<h2>Welcome, " + user + "</h2>");


[Link]("<a href='LogoutServlet'>Logout</a>");
} else {
[Link]("<h2>Please login first</h2>");
[Link]("<a href='[Link]'>Login</a>");
}
}
}
4. Logout Servlet ([Link])
import [Link].*;
import [Link].*;
import [Link].*;

public class LogoutServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {

[Link]("text/html");
PrintWriter out = [Link]();

// Invalidate session
HttpSession session = [Link](false);
if (session != null) {
[Link]();
}

// Delete cookie
Cookie ck = new Cookie("username", "");
[Link](0);
[Link](ck);
[Link]("<h2>You are logged out successfully</h2>");
[Link]("<a href='[Link]'>Login Again</a>");
}
}

5. [Link] Configuration
<web-app>

<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/LoginServlet</url-pattern>
</servlet-mapping>

<servlet>
<servlet-name>WelcomeServlet</servlet-name>
<servlet-class>WelcomeServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>WelcomeServlet</servlet-name>
<url-pattern>/WelcomeServlet</url-pattern>
</servlet-mapping>

<servlet>
<servlet-name>LogoutServlet</servlet-name>
<servlet-class>LogoutServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LogoutServlet</servlet-name>
<url-pattern>/LogoutServlet</url-pattern>
</servlet-mapping>

</web-app>

Flow Summary
1. User logs in via [Link]
2. LoginServlet
o Creates HttpSession
o Stores username
o Creates Cookie
3. WelcomeServlet
o Checks session
4. LogoutServlet
o Invalidates session
o Deletes cookie

10 Write an RMI program to perform arithmetic operations on two entered


numbers.

import [Link];
import [Link];

public interface Arithmetic extends Remote {


double add(double a, double b) throws RemoteException;
double sub(double a, double b) throws RemoteException;
double mul(double a, double b) throws RemoteException;
double div(double a, double b) throws RemoteException;
}

2. Remote Implementation
[Link]

import [Link];
import [Link];

public class ArithmeticImpl extends UnicastRemoteObject implements Arithmetic {

protected ArithmeticImpl() throws RemoteException {


super();
}

public double add(double a, double b) throws RemoteException {


return a + b;
}

public double sub(double a, double b) throws RemoteException {


return a - b;
}
public double mul(double a, double b) throws RemoteException {
return a * b;
}

public double div(double a, double b) throws RemoteException {


if (b == 0)
throw new ArithmeticException("Division by zero");
return a / b;
}
}

You might also like