1、在mysql数据库中创建图书信息表books。
create table books(
id integer primary key not null auto_increment,
bookname varchar(45) not null default 'zero',
price double not null default 0.0,
bookCount integer unsigned not null default 0,
author varchar(45) not null default 'zero');
2、创建名为Book的JavaBean来封装图书信息。
package com.Bean;
public class Book {
private int id;
private String name;
private double price;
private int bookCount;
private String auth;
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 getAuth() {
return auth;
}
public void setAuth(String auth) {
this.auth = auth;
}
}
3、创建Add.jsp页面,用于放置添加图书信息的表单,而此页面得到的信息将被提交到AddBook.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(name.value==""){
alert("姓名不能为空");
return false;
}
if(price.value==""){
alert("价格不能为空");
return false;
}
if(bookCount.value==""){
alert("数量不能为空");
return false;
}
if(author.value=""){
alert("作者不能为空");
return false
}
}
}
</script>
</head>
<body>
<form method="get" action="AddBook.jsp" οnsubmit="return check(this);">
<h1>添加图书信息</h1><br>
<p>图书名称:<input type="text" name="name"/></p>
<p>价 格:<input type="text" name="price"/></p>
<p>数 量:<input type="text" name="bookCount"/></p>
<p>作 者:<input type="text" name="auth"/></p>
<p><input type="submit" value="添 加"></p>
</form>
</body>
</html>
4、AddBook.jsp页面,处理首页提交过来的图书信息,将图书信息添加到数据库中。
<%@page import="java.sql.*"%>
<%@ 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>
</head>
<body>
<%request.setCharacterEncoding("utf-8");%>
<jsp:useBean id="book" class="com.Bean.Book"/>
<jsp:setProperty property="*" name="book"/>
<%
/**
*将add.jsp提交过来的信息添加到mysql数据库中
*/
try{
Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动,注册到驱动管理器
String url = "jdbc:mysql://localhost:3306/test";//数据库连接字符串
String username = "root";//数据库用户名
String password = "12345";//数据库密码
Connection connect = DriverManager.getConnection(url, username, password);//创建Connection连接
String sql = "insert into books(bookname,price,bookCount,author) values(?,?,?,?)";//添加图书信息的sql语句
PreparedStatement ppstmt = connect.prepareStatement(sql);//返回执行sql语句后生成结果的对象
ppstmt.setString(1, book.getName());//对sql语句中第1个参数赋值
ppstmt.setDouble(2, book.getPrice());//对sql语句中第2个参数赋值
ppstmt.setInt(3, book.getBookCount());//对sql语句中第3个参数赋值
ppstmt.setString(4, book.getAuth());//对sql语句中第4个参数赋值
int row = ppstmt.executeUpdate();//执行更新操作,返回所影响的行数
if(row>0){
out.print("成功添加了"+row+"条数据!");
}
ppstmt.close();//关闭PreparedStatement,释放资源
connect.close();//关闭Connection,释放资源。
}catch(Exception e){
out.print("图书信息添加失败了!");
e.printStackTrace();
}
%>
<a href="add.jsp">返回</a>
</body>
</html>