JDBC操作数据库
添加数据
通过JDBC向数据库添加数据,可以使用INSERT语句实现插入数据的SQL语句。对于SQL语句中的参数可以使用占位符“?”代替,然后通过PreparedStatement对其赋值并执行SQL。
范例:
创建Web项目,通过JDBC实现图书馆信息添加功能
1.创建名为Book的类,用于封装图书对象信息
public class Book{
private int id; //编号
private String name; //图书名称
private double price; //图书价格
private int bookCount; //数量
private String author; //作者
}
2.创建index.jsp页面,它是程序中的主页,用于放置添加图书信息所需要的表单,该表单提交到AddBook.jsp页面进行处理。
<form action=”AddBook.jsp” method=”post” οnsubmit=”return check(this);”>
<table align=”center” width=”450”>
<tr>
<td align=”center” colspan=”2”>
<h2>添加图书信息</h2>
</td>
</tr>
<tr>
<td align=”right”>图书名称:</td>
<td>
<input type=”text” name=”name”/>
</td>
</tr>
<tr>
<td align=”right”>图书价格:</td>
<td>
<input type=”text” name=”price”/>
</td>
</tr>
<tr>
<td align=”right”>图书数量:</td>
<td>
<input type=”text” name=”bookCount”/>
</td>
</tr>
<tr>
<td align=”right”>图书作者:</td>
<td>
<input type=”text” name=”author”/>
</td>
</tr>
<tr>
<td align=”center” colspan=”2”>
<input type=”submit” value=”添加”/>
</td>
</tr>
</table>
</form>
3.创建AddBook.jsp页面,用于对添加图书信息请求进行处理,该页面通过JDBC所提交的图书信息数据写入数据库中。
<%request.setCharacterEncoding(“UTF-8”);%>
<jsp:useBean id=”book” class=”com.zgy.bean.Book”>
</jsp:useBean>
<jsp:setProperty property=”*” name=”book”/>
查询数据
范例:创建Web项目,通过JDBC查询图书信息表中的图书信息并将其显示在JSP页面中。
(1)创建名称为Book的类,用于封装图书信息
package com.zgy.javabean;
public class Book {
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;
}
}
(2)
创建名称为FindServlet的Servlet对象,用于查所有的图书信息。在此Servlet中,编写doGet()方法,建立数据库连接,并将所查询到的数据放置在HttpServletRequest对象中,将请求转发到JSP页面
package com.zgy.servlet;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.zgy.javabean.Book;
public class FindServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
try{
Class.forName("com.