2024年1月12日发(作者:)
JSP 预处理语句应用
现在创建一个案例,演示PreparedStatement接口对象的使用。打开记事本,输入下列代码:
<%@ page contentType="text/html; charset=gb2312" language="java"
import=".*,.*" %>
<%
e("");
String url="jdbc:mysql://localhost:3306/book?"+"user=root&password=111111";
Connection conn=nection(url);
String sql="insert into bookinfo (bookname,publisher,price) values (?,?,?)";
PreparedStatement ps=eStatement(sql);
ing(1,"Java EE从入门到精通");
ing(2,"清华大学出版社");
ing(3,"78.9元");
eUpdate();
("数据添加成功");
();
();
%>
在源文件中,首先确保连接到MySQL数据库,即创建Connection对象conn。下面创建字符串变量sql,其值为添加数据的sql语句,其中“?”我们称之为IN参数。包含于PreparedStatement对象中的SQL语句可具有一个或多个IN参数。IN参数的值在SQL语句创建时未被指定。相反的,该语句为每个IN参数保留一个问号(“?”)作为占位符。每个问号的值必须在该语句执行之前,通过适当的setXXX方法来提供。
然后使用语句“PreparedStatement ps=eStatement(sql);”创建PreparedStatement实例化对象ps,并以sql作为参数进行预编译。通过ps对象的setXXX方法将为IN参数提供值。如“ing(1,"Ajax入门到精通");”语句。最后调用PreparedStatement对象的executeUpdate()方法,执行数据的添加操作。当然了,SQL的update修改语句也可以使用PreparedStatement预编译对象,其代码如下所示:
PreparedStatement pstmt = eStatement("UPDATE table4 SET m = ? WHERE x = ?");
(1,23)
(2,56)
将上述代码保存,名称为。打开IE浏览器,在地址栏中输入localhost:8080/JSPExample/,单击【转到】,会显示如图6-19所示窗口。在MySQL客户端窗口,查询添加的数据,如图6-20所示:
图6-19 数据添加成功
图6-20 MySQL数据显示


发布评论