先由表单提交数据到某验证页面:checkregister.jsp
<form method="POST"name="form1" action="checkregister.jsp" onsubmit="return check()">
在checkregister.jsp这里可以直接传给数据库,我加了一个页面输出,为了直观的观察数据:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <%@page import="java.sql.*" %> <%@page import="java.sql.DriverManager"%> <%@page import="java.sql.Connection"%> <%@page import="java.sql.PreparedStatement" %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>登记验证</title> </head> <body> <% /*浏览器提交的数据在提交给服务器之前设置编码方式为UTF-8*/ request.setCharacterEncoding("UTF-8"); out.println("用户名:"+request.getParameter("User")+"<br>"); out.println("密码:"+request.getParameter("pwd")+"<br>"); out.println("性别:"+request.getParameter("sexy")+"<br>"); out.println("密保问题:"+request.getParameter("secret")+"<br>"); out.println("密保问题答案:"+request.getParameter("pwd2")+"<br>"); %> <% request.setCharacterEncoding("UTF-8"); String dbURL="jdbc:sqlserver://localhost:1433;DatabaseName=Users";//此处为你的库名 //Connection conn=null; Connection conn=null; String userName="sa"; String pwd="xxxx";//xxxx是你的数据库登录密码 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); conn = DriverManager.getConnection(dbURL,userName,pwd); String sql="insert into Users2(username,password,question,answer,gender)values(?,?,?,?,?)";//此处username等是指数据库里的属性名 PreparedStatement stmp=conn.prepareStatement(sql); String username=request.getParameter("User"); String password=request.getParameter("pwd"); String question=request.getParameter("secret"); String answer=request.getParameter("pwd2"); //int gender=Integer.parseInt(request.getParameter("sexy")); String gender=request.getParameter("sexy"); // 另外,setString中的数字顺序对应sql语句参数顺序! stmp.setString(1,username); stmp.setString(2,password); stmp.setString(3,question); stmp.setString(4,answer); stmp.setString(5,gender); int n=stmp.executeUpdate(); if(n==1){%>数据插入成功!<br><%} else{%>数据插入失败!<br><%} %> </body> </html>
记得加入executeUpdate