tomcat+mysql+eclipse 开发的第一个例子:对数据库进行增删查改

首先,在数据库中建立一个学生的表,已备后用,具体可以参看下面的图片:

后面,是在eclipse里面做开发了。项目的结构图为:

 

list.jsp

<%@ page language="java" import="db.connDb,db.Stu,java.util.*"
	pageEncoding="gbk"%>	
	<%--jsp头文件,包括引入的包和支持语言,gbk为支持中文--%>
<%
ArrayList list = connDb.getList1("select sid,sname,sage from student"); //获得test表中所有数据并以列表形式返回
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<title>My JSP 'list.jsp' starting page</title>
	</head>
	<body>
		<input type="button" name="bottom" value="添加新学生"
			οnclick="javascript:window.location.href='add.jsp'">
		<br>
		<br>
		<table border="1">
			<tr>
				<td>
					编号
				</td>
				<td>
					姓名
				</td>
				<td>
					年龄
				</td>
				<td>
					操作
				</td>
			</tr>
			<%
					{
					for (Iterator it = list.iterator(); it.hasNext();) {
						Stu s = (Stu) it.next();
			%>
			<tr>
				<td><%=s.getSid()%></td>
				<td><%=s.getName()%></td>
				<td><%=s.getAge()%></td>
				<td>
					<a href="update.jsp?sid=<%=s.getSid()%>">修改</a>
					<a href="delete.jsp?sid=<%=s.getSid()%>"
						οnclick="return confirm('确定删除?');">删除</a>
				</td>
			</tr>
			<%
				}
				}
			%>
		</table>
	</body>
</html>


add.jsp

<%@ page language="java" pageEncoding="gbk"%>
<%%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<title>add</title>
	</head>
	<body>
		<form action="addInfo.jsp" method="post">
			提交到addinfo.jsp
			<p>
				添加学生:
			</p>
			SID:
			<input type="text" name="sid">
			<br>
			<br>
			姓名:
			<input type="text" name="sname">
			<br>
			<br>
			年龄:
			<input type="text" name="sage">
			<br>
			<br>
			<input type="submit" name="submit" value="提交">
		</form>
	</body>
</html>


addInfo.jsp

<%@ page language="java" import="db.connDb" pageEncoding="gbk"%>
<%
 String sid=new String(request.getParameter("sid").getBytes("iso-8859-1"));	
 String name = new String(request.getParameter("sname").getBytes("iso-8859-1"));
 String age = new String(request.getParameter("sage").getBytes("iso-8859-1"));
 connDb.update("insert into student (sid,sname,sage) values ('"+sid+"','"+name+"','"+age+"')");
 response.sendRedirect("list.jsp");
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<title>My JSP 'addinfo.jsp' starting page</title>
	</head>
	<body>
		添加成功!
		<br>
	</body>
</html>

delete.jsp

<%@ page language="java" import="db.connDb" pageEncoding="gbk"%>
<%
 connDb.update("delete from student where sid ="+request.getParameter("sid")); //获得要删除人的sid并删除
 response.sendRedirect("list.jsp");  //转到list.jsp页面
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>

		<title>My JSP 'delete.jsp' starting page</title>
	</head>

	<body>
		This is my JSP page.
		<br>
	</body>

update.jsp

<%@ page language="java" import="db.connDb,db.Stu,java.util.*"
	pageEncoding="gbk"%>
<%
	String sid = new String(request.getParameter("sid")); //获得要修改人的sid
	ArrayList list = connDb.getList1("select sid,sname,sage from student where sid="+sid);//查询要修改学生的信息,并以列表返回
	Stu s = (Stu) list.get(0); //将列表内容换成学生类
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<title>My JSP 'update.jsp' starting page</title>
	</head>

	<body>
		<form method="post" action="updateInfo.jsp">
			提交到updateInfo.jsp页面
			<p>
				修改学生信息 
			</p>
			<p>
				姓名:
				<input type="text" name="sname" value="<%=s.getName()%>">
				修改学生信息
			</p>
			<p>
				 年龄:
				<input type="text" name="sage" value="<%=s.getAge()%>">
				<input type="hidden" name="sid" value="<%=sid%>">
			</p>
			<p>
				 
				<input type="submit" value="提交" name="button1">
			</p>
		</form>
	</body>
</html>

updateInfo.jsp

<%@ page language="java" import="db.connDb,db.Stu,java.util.*"
	pageEncoding="gbk"%>
<%
	String sid = new String(request.getParameter("sid")); //获得要修改人的sid
	ArrayList list = connDb.getList1("select sid,sname,sage from student where sid="+sid);//查询要修改学生的信息,并以列表返回
	Stu s = (Stu) list.get(0); //将列表内容换成学生类
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<title>My JSP 'update.jsp' starting page</title>
	</head>

	<body>
		<form method="post" action="updateInfo.jsp">
			提交到updateInfo.jsp页面
			<p>
				修改学生信息 
			</p>
			<p>
				姓名:
				<input type="text" name="sname" value="<%=s.getName()%>">
				修改学生信息
			</p>
			<p>
				 年龄:
				<input type="text" name="sage" value="<%=s.getAge()%>">
				<input type="hidden" name="sid" value="<%=sid%>">
			</p>
			<p>
				 
				<input type="submit" value="提交" name="button1">
			</p>
		</form>
	</body>
</html>


connDb.java

package db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;

public class connDb {
	private static Connection con = null;
	private static Statement stmt = null;
	private static ResultSet rs = null;

	public static void startconn() { 
		//连接数据库方法
		try {
			Class.forName("com.mysql.jdbc.Driver"); 

			//创建连接数据库中间件
			try {
				con = DriverManager.getConnection(
						"jdbc:MySQL://127.0.0.1:3306/test", "root", "fupeng");
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	public static void endconn() throws SQLException { 
		//关闭连接
		if (rs != null) {
			rs.close();
			rs = null;
		}
		if (stmt != null) {
			stmt.close();
			stmt = null;
		}
		if (con != null) {
			con.close();
			con = null;
		}
	}

	public static void update(String sql) throws SQLException { 

		//数据库更新
		startconn();
		stmt = con.createStatement();
		stmt.executeUpdate(sql);
		endconn();
	}

	public static ArrayList getList1(String sql) throws SQLException {

		//数据库查询
		ArrayList list = new ArrayList();
		startconn();
		stmt = con.createStatement();
		rs = stmt.executeQuery(sql);
		while (rs.next()) {
			Stu st = new Stu();
			st.setSid(rs.getString("sid"));
			st.setName(rs.getString("sname"));
			st.setAge(rs.getString("sage"));
			list.add(st);
		}
		endconn();
		return list;
	}


}


Stu.java

package db;
/**
 * 
 */

/**
 * @author fupeng
 *
 */
public class Stu {
	private String sid;
	private String name;
	private String age;

	public String getSid() {
		return sid;
	}

	public void setSid(String sid) {
		this.sid = sid;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getAge() {
		return age;
	}

	public void setAge(String age) {
		this.age = age;
	}


}


有个问题,就是中文的乱码问题,目前还没有解决。可能与数据库有关。这个有待解决。


  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值