0% found this document useful (0 votes)
18 views10 pages

Index - HTML: Adityaraj 51 92200938159

lkscmksm

Uploaded by

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

Index - HTML: Adityaraj 51 92200938159

lkscmksm

Uploaded by

adityarajaj189
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Advance Java Programming(09CE1504)

PRACTICAL – 19
AIM: Create Servlet file which contains following functions: 1. Connect 2.
Create Database 3. Create Tabe 4. Insert Records into respective table 5.
Update records of particular table of database 6. Delete Records from table.
7. Delete table and also database.

Index.html

<!DOCTYPE html>
<html>
<head>
<title>Login Page</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style> body { font-
family: Arial, sans-serif;
background-color: #f3f4f6;
margin: 0;
padding: 0; display:
flex; justify-content:
center; align-items:
center;
height: 100vh;
}

.login-container {
background-color: #fff; border-
radius: 8px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
width: 100%; max-width: 400px;
padding: 20px; text-align: center;
}
h2 {
color: #333;
margin-bottom: 20px;
}

.buttons-container button {
background-color: #4CAF50;
color: white; padding: 10px

Adityaraj 51 92200938159
Advance Java Programming(09CE1504)

15px; font-size: 16px;


border: none;
border-radius: 4px;
cursor: pointer;
margin: 10px 5px;
}

.buttons-container button.delete {
background-color: #f44336;
}

form {
display: none;
text-align: left;
}
label {
display: block;
font-weight: bold;
margin-bottom: 8px;
}

input[type="text"],
input[type="password"] {
width: 90%;
padding: 10px;
margin-bottom: 20px;
border: 1px solid #ccc;
border-radius: 4px;
font-size: 16px;
}

button.submit {
width: 100%;
}
</style>
</head>
<body>
<div class="login-container">
<h2>Perform any operation</h2>
<div class="buttons-container">
<button onclick="showForm('insertForm')">Insert</button>
<button onclick="showForm('updateForm')">Update</button>

Adityaraj 52 92200938159
Advance Java Programming(09CE1504)

<button onclick="showForm('deleteForm')" class="delete">Delete</button>


</div>

<!-- Insert Form -->


<form id="insertForm" method="POST" action="hi">
<label for="username">Username:</label>
<input type="text" id="username" name="username" required>

<label for="password">Password:</label>
<input type="password" id="password" name="password" required>

<button type="submit" class="submit">Insert</button>


</form>

<!-- Update Form -->


<form id="updateForm" method="POST" action="SecondServlet">
<label for="old-username">Old Username:</label>
<input type="text" id="old-username" name="old-username" required>

<label for="new-username">New Username:</label>


<input type="text" id="new-username" name="new-username" required>

<button type="submit" class="submit">Update</button>


</form>

<!-- Delete Form -->


<form id="deleteForm" method="POST" action="ThirdServlet">
<label for="delete-username">Username to Delete:</label>
<input type="text" id="delete-username" name="delete-username" required>

<button type="submit" class="submit delete">Delete</button>


</form>
</div>

<script>
function showForm(formId) {
// Hide all forms
document.getElementById('insertForm').style.display = 'none';
document.getElementById('updateForm').style.display = 'none';
document.getElementById('deleteForm').style.display = 'none';

// Show the selected form

Adityaraj 53 92200938159
Advance Java Programming(09CE1504)

document.getElementById(formId).style.display = 'block';
}
</script>
</body>
</html>

FirstServlet.java

import java.io.IOException; import


java.io.PrintWriter; import
java.sql.Connection; import
java.sql.DriverManager; import
java.sql.PreparedStatement; import
java.sql.SQLException; import
javax.servlet.ServletException; import
javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import
javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet(name = "FirstServlet", urlPatterns = {"/hi"}) public


class FirstServlet extends HttpServlet {

private static final String DB_URL = "jdbc:mysql://localhost:3306/ajp";


private static final String DB_USER = "root";
private static final String DB_PASSWORD = "";

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/plain;charset=UTF-8");

String username = request.getParameter("username");


String password = request.getParameter("password");

try (PrintWriter out = response.getWriter()) {


if (storeUserData(username, password)) {
out.print("success");
} else {
out.print("error");
}

Adityaraj 54 92200938159
Advance Java Programming(09CE1504)

}
}

private boolean storeUserData(String username, String password) {


boolean isSuccess = false;

// Load JDBC Driver


try {
Class.forName("com.mysql.cj.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace(); return false;
}

try (Connection conn = DriverManager.getConnection(DB_URL, DB_USER,


DB_PASSWORD);
PreparedStatement ps = conn.prepareStatement("INSERT INTO login (username,
password) VALUES (?, ?)")) {

ps.setString(1, username);
ps.setString(2, password);
isSuccess = ps.executeUpdate() > 0;

} catch (SQLException e) {
e.printStackTrace();
}

return isSuccess;
}
}

SecondServlet.java

import java.io.IOException; import


java.io.PrintWriter; import
java.sql.Connection; import
java.sql.DriverManager; import
java.sql.PreparedStatement; import
java.sql.SQLException; import
javax.servlet.ServletException; import
javax.servlet.annotation.WebServlet; import
javax.servlet.http.HttpServlet; import
javax.servlet.http.HttpServletRequest;

Adityaraj 55 92200938159
Advance Java Programming(09CE1504)

import javax.servlet.http.HttpServletResponse;

@WebServlet(name = "SecondServlet", urlPatterns = {"/SecondServlet"}) public


class SecondServlet extends HttpServlet {

private static final String DB_URL = "jdbc:mysql://localhost:3306/ajp";


private static final String DB_USER = "root";
private static final String DB_PASSWORD = "";

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/plain;charset=UTF-8");

String oldUsername = request.getParameter("old-username");


String newUsername = request.getParameter("new-username");

try (PrintWriter out = response.getWriter()) { if


(updateUsername(oldUsername, newUsername)) {
out.print("Username updated successfully");
} else {
out.print("Error updating username");
}
}
}

private boolean updateUsername(String oldUsername, String newUsername) {


boolean isSuccess = false;

try {
Class.forName("com.mysql.cj.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
return false;
}

try (Connection conn = DriverManager.getConnection(DB_URL, DB_USER,


DB_PASSWORD);
PreparedStatement ps = conn.prepareStatement("UPDATE login SET username = ?
WHERE username = ?")) {

Adityaraj 56 92200938159
Advance Java Programming(09CE1504)

ps.setString(1, newUsername);
ps.setString(2, oldUsername);
isSuccess = ps.executeUpdate() > 0;

} catch (SQLException e) {
e.printStackTrace();
}

return isSuccess;
}
}

ThirdServlet.java

import java.io.IOException; import


java.io.PrintWriter; import
java.sql.Connection; import
java.sql.DriverManager; import
java.sql.PreparedStatement; import
java.sql.SQLException; import
javax.servlet.ServletException; import
javax.servlet.annotation.WebServlet; import
javax.servlet.http.HttpServlet; import
javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet(name = "ThirdServlet", urlPatterns = {"/ThirdServlet"}) public


class ThirdServlet extends HttpServlet {

private static final String DB_URL = "jdbc:mysql://localhost:3306/ajp";


private static final String DB_USER = "root";
private static final String DB_PASSWORD = "";

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/plain;charset=UTF-8");

String usernameToDelete = request.getParameter("delete-username");

try (PrintWriter out = response.getWriter()) {


if (deleteUsername(usernameToDelete)) {

Adityaraj 57 92200938159
Advance Java Programming(09CE1504)

out.print("Username deleted successfully");


} else {
out.print("Error deleting username");
}
}
}

private boolean deleteUsername(String username) {


boolean isSuccess = false;

try {
Class.forName("com.mysql.cj.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace(); return false;
}

try (Connection conn = DriverManager.getConnection(DB_URL, DB_USER,


DB_PASSWORD);
PreparedStatement ps = conn.prepareStatement("DELETE FROM login WHERE
username = ?")) {

ps.setString(1, username);
isSuccess = ps.executeUpdate() > 0;

} catch (SQLException e) {
e.printStackTrace();
}

return isSuccess;
}
}

Web.xml

<?xml version="1.0" encoding="UTF-8"?>


<web-app version="4.0" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-
app_4_0.xsd">
<servlet-mapping>
<servlet-name>FirstServlet</servlet-name>
<url-pattern>/hi</url-pattern>

Adityaraj 58 92200938159
Advance Java Programming(09CE1504)

</servlet-mapping>
<servlet-mapping>
<servlet-name>SecondServlet</servlet-name>
<url-pattern>/SecondServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ThirdServlet</servlet-name>
<url-pattern>/ThirdServlet</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>30</session-timeout>
</session-config>
</web-app>

OUTPUT :-

Adityaraj 59 92200938159
Advance Java Programming(09CE1504)

Adityaraj 60 92200938159

You might also like