清潭洞战战兢兢 2021-06-09 23:08 采纳率: 80%
浏览 112
已采纳

jdbc插入不了数据

RegisterServlet代码:

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		response.setContentType("text/html");
		PrintWriter out = response.getWriter();
		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=UTF-8");
		
		//获取注册信息
		UserDao userdao=new UserDao();
		
		String userID=request.getParameter("phone");
		String username = request.getParameter("uname");
		String password = request.getParameter("pwd");
		String email = request.getParameter("mail");
		String sex = request.getParameter("sex");
		String birth=request.getParameter("birth");
		String address=request.getParameter("address");
		
		//可以传值
		/*out.println(userID);
		out.println(username);
		out.println(password);
		out.println(email);
		out.println(sex);
		out.println(address);
		out.println(birth);*/
		
		
		//将注册信息存入数据库,再返回登录
		userdao.Register(userID,username,password,birth,email,sex,address);
        response.sendRedirect("Login.jsp");
		
	}

UserDao的register代码段

public void Register(String userID, String userPsw, String userName, String email,String birth,String sex,String address) {
		// TODO Auto-generated method stub
		        //连接数据库
		        Connection conn = DBConnection.getConnection();
				//sql语句
				//String sql = "insert  into user(flag,userID,userPsw,userName,birth,E-mail,sex,address) values(?,?,?,?,?,?,?,?)";
				String sql="insert into user(userID,userName,userPsw,bitrh,E-mail,sex,address,flag) values(?,?,?,?,?,?,?,?)";
		        int rs = 0;
				PreparedStatement stm = null;
				try {
					//预编译SQL,减少sql执行
					stm = conn.prepareStatement(sql);
					//传参
					stm.setInt(8, 1);//状态->用户注册所以全为1
					stm.setString(1, userID);//手机号
					stm.setString(3, userPsw);//密码
					stm.setString(2, userName);//用户名
					stm.setString(5, email);//电子邮箱
					stm.setString(4, birth);//出生日期
					stm.setString(6, sex);//性别
					stm.setString(7, address);//收货地址
					//执行更新
					rs = stm.executeUpdate();
					
				} catch (Exception e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				try {
					stm.close();
					conn.close();
				} catch (Exception e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				
			
	}

 

  • 点击注册后user表没有新记录,但会跳转到Login.jsp
  • register页面传过来的值也能接收到
  • 数据库已经连接好了,因为登录页面是没问题的,可以找到用户。
  • 点了注册提交之后,数据库没有新记录产生。
  • 写回答

3条回答 默认 最新

  • 阿 威 十 八 式 2021-06-10 10:27
    关注

    checkErrorPacke:你的register(。。。)参数不对应,调用传入的参数 和 实现设置的参数名位置错了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来