The following article describes how to Insert and Display Records Using HTTP Servlet.
Basically, here we have the following problem. Insert and Display Records Using HTTP Servlet in a database with the name WBPResult with table SecondSemResult. Further, a row with the student name “Anmol”, Enrolment No. “1212347822”, Internal Marks=16, and external marks = 47. Also, a total marks field will be there.
The following code demonstrates how to create an HTTP servlet to insert and display records in a database with specific requirements.
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ResultServlet extends HttpServlet {
private static final String DB_URL = "jdbc:mysql://localhost:3306/WBPResult";
private static final String DB_USER = "root";
private static final String DB_PASSWORD = "password";
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
try {
// Load the JDBC driver
Class.forName("com.mysql.jdbc.Driver");
// Connect to the database
conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
// Insert a new record into the SecondSemResult table
stmt = conn.prepareStatement("INSERT INTO SecondSemResult (name, enrolment_no, internal_marks, external_marks, total_marks) VALUES (?, ?, ?, ?, ?)");
stmt.setString(1, "Anmol");
stmt.setString(2, "1212347822");
stmt.setInt(3, 16);
stmt.setInt(4, 47);
stmt.setInt(5, 63);
int rowsInserted = stmt.executeUpdate();
// Display all the records from the SecondSemResult table
stmt = conn.prepareStatement("SELECT * FROM SecondSemResult");
rs = stmt.executeQuery();
// Set the response content type
response.setContentType("text/html");
PrintWriter out = response.getWriter();
// Generate the HTML table to display the results
out.println("<html>");
out.println("<head><title>Second Semester Result</title></head>");
out.println("<body>");
out.println("<h1>Second Semester Result</h1>");
out.println("<table border='1'>");
out.println("<tr><th>Name</th><th>Enrolment No.</th><th>Internal Marks</th><th>External Marks</th><th>Total Marks</th></tr>");
while (rs.next()) {
out.println("<tr>");
out.println("<td>" + rs.getString("name") + "</td>");
out.println("<td>" + rs.getString("enrolment_no") + "</td>");
out.println("<td>" + rs.getInt("internal_marks") + "</td>");
out.println("<td>" + rs.getInt("external_marks") + "</td>");
out.println("<td>" + rs.getInt("total_marks") + "</td>");
out.println("</tr>");
}
out.println("</table>");
out.println("</body></html>");
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
} finally {
// Close the database resources
try {
if (rs != null) {
rs.close();
}
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
In this example, we have created a servlet class named ResultServlet
that extends HttpServlet
. In the doGet
method, we load the JDBC driver, connect to the database using the DriverManager.getConnection
method, and execute an INSERT statement to add a new record to the SecondSemResult table. We then execute a SELECT statement to get all the records from the SecondSemResult table and display them.
Further Reading
Understanding Enterprise Java Beans
- Android
- Angular
- ASP.NET
- AWS
- Bootstrap
- C
- C#
- C++
- Cloud Computing
- Competitions
- Courses
- CSS
- Deep Learning
- Django
- Dot Net Framework
- HTML
- IoT
- Java
- JavaScript
- Kotlin
- Machine Learning
- MEAN Stack
- MERN Stack
- MongoDB
- NodeJS
- PHP
- Power Bi
- Projects
- Python
- Scratch 3.0
- Solidity
- SQL
- TypeScript
- VB.NET
- Web Designing
- XML
