我在嘗試編寫servlet時遇到小的編譯錯誤,並且已檢查了所有{}和;嘗試編寫Servlet以將HTML表單數據插入到數據庫中時出現編譯錯誤
下面是代碼:
//This servlet processes the user's registration and redirects them to the catalog.
// Load required libraries
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
public class DatabaseAccess extends HttpServlet{
// JDBC driver name and database URL
private static final String JDBC_DRIVER="com.mysql.jdbc.Driver";
private static final String DB_URL="jdbc:mysql://localhost/dvdsite";
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
// Database credentials
static final String USER = "user";
static final String PASS = "";
// Get form values from register page
String username = request.getParameter("username");
int userID = Integer.parseInt(username);
String password = request.getParameter("password");
String email = request.getParameter("email");
{
try {
// Register JDBC driver
Class.forName("com.mysql.jdbc.Driver");
// Open a connection
conn = DriverManager.getConnection(DB_URL,USER,PASS);
// Execute SQL query
stmt = conn.createStatement();
String sql;
sql = "INSERT INTO dvdsite values (username, password, email)";
ResultSet rs = stmt.executeQuery(sql);
// Clean-up environment
rs.close();
stmt.close();
conn.close();
}catch(SQLException se){
//Handle errors for JDBC
se.printStackTrace();
}catch(Exception e){
//Handle errors for Class.forName
e.printStackTrace();
}finally{
//finally block used to close resources
try{
if(stmt!=null)
stmt.close();
}catch(SQLException se2){
}// nothing we can do
try{
if(conn!=null)
conn.close();
}catch(SQLException se){
se.printStackTrace();
}//end finally try
} //end try
}
}
這是我得到的錯誤:1個發現錯誤: 文件:/Applications/MAMP/htdocs/register.java [行:18] 錯誤: /Applications/MAMP/htdocs/register.java:18:';'預計
的錯誤,在這條線出現:
拋出了ServletException,IOException異常
誰能幫助?
方法體必須有大括號。 – SLaks
你可以發佈'register.java'類嗎? – herry
堅持一個{在IOException後 – tom