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

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 02:27
    关注

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    清潭洞战战兢兢 2021-06-10 04:05

    这个我改过来了,但是还是不行😭

    回复
    阿 威 十 八 式 回复 清潭洞战战兢兢 2021-06-10 04:25

    错误截图发一下

    回复
    清潭洞战战兢兢 回复 阿 威 十 八 式 2021-06-10 04:57

    问题解决好了,是因为我的SQL语句中E-mail出了问题,改成Email就好了

    1
    回复
查看更多回答(2条)
编辑
预览

报告相同问题?

悬赏问题

  • ¥15 怎么修改鸿蒙app的UI及功能设计
  • ¥20 双硬盘安装Ubuntu后windows 无法挂载硬盘
  • ¥15 帮我利用jupyter 运行一个正确的代码
  • ¥15 如何使用Gephi软件和Python包中的GephiStreamer交互
  • ¥15 sqlite加密问题咨询
  • ¥15 appdesigner接收不到udp组播的数据
  • ¥15 verilog 非阻塞赋值下的移位拼接错误
  • ¥100 两个按钮控制一个LED
  • ¥15 用C语言写离散数学相关问题
  • ¥30 如何用python的GephiStreamer连接到gephi中,把Python和Gephi的具体操作过程都展示,重点回答Gephi软件的调试,以及如果代码的端口在浏览器中无法显示怎么处理
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部