jsp结合SQLSERVER向数据库中的表添加图书信息。

已知数据库中存在表tb_book2,通过在图书信息界面填写书本的基本信息,然后提交后写入数据库中的表格中。需要对提交的信息进行修改,信息填入不能为空,为空则则有提示。例如插入一条信息:name=考研英语,price=45 ,bookCount=5,author=小芳

图书的属性进行封装利用javaBean

package com.zheng;

public class BookBean {
private int id; // 编号
private String name; // 图书名称
private double price; // 价格
private int bookCount; // 数量
private String author; // 作者 public int getId() {
return id;
} public void setId(int id) {
this.id = id;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public double getPrice() {
return price;
} public void setPrice(double price) {
this.price = price;
} public int getBookCount() {
return bookCount;
} public void setBookCount(int bookCount) {
this.bookCount = bookCount;
} public String getAuthor() {
return author;
} public void setAuthor(String author) {
this.author = author;
} }

信息填写界面:

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>添加图书信息</title>
<script type="text/javascript">
function check(form) {
if (form.name.value == "") {
alert("图书名称不能为空");
return false;
}
if (form.price.value == "") {
alert("定价不能为空");
return false;
}
if (form.author.value == "") {
alert("作者不能为空");
return false;
}
return true;
}
</script>
<style type="text/css">
ul {
list-style: none; /*设置不显示项目符号*/
margin: 0px; /*设置外边距*/
padding: 5px; /*设置内边距*/
} li {
padding: 5px; /*设置内边距*/
}
</style>
</head>
<body>
<form action="addBook.jsp" method="post" onsubmit=" return check(this)">
<ul>
<li>图书名称:<input type="text" name="name" /></li>
<li>价  格:<input type="text" name="price" /></li>
<li>数  量:<input type="text" name="bookCount" /></li>
<li>作  者:<input type="text" name="author" /></li>
<li><input type="submit" value="添 加"></li>
</ul>
</form>
</body>
</html>

向数据库中添加信息

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<%
request.setCharacterEncoding("UTF-8");
%>
<jsp:useBean id="book" class="com.zheng.BookBean"></jsp:useBean>
<jsp:setProperty property="*" name="book" />
<!-- 通过通配符的形式表单元素的值自动给同名的book属性命名 -->
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>保存图书信息</title>
</head>
<body>
<%
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); // 加载数据库驱动,注册到驱动管理器
String url = "jdbc:sqlserver://localhost:1433;databaseName=test";//test为你的数据库名
String username = "zheng"; // 数据库用户名
String password = "123"; // 数据库密码
Connection conn = DriverManager.getConnection(url, username, password); // 创建Connection连接
String sql = "insert into tb_book2(name,price,bookCount,author) values(?,?,?,?)"; // 添加图书信息的SQL语句
PreparedStatement ps = conn.prepareStatement(sql); // 获取PreparedStatement ps.setString(1, book.getName()); // 对SQL语句中的第1个参数赋值
ps.setDouble(2, book.getPrice()); // 对SQL语句中的第2个参数赋值
ps.setInt(3, book.getBookCount()); // 对SQL语句中的第3个参数赋值
ps.setString(4, book.getAuthor()); // 对SQL语句中的第4个参数赋值
int row = ps.executeUpdate(); // 执行更新操作,返回所影响的行数
if (row > 0) { // 判断是否更新成功
out.print("成功添加了 " + row + "条数据!"); // 更新成输出信息
}
ps.close(); // 关闭PreparedStatement,释放资源
conn.close(); // 关闭Connection,释放资源
} catch (Exception e) {
out.print("图书信息添加失败!");
e.printStackTrace();
}
%>
<br>
<a href="index.jsp">返回</a> </body>
</html>

界面

添加成功

添加后的表

最新文章

  1. ASP.NET MVC搭建项目后台UI框架—3、面板折叠和展开
  2. [转载] Ubuntu 16.04 LTS 一键安装VNC
  3. ubuntu-14.04服务器版下搭建apache2+svn+svnmanager服务
  4. [转]android开发之字节顺序
  5. e.KeyChar用到的键盘对应ASCII码值(转)
  6. SSAS计算列如果是中文名称时,必须要在名字外加中括号
  7. 【Python】内置数据类型
  8. JAVA_JSON_example
  9. CentOS添加RPMforge软件源
  10. 只需三步:使用C# 操作 Azure 队列
  11. XAMPP下重置mysql密码
  12. 写了一个bug,最后却变成了feature,要不要修呢?
  13. 笔记:Eclipse 安装 Hibernate Tools
  14. Java8 按照类属性去重
  15. zookeeper选举流程
  16. [转载]redis持久化的两种操作RDB和AOF
  17. H5离线存储-manifest
  18. 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛:Frequent Subsets Problem (状态压缩)
  19. HBase(十)HBase性能调优总结
  20. 使用colmap进行稠密重建

热门文章

  1. 使用CSS实现多种Noise噪点效果
  2. Spring MVC组件之HandlerMapping
  3. java学习第四天高级数组.day13
  4. WebMvcConfigurerAdapter过时替换接口或类
  5. 什么是云计算?云计算三种模式Sass、Paas、Iaas
  6. 一、JDK和JRE
  7. CAD参数化功能的一些构想
  8. 快速搭建 SpringCloud Alibaba Nacos 配置中心!
  9. KingbaseES timestamp 和 timestamptz 差异比较
  10. OpenFOAM 编程 | One-Dimensional Transient Heat Conduction