文章目录
- 一、先在Web前端来个表单
- 二、添加Tomcat依赖
- 三、引入jdbc和dbutils
- 四、编写Servlet类
- 五、关联模块
《踩坑+排雷新版IDEA2021.1创建配置Javaweb项目并部署在Tomcat容器》
一、先在Web前端来个表单
如图在web项目目录下创建一个html文件。
文件内容可以参考如下。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><form action="add" method="post">姓名:<input type="text" name="name"/>密码:<input type="password" name="password"/>地址:<input type="text" name="address"/>手机号:<input type="text" name="phone"/><button type="submit">添加</button></form>
</body>
</html>
之后记得把Tomcat启动的页面设置为该页面。
二、添加Tomcat依赖
为什么要添加这个依赖呢?其实是因为后面我们写关于HTTP的Java类需要用到Tomcat中的jar包。
点击后将Tomcat添加进来后点击Apply,然后就可以点击OK。
三、引入jdbc和dbutils
关于jdbc:《新年迈出Java后台服务器与数据库交互第一步&2022最新通用Java8&jdbc8连接mysql8》
关于dbutils:《Apache-DBUtils实现CRUD操作,已封装的API实现jdbc对数据库进行操作》
四、编写Servlet类
在当前Module的src下创建Servlet类,如下图。
jdbcUtils类:
package com.yeman.jdbc;import java.sql.Connection;import java.sql.DriverManager;
import java.sql.SQLException;/*** @Author: Yeman* @Date: 2022-02-09-18:40* @Description:*/
public class JdbcUtils {public static Connection getConnection() {Connection conn = null;try {String user = "root";String password = "123456";String url = "jdbc:mysql://localhost:3306/test";String driverClass = "com.mysql.cj.jdbc.Driver";Class.forName(driverClass);conn = DriverManager.getConnection(url, user, password);} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}finally {return conn;}}}
AddServlet类:
package com.yeman.Servlets;import com.yeman.jdbc.JdbcUtils;
import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.sql.Connection;
import java.sql.SQLException;/*** @Author: Yeman* @Date: 2022-02-09-18:12* @Description:*/public class AddServlet extends HttpServlet {@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws UnsupportedEncodingException {req.setCharacterEncoding("UTF-8");String name = req.getParameter("name");String password = req.getParameter("password");String address = req.getParameter("address");String phone = req.getParameter("phone");Connection conn = null;try {conn = JdbcUtils.getConnection();QueryRunner qr = new QueryRunner();String sql = "insert into user(name,password,address,phone) values(?,?,?,?)";int update = qr.update(conn, sql, name, password, address, phone);if (update != 0){System.out.println("添加成功!");}else System.out.println("添加失败!");} catch (SQLException e) {e.printStackTrace();}finally {try {if (conn != null) DbUtils.close(conn);} catch (SQLException e) {e.printStackTrace();}}}
}
五、关联模块
打开web.xml。
可参考代码如下。
<?xml version="1.0" encoding="UTF-8"?>
<web-app 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"version="4.0"><servlet><servlet-name>AddServlet</servlet-name><servlet-class>com.yeman.Servlets.AddServlet</servlet-class></servlet><servlet-mapping><servlet-name>AddServlet</servlet-name><url-pattern>/add</url-pattern></servlet-mapping>
</web-app>
然后将下图文件夹删除。
然后如下如所示。
之后添加。
至此服务器就可以获取到web前端的表单数据并且写入数据库中了。