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