Java 从下拉菜单和单选按钮捕获数据
我正在尝试捕获从表单中输入的数据。有一次我按下了提交按钮,但我遇到了困难。下面是我的简单代码。我正试图在一个注册页面上工作,该页面可以捕获一个人的所有信息。一些数据具有下拉菜单和单选按钮。我想捕获并存储数据库(mysql)中的所有内容 我的servlet代码:Java 从下拉菜单和单选按钮捕获数据,java,servlets,Java,Servlets,我正在尝试捕获从表单中输入的数据。有一次我按下了提交按钮,但我遇到了困难。下面是我的简单代码。我正试图在一个注册页面上工作,该页面可以捕获一个人的所有信息。一些数据具有下拉菜单和单选按钮。我想捕获并存储数据库(mysql)中的所有内容 我的servlet代码: package com.Registration.Controllers; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.Se
package com.Registration.Controllers;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class AddUserSevelet
*/
@WebServlet("/AddUserSevelet")
public class AddUserSevelet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public AddUserSevelet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("text/html");
PrintWriter write = response.getWriter();
String username = request.getParameter("uname");
String password = request.getParameter("pass");
String country = request.getParameter("country");
AddUser register =new AddUser();
if (register.adduser(username, password, country)){
write.println("You Have Been Registered Successfully");
} else {
write.print("ERROR WHILE LOADING");
}
}
}
my adduser class
package com.Registration.Controllers;
import java.sql.Connection;
import java.sql.PreparedStatement;
public class AddUser {
public boolean adduser(String userName,String password,String country){
boolean isRegistered = false;
try{
Connection con = DB_Connection.getConnection();
PreparedStatement psmt = con.prepareStatement("insert into user VALUES(default,?,?,?,?)");
psmt.setString(1, userName);
psmt.setString(2, password);
psmt.setString(3, country);
int success = psmt.executeUpdate();
if(success > 0){
isRegistered = true;
}
}
catch(Exception e){
e.printStackTrace();
}
return isRegistered;
}
}
我的HTML代码:
<body>
<form action="AddUserSevelet" method="post">
UserName: <input type="text" name="uname"/><br/><hr/>
password: <input type="password" name="pass"/><br/><hr/>
Country: <input type="text" name="country"/><br/><hr/>
<input type="radio" name="color" value="red" checked>red
<br>
<input type="radio" name="color" value="blue" checked>blue
<br>
<input type="radio" name="color" value="white">white
<br/><hr/>
<br/><hr/>
<select name ="cars">
<option value="BMW"> BMW 320i</option>
<option value="BENZ"> Compressor</option>
<option value="Toyota"> Allion</option>
<option value="Audi"> A5</option>
<option value="Jeep"> Cheroki</option>
<option value="Volvo"> Volvo g5</option>
</select>
<input type="submit" value="Register"/><br/><hr/>
</body>
我的班级代码:
Connection con = DB_Connection.getConnection();
PreparedStatement psmt = con.prepareStatement("insert into 'user'(?,?,?,?,?) VALUES(default,?,?,?,?,?,?)");
psmt.setString(1, userName);
psmt.setString(2, password);
psmt.setString(3, country);
psmt.setString(4, cars);
psmt.setString(5, color);
我得到了一个错误:
在控制台中加载及其java.sql.SQLEXCEPTION时出错:没有为参数6指定值
请帮助我提供有关如何捕获数据并使用servlet插入或编辑数据的建议或解决方案。我是个新手,只是想学习。谢谢大家!
Connection con = DB_Connection.getConnection();
PreparedStatement psmt = con.prepareStatement("insert into 'user'(?,?,?,?,?) VALUES(default,?,?,?,?,?,?)");
psmt.setString(1, userName);
psmt.setString(2, password);
psmt.setString(3, country);
psmt.setString(4, cars);
psmt.setString(5, color);