JSP应用Javabean在SQL中插入数据

首先在数据库中建立一个表,我这里以Student表为例

表中有Sno,Sname,Ssex,Sage,Sdepy5列。

表约束如下图:

代码如下(  AddStudent.jsp      index.jsp      Student.java )

Addstudent.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">

<%@page import="java.sql.Connection"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.PreparedStatement"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>添加结果</title>
</head>
<body>
	
	<jsp:useBean id="student" class="com.lyq.bean.Student"></jsp:useBean>
	<jsp:setProperty property="*" name="student"/>
	<%
		try {
			// 加载数据库驱动,注册到驱动管理器
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			// 数据库连接字符串
			String url = "jdbc:sqlserver://localhost:1433; DatabaseName=lzy";
			// 数据库用户名
			String username = "sa";
			// 数据库密码
			String password = "jiayou417";
			// 创建Connection连接
			Connection conn = DriverManager.getConnection(url,username,password);
			System.out.println("Connection Successful!"); 
			// 添加学生信息的SQL语句
			String sql = "insert into Student(Sno,Sname,Ssex,Sage,Sdept) values(?,?,?,?,?)";
			// 获取PreparedStatement
			PreparedStatement ps = conn.prepareStatement(sql);
			// 对SQL语句中的第1个参数赋值
			ps.setString(1, student.getSno());
			System.out.println("Sno:"+student.getSno());
			// 对SQL语句中的第2个参数赋值
			ps.setString(2, student.getSname());
			System.out.println("Sname:"+student.getSname());
			// 对SQL语句中的第3个参数赋值
			ps.setString(3, student.getSsex());
			System.out.println("Ssex:"+student.getSsex());
			// 对SQL语句中的第4个参数赋值
			ps.setInt(4, student.getSage());
			System.out.println("Sage:"+student.getSage());
			// 对SQL语句中的第5个参数赋值
			ps.setString(5, student.getSdept());
			System.out.println("Sdept:"+student.getSdept());
			// 执行更新操作,返回所影响的行数
			int row = ps.executeUpdate();
			// 判断是否更新成功
			if(row > 0){
				// 更新成输出信息
				out.print("成功添加了 " + row + "条数据!");
			}
			// 关闭PreparedStatement,释放资源
			ps.close();
			// 关闭Connection,释放资源
			conn.close();
		} catch (Exception e) {
			out.print("学生信息添加失败!");
			e.printStackTrace();
		}
	%>
	<br>
	<a href="index.jsp">返回</a>
</body>
</html>

index.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>添加学生信息</title>
<script type="text/javascript">
	function check(form){
		with(form){
			if(Sno.value == ""){
				alert("学生学号不能为空");
				return false;
			}
			if(Sname.value == ""){
				alert("学生名字不能为空");
				return false;
			}
			if(Ssex.value == ""){
				alert("学生性别不能为空");
				return false;
			}
			return true;
		}
	}
</script>
</head>
<body>
	<form action="AddStudent.jsp" method="post" onsubmit="return check(this);">
		<table align="center" width="450">
			<tr>
				<td align="center" colspan="2">
					<h2>添加学生信息</h2>
					<hr>
				</td>
			</tr>
			<tr>
				<td align="right">学生学号:</td>
				<td><input type="text" name="sno" /></td>
			</tr>
			<tr>
				<td align="right">学生名字:</td>
				<td><input type="text" name="sname" /></td>
			</tr>
			<tr>
				<td align="right">性  别:</td>
				<td><input type="text" name="ssex" /></td>
			</tr>
			<tr>
				<td align="right">年       龄:</td>
				<td><input type="text" name="sage" /></td>
			</tr>
			<tr>
				<td align="right">专		业:</td>
				<td><input type="text" name="sdept" /></td>
			</tr>
			<tr>
				<td align="center" colspan="2">
					<input type="submit" value="添 加">
				</td>
			</tr>
		</table>
	</form>
</body>
</html>

Student.java(JavaBean)

package com.lyq.bean;
public class Student {
	// 学号
	private String Sno;
	// 学生名称
	private String Sname;
	// 性别
	private String Ssex;
	// 年龄
	private int Sage;
	// 专业
	private String Sdept;
	
	public String getSno() {
		return Sno;
	}
	public void setSno(String sno) {
		this.Sno = sno;
	}
	public String getSname() {
		return Sname;
	}
	public void setSname(String sname) {
		this.Sname = sname;
	}
	public String getSsex() {
		return Ssex;
	}
	public void setSsex(String ssex) {
		this.Ssex = ssex;
	}
	public int getSage() {
		return Sage;
	}
	public void setSage(int sage) {
		this.Sage = sage;
	}
	public String getSdept() {
		return Sdept;
	}
	public void setSdept(String sdept) {
		this.Sdept = sdept;
	}
}

运行实验后验证代码无误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值