我在尝试编写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