我正在尝试在jsp netbeans中创建登录时间和注销时间web应用程序。虽然我尝试将注销时间保存到mysql数据库中,但日期和时间相同。时间保存正确但用户名和密码都保存为null。请帮我正确保存用户名和密码到表。 这是我的退出代码:
`<%@ page import ="java.sql.*" %>
`<%String url="jdbc:mysql://localhost:3306/mysql";`
` String user="root";`
` String password="";`
`Class.forName("com.mysql.jdbc.Driver");`
`Connection con = DriverManager.getConnection(url, user, password);`
`Statement st = con.createStatement();`
`String uname1= request.getParameter("first_name");`
`String pwd = request.getParameter("pass");`
`session.setAttribute("fname", uname1);`
`session.setAttribute("pass", pwd);`
`int i = st.executeUpdate("insert into logut values ('" + uname1 + "','" + pwd + "',now())");`
`if (i > 0) `
`{out.write("<script type='text/javascript'>\n");`
`out.write("alert(' Logout Successfully!!! ');\n");`
`out.write("setTimeout(function({window.location.href='index.jsp'},1000);");`
`out.write("</script>\n");`
`}`
%>`
我的数据库保存如下:id = null pass = null并正确保存日期和时间。帮帮我。谢谢你提前。
答案 0 :(得分:1)
你的陈述中有一个拼写错误。我想你的意思是表logout
"insert into logut values ('" + uname1 + "','" + pwd + "',now())"
但除此之外,你必须考虑准备好的陈述。
String insertTableSQL = "INSERT INTO DBUSER"
+ "(USER_ID, USERNAME, CREATED_BY, CREATED_DATE) VALUES"
+ "(?,?,?,?)";
PreparedStatement preparedStatement = dbConnection.prepareStatement(insertTableSQL);
preparedStatement.setInt(1, 11);
preparedStatement.setString(2, "username");
preparedStatement.setString(3, "password");
preparedStatement.setTimestamp(4, getCurrentTimeStamp());
// execute insert SQL statement
preparedStatement .executeUpdate();
为何准备陈述: