本文实现了用MyEclipse,编写Servlet,实现对SQLServer数据库的增删改查,适合新手入门,文末提供工程文件源码下载。
1.新建数据库test以及表users
表users共四列(id,name,psd,tel)
具体操作步骤见上篇博文。具体操作步骤
2.新建工程Web Project工程0623p
3. 编辑WebRoot目录下的index.jsp
创建表单(序号、账号、密码、电话、操作),并读取当前数据库内容。
注意:
此处要导入sql_data.java包用于连接数据库(在src目录下新建edu.hwadee.pro.bean包,将sql_data.java复制到此包下即可), <jsp:useBean id="db" class="edu.hwadee.pro.bean.sql_data" />
//id是给bean取个别名,class表示调用的类。
以及导入java.sql.,不然会报错哦。import="java.sql.*"*
将修改、删除、添加用户的链接也一并写好。
代码如下
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" import="java.sql.*"%>
<jsp:useBean id="db" class="edu.hwadee.pro.bean.sql_data" />
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
我的首页 <br>
<table border=1>
<tr>
<td>序号</td>
<td>账号</td>
<td>密码</td>
<td>电话</td>
<td>操作</td>
</tr>
<%
String sql = "select * from users";
ResultSet rs = null;
rs = db.executeQuery(sql); //查询数据库,
//executeQuery()方法会把数据库响应的查询结果存放在ResultSet类对象中供我们使用
while (rs.next()) { //rs 游标下移,rs.next()返回一个布尔值,为true,则数据表中有记录。
//next()可以遍历全部数据。
String aa = rs.getString(1); //取出第一个字段的数据
String bb = rs.getString(2);
String cc = rs.getString(3);
String dd = rs.getString(4);
out.print("<tr><td>" + aa + "</td><td>" + bb + "</td><td>" + cc
+ "</td><td>" + dd
+ "</td><td><a href='servlet/delServlet?id="+aa+"'>删除</a>、<a href='update.jsp?xh=" + aa + "&&mz="
+ bb + "&&mm=" + cc + "&&dh=" + dd
+ "'>修改</a></td></tr>");
}
%>
</table><br>
<a href="add.jsp">添加用户</a>
</body>
</html>
启动tomcat服务,将工程发布检测一下(具体步奏见上篇博文),效果如图
但此时不用去点击删除修改添加这些,因为实现代码还没写好。
4.在src目录下新建edu.hwadee.pro.control包
用于存放增删改查的Servlet程序文件。
在此包下新建Servlet,取名updateServlet,用于修改数据库。
修改doPost()函数,记得导入import edu.hwadee.pro.bean.sql_data包哦,其部分源码如下:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String aa = null, bb = null, cc = null, dd = null;
aa = request.getParameter("id"); //接收表单传来的四个数据
bb = request.getParameter("name");
cc = request.getParameter("psd");
dd = request.getParameter("tel");
String sql = "update users set name='" + bb + "',psd='" + cc
+ "',tel='" + dd + "'where id='" + aa + "'"; //条件修改语句的定义
sql_data db = new sql_data();
db.executeUpdate(sql); //修改执行
response.sendRedirect("../index.jsp");
}
5.在WebRoot目录下新建JSP文件update.jsp
用于创建表单,填写要修改的数据库内容。
源码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
String aa=null,bb=null,cc=null,dd=null;
aa=request.getParameter("xh");
bb=request.getParameter("mz");
cc=request.getParameter("mm");
dd=request.getParameter("dh");
%>
<form action="servlet/updateServlet" method="post"><%--action调用位置可查看web.xml--%>
序号<input name="id" type="hidden" value="<%=aa%>"><%=aa%><br/><%--将id隐藏,防止用户修改,第二个aa则是将其显示给用户 --%>
账号<input name="name" value="<%=bb%>"><br/>
密码<input name="psd" value="<%=cc%>"><br/>
电话<input name="tel" value="<%=dd%>"><br/>
<input name="sub" type="submit" value="修改"><br/>
</form>
</body>
</html>
发布一下工程,打开index.jsp页面,点击修改,欧耶,是不是能够修改数据内容了呢!!
6.同理,创建addServlet.java和delServlet.java
在edu.hwadee.pro.control目录下再新建两个Servlet,分别是addServlet.java和delServlet.java,并修改其代码,addServlet.java修改doPost()函数,delServlet.java修改doGet()函数,注意要导入import edu.hwadee.pro.bean.sql_data包哦。
addServlet.java部分源码如下:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String bb = null, cc = null, dd = null;
// aa = request.getParameter("id"); //接收表单传来的三个数据
bb = request.getParameter("name");
cc = request.getParameter("psd");
dd = request.getParameter("tel");
String sql = "insert into users(name,psd,tel) values('" + bb + "','"
+ cc + "','" + dd + "')"; // 条件修改语句的定义
sql_data db = new sql_data();
db.executeInsert(sql); // 添加执行
response.sendRedirect("../index.jsp");
}
delServlet.java 部分源码如下:
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String id = request.getParameter("id");
String sql = "delete from users where id='"+id+"'";
sql_data db = new sql_data();
db.executeDelete(sql); // 删除执行
response.sendRedirect("../index.jsp");
}
7. 在WebRoot目录下新建JSP文件add.jsp
用于创建表单,填写要增加的数据库内容。删除数据库内容不需要填写数据,所以就不用写个del.jsp了。
源码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="servlet/addServlet" method="post">
账号<input name="name" ><br>
密码<input name="psd" ><br>
电话<input name="tel" ><br>
<input name="sub" type="submit" value="添加"><br>
</form>
</body>
</html>
8. 发布一下工程
打开index.jsp页面,修改、删除、增加用户!!!是不是所有功能都实现了呢,棒棒哒!
9. 工程目录
10. 如果报错
尝试一下方法:
检查一下是否将sqljdbc4.jar复制到
MyEclipse8.5\Common\binary\com.sun.java.jdk.win32.x86_1.6.0.013\jre\lib\ext下
重新发布工程,重启tomcat服务,并重启MyEclipse。
11. 工程源码下载
点击此处下载
本文中用到的软件、工具下载地址可从上篇博文寻找。
转载请注明出处,谢谢。博客地址http://blog.csdn.net/u010887744 。
如有任何问题,欢迎留言。祝君好运!
Life is all about choices!
将来的你一定会感激现在拼命的自己!