0
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*"%>
<%@ page import="java.io.File"%>
<%@ page import="java.util.*"%>
<%@ page import="java.sql.*"%>
<%@ page import="java.sql.Blob"%>
<%@ page import="java.sql.PreparedStatement"%>
<%@ page import="java.sql.BatchUpdateException"%>
<%@ page import="javax.servlet.*"%>
<%@ page import="javax.servlet.http.*"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'p.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<%
int activityId = Integer.parseInt(request.getParameter("activityId"));
String name = request.getParameter("name");
String activityType = request.getParameter("activityType");
int parentId = Integer.parseInt(request.getParameter("parentId"));
String description = request.getParameter("description");
%>
<%
Connection conn=null;
PreparedStatement pstatement = null;
try{
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/pol","root","1234");
Statement st=conn.createStatement();
String queryString = "INSERT INTO activity(activityId,name,activityType,parentId,description)" + " VALUES (?, ?, ?, ?, ?)";
pstatement = conn.prepareStatement(queryString);
pstatement.setInt(1, activityId);
pstatement.setString(2, name);
pstatement.setString(3, activityType);
pstatement.setInt(4, parentId);
pstatement.setString(5, description);
}
catch (Exception ex) {
out.println("Unable to connect to batabase.");
}
finally {
pstatement.close();
conn.close();
}
%>
</body>
</html>
會發生什麼情況?它是否會失敗並顯示一些錯誤消息? – crazyscot 2010-06-09 12:55:19
他永遠無法確定它,因爲他壓制catch塊中的「ex」而不是打印/拋出它。無論如何,Rup已經把它釘死了。他從來沒有給出執行查詢的命令。 @lehkni:這可能是家庭作業/功課,但這段代碼在現實世界中被認爲是非常糟糕的做法。第1課:不要使用* scriptlets *,而要使用真正的Java類。 – BalusC 2010-06-09 12:57:35
與問題無關,但您可能希望將數據庫代碼移到另一個類中,並調用該類而不是在JSP上使用DB代碼。這將提供更好的可重用性,並使代碼更易於維護和理解。 – 2010-06-09 13:00:45