protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
java.io.PrintWriter out = response.getWriter();
String fname=request.getParameter("first_name");
String lname=request.getParameter("last_name");
String uname=request.getParameter("user_name");
String email=request.getParameter("email");
String p1=request.getParameter("password");
String p2=request.getParameter("password_confirmation");
String password="";
String user="User";
int i = 0;
out.println(fname);
out.println(lname);
out.println(uname);
out.println(email);
out.println(p1);
out.println(p2);
if (p1.equals(p2)) {
password=p1;
}
else{
out.print("<div class='alert alert-dismissable alert-danger'>");
out.print(" <button type='button' class='close' data-dismiss='alert'>×</button>");
out.print(" <strong>Oh snap!</strong> <a href='index.jsp#about' class='alert-link'>Password mismatched!!</a> fill up again!</div>");
RequestDispatcher rd=request.getRequestDispatcher("index.jsp");
rd.include(request,response);
}
try{
new org.sqlite.JDBC();
Class.forName("org.sqlite.JDBC");
String url = "jdbc:sqlite:c:\\dbWheels.db";
Connection con = DriverManager.getConnection(url);
con.setAutoCommit(false);
System.out.println("Opened database successfully");
PreparedStatement updateUserInfo = (PreparedStatement) con.prepareStatement("insert into tbluserinfo (username,userpassword,usertype,ufirstname,ulastname,uemail) values(?,?,?,?,?,?)");
//Statement updateUserInfo = con.createStatement();
//since first column is AI, no need to include that for updates
updateUserInfo.setString(1, uname);
updateUserInfo.setString(2, password);
updateUserInfo.setString(3, user);
updateUserInfo.setString(4, fname);
updateUserInfo.setString(5, lname);
updateUserInfo.setString(6, email);
i = updateUserInfo.executeUpdate();
con.close();
} catch (Exception e){
e.printStackTrace();
}
if(i!=0){
RequestDispatcher rd=request.getRequestDispatcher("index.jsp");
rd.include(request,response);
out.print("<div class='alert alert-dismissable alert-success'>");
out.print(" <button type='button' class='close' data-dismiss='alert'>×</button>");
out.print(" <strong>Hooooraaaayyyy!</strong> <a href='index.jsp#contact' class='alert-link'>Sign in NOW!!</a> :D!</div>");
}else{
out.println("Your data could not be stored in the database");
}
out.close();
}
這是我的代碼,請幫我插入在sqlite的數據。我非常需要這個插入代碼。謝謝!!。我真的不知道代碼的主要問題。我只是想添加一個數據。
繼承人的日誌
信息:在5086毫秒Server啓動 值java.sql.SQLException:打開DB:「C:\ dbWheels.db:訪問在org.sqlite.Conn被拒絕 。 (Conn.java:59) 在org.sqlite.JDBC.connect(JDBC.java:64) 在java.sql.DriverManager.getConnection(未知來源) 在java.sql.DriverManager.getConnection(未知來源) 在javax.servlet.http.HttpServlet.service上的Register.Register.doPost(Register.java:76) (HttpServlet.java:641) at javax.servlet.http.H (org.apache.catalina.core.ApplicationFilterChain.doFilter)(ApplicationFilterChain.java: 210) 在org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 在> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.jav>一:在243) > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) at> org.apache.catalina.core。 StandardContextValve.invoke(StandardContextValve.java:164) at> org.apache.catalina.authenticator.AuthenticatorB ase.invoke(AuthenticatorBase.java:462) 在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) 在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) 在org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:562) 在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 在org.apache.catalina.connector。 CoyoteAdapter.service(CoyoteAdapter.java:395) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:250) at> org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java >:188) at> org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java> 166) at org.apache.tomcat.util.net.JIoEndpoint $ SocketProcessor.run(JIoEndpoint.java:302) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor $ Worker .RUN(來源不明) 在java.lang.Thread.run(來源不明)
我刪除了con.setAutoCommit(false); – user3486468
你可以發佈任何日誌的例外? –
對不起,我是這個挑釁:請改善你的代碼:不要使用愚蠢的變量名稱,比如'i'(即updateStatus)。然後,嘗試將您的業務邏輯和數據層(您堅持數據的位置)的表示層(JSP&Co.)分開。除此之外,我想參考@ Stathis-Andronikos – Markus