Servlet – 注册表单
我们需要将您的 servlet 应用程序链接到数据库以创建注册表单。这里我们使用 MySQL 数据库。使用 Html、Servlet 和 MYSQL 的注册表单。
- 使用 Html 设计注册页面。
- 在 MYSQL 工作台中创建数据库和表。
- 使用 JDBC MYSQL 在Java中的数据库连接。
我们可以看到下图的注册表的流程如下:
首先,我们通过使用 index.html 文件从用户那里获取输入,在这一步之后,我们将该数据发送到 GfgRegister。 Java文件,它是一个 servlet 文件。在 Servlet 中,我们使用 MySQL jar 文件连接了我们的 Mysql 数据库。如果输入没有错误,那么数据将被插入到我们的数据库表中,我们将收到数据插入成功的消息。
执行:
在数据库中创建表
create table GfgLogin
(
name varchar(60),
email varchar(60),
pass varchar(100)
)
A.文件:web.xml
XML
GfgRegister
GfgRegister
GfgRegister
/GfgRegister
index.html
Java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
public class GfgRegister extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String name = request.getParameter("name");
String email = request.getParameter("email");
String pass = request.getParameter("pass");
try {
// loading drivers for mysql
Class.forName("com.mysql.jdbc.Driver");
//creating connection with the database
Connection con = DriverManager.getConnection
("jdbc:mysql://localhost:3306/geeksforgeeks","root","root");
PreparedStatement ps = con.prepareStatement
("insert into gfglogin values(?,?,?)");
ps.setString(1, name);
ps.setString(2, email);
ps.setString(3, pass);
int i = ps.executeUpdate();
if(i > 0) {
out.println("You are successfully registered at geeksforgeeks");
}
}
catch(Exception se) {
se.printStackTrace();
}
}
}
HTML
GeeksForGeeks Register form
B.文件: GfgRegister。Java
Java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
public class GfgRegister extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String name = request.getParameter("name");
String email = request.getParameter("email");
String pass = request.getParameter("pass");
try {
// loading drivers for mysql
Class.forName("com.mysql.jdbc.Driver");
//creating connection with the database
Connection con = DriverManager.getConnection
("jdbc:mysql://localhost:3306/geeksforgeeks","root","root");
PreparedStatement ps = con.prepareStatement
("insert into gfglogin values(?,?,?)");
ps.setString(1, name);
ps.setString(2, email);
ps.setString(3, pass);
int i = ps.executeUpdate();
if(i > 0) {
out.println("You are successfully registered at geeksforgeeks");
}
}
catch(Exception se) {
se.printStackTrace();
}
}
}
C.文件: 索引.html
HTML
GeeksForGeeks Register form
输出:运行您的 index.html 文件,您将获得以下输出:
输入信息并单击注册按钮后,您将看到下面的屏幕。
存储在数据库中的数据如下图所示媒体如下: