JavaWeb實現(xiàn)mysql數(shù)據(jù)庫數(shù)據(jù)的添加和刪除
準備操作
1. 配置mysql環(huán)境
2. 創(chuàng)建Servlet Project

3. 創(chuàng)建EMS Package

4. 分別創(chuàng)建Servlet
UserListServlet:用于實現(xiàn)訪問數(shù)據(jù)庫,并將數(shù)據(jù)在頁面顯示的功能。
UserAddServlet:用于獲取request數(shù)據(jù),并將數(shù)據(jù)添加到ems數(shù)據(jù)庫user表中。
UserDeleteServlet:用于通過員工id刪除ems數(shù)據(jù)庫中user表中id對應(yīng)的數(shù)據(jù)

5. 創(chuàng)建addUser.html

6. 配置web.xml文檔
<servlet>
<servlet-name>UserListServlet</servlet-name>
<servlet-class>EMS.UserListServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>UserDeleteServlet</servlet-name>
<servlet-class>EMS.UserDeleteServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>UserAddServlet</servlet-name>
<servlet-class>EMS.UserAddServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UserListServlet</servlet-name>
<url-pattern>/list</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>UserDeleteServlet</servlet-name>
<url-pattern>/delete</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>UserAddServlet</servlet-name>
<url-pattern>/addUser</url-pattern>
</servlet-mapping>
7. 打開服務(wù)器并重新部署服務(wù)器


8. 效果展示
顯示數(shù)據(jù)庫數(shù)據(jù)

刪除數(shù)據(jù)庫數(shù)據(jù)

添加數(shù)據(jù)庫數(shù)據(jù)


添加員工數(shù)據(jù)界面
addUser.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>添加員工</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<center>
<h1>添加員工信息</h1>
<form action="addUser" method="post">
工號:<input type="text" name="id"/><br/>
姓名:<input type="text" name="name"/><br/>
工資:<input type="text" name="salary"/><br/>
年齡:<input type="text" name="age"/><br/>
<input type="submit" name="smt" value="提交"/>
</form>
</center>
</body>
</html>
顯示員工數(shù)據(jù)
UserListServlet
package EMS;
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;
//員工信息查詢的Servlet
public class UserListServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//使用JDBC連接mysql數(shù)據(jù)庫,將user表中的輸出查詢處理
ResultSet result=null;
Connection con=null;
try {
//(1)注冊加載驅(qū)動
Class.forName("com.mysql.jdbc.Driver");
//(2)獲得數(shù)據(jù)庫的鏈接
//(1).連接mysql的url地址
String url="jdbc:mysql://localhost:3306/ems";
//(2).連接mysql的用戶名
String username="root";
//(3).連接mysql的密碼
String pwd="123456";
con=DriverManager.getConnection(url, username, pwd);
//(3)預編譯sql語句
System.out.println("MySQL連接成功!"+con);
//3.預編譯SQL語句
String sql="select * from user";
PreparedStatement prep=con.prepareStatement(sql);
//(4)執(zhí)行sql語句
result=prep.executeQuery();
} catch (Exception e) {
e.printStackTrace();
}
//使用response,獲得字符輸出流PrintWriter,將查詢出的結(jié)果輸出到瀏覽器端
//設(shè)置格式編碼
response.setContentType("text/html;charset=utf-8");
//向瀏覽器端輸出一個表格
PrintWriter pw=response.getWriter();
pw.println("<table border='1' cellspacing='0' width='400' height='80' align='center'>");
pw.println("<caption>員工信息表</caption>");
pw.println("<tr align='center'>");
pw.println("<td>工號</td><td>姓名</td><td>工資</td><td>年齡</td>");
pw.println("</tr>");
try {
while(result.next())
{
pw.println("<tr align='center'><td>"+result.getInt("id")+"</td><td>"
+result.getString("name")+"</td><td>"+result.getDouble("salary")+"</td><td>"
+result.getInt("age")+"</td><td><a href='delete?id="+result.getInt("id")+"'>刪除</a></td></tr>");
System.out.println(result.getInt("id")+"---"+result.getString("name")+"---"+
result.getDouble("salary")+"---"+result.getInt("age"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//表格的最后一行
pw.println("<tr><td colspan='5'><a href='addUser.html'>添加員工信息</a></td></tr>");
pw.println("</table>");
//關(guān)閉
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
添加員工數(shù)據(jù)
UserAddServlet
package EMS;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import DBUtil.DBUtil;
//添加員工信息的Servlet
public class UserAddServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String strId=request.getParameter("id");
String strName=request.getParameter("name");
String strSal=request.getParameter("salary");
String strAge=request.getParameter("age");
System.out.print(strId+strName+strSal+strAge);
try {
//使用jdbc連接數(shù)據(jù)庫
Connection con=DBUtil.getCon("ems");
//預編譯sql語句
String sql="insert into user values(?,?,?,?)";
PreparedStatement prep=con.prepareStatement(sql);
prep.setInt(1, Integer.parseInt(strId));
prep.setString(2, strName);
prep.setDouble(3, Double.parseDouble(strSal));
prep.setInt(4, Integer.parseInt(strAge));
//執(zhí)行sql語句
prep.executeUpdate();
//關(guān)閉數(shù)據(jù)庫的連接
con.close();
} catch (Exception e) {
e.printStackTrace();
}
//插入成功后,回到list首頁
//重定向
response.sendRedirect("list");
}
}
刪除員工數(shù)據(jù)
UserDeleteServlet
package EMS;
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;
import DBUtil.DBUtil;
//員工信息刪除的Servlet
public class UserDeleteServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//接收請求中的參數(shù)
//http://localhost:8080/Servlet/delete?id=2
String strId=request.getParameter("id");
//System.out.println("工號:"+strId);
try {
//2~3,使用JDBC連接mysql數(shù)據(jù)庫,完成刪除的操作
Connection con=DBUtil.getCon("ems");
//System.out.println(con);//com.mysql.jdbc.JDBC4Connection@64dfeb
//預編譯sql語句
String sql="delete from user where id=?";
PreparedStatement prep=con.prepareStatement(sql);
//設(shè)置sql語句中的問號 參數(shù)1:表示第幾個問好 參數(shù)2:對問號設(shè)置的內(nèi)容
prep.setInt(1,Integer.parseInt(strId));
//執(zhí)行sql語句
//executeUpdate()適用于刪除delete、修改update、插入insert executeQuery()適用于查詢select
prep.executeUpdate();
//關(guān)閉數(shù)據(jù)庫的連接
con.close();
} catch (Exception e) {
e.printStackTrace();
}
//4,刪除成功以后,回到http://localhost:8080/ems-servlet/list首頁地址
//轉(zhuǎn)發(fā)技術(shù):將未完成的工作交給下一個組件繼續(xù)完成,瀏覽器地址欄的地址不會發(fā)生變化,它是一次請求
//重定向技術(shù):已經(jīng)完成了工作,只是為了跳轉(zhuǎn)到下一個地址顯示,瀏覽器地址欄的地址會發(fā)生變化,是兩次請求
//寫一個Servlet對應(yīng)的url-pattern地址,會重定向到對應(yīng)的Servlet來執(zhí)行
response.sendRedirect("list");
}
}
以上就是JavaWeb實現(xiàn)mysql數(shù)據(jù)庫數(shù)據(jù)的添加和刪除的詳細內(nèi)容,更多關(guān)于JavaWeb數(shù)據(jù)添加刪除的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
SpringBoot項目使用?axis?調(diào)用webservice接口的實踐記錄
這篇文章主要介紹了SpringBoot項目使用?axis?調(diào)用webservice接口,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-06-06
JavaWeb 入門篇:創(chuàng)建Web項目,Idea配置tomcat
這篇文章主要介紹了IDEA創(chuàng)建web項目配置Tomcat的詳細教程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-07-07
mybatis?mapper.xml?注釋帶參數(shù)的坑及解決
這篇文章主要介紹了mybatis?mapper.xml?注釋帶參數(shù)的坑及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-01-01
myeclipse開發(fā)servlet_動力節(jié)點Java學院整理
MyEclipse,是在eclipse基礎(chǔ)上加上自己的插件開發(fā)而成的功能強大的企業(yè)級集成開發(fā)環(huán)境,主要用于Java、Java EE以及移動應(yīng)用的開發(fā)。下面這篇文章主要給大家介紹了關(guān)于myeclipse開發(fā)servlet的相關(guān)資料,需要的朋友可以參考下。2017-07-07
springmvc實現(xiàn)自定義類型轉(zhuǎn)換器示例
本篇文章主要介紹了springmvc實現(xiàn)自定義類型轉(zhuǎn)換器示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02
Javaweb開發(fā)中通過Servlet生成驗證碼圖片
這篇文章主要為大家詳細介紹了Javaweb開發(fā)中通過Servlet生成驗證碼圖片的相關(guān)資料,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-05-05
Spring中的spring.factories文件用法(Spring如何加載第三方Bean)
這篇文章主要介紹了Spring中的spring.factories文件用法(Spring如何加載第三方Bean),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10

