Java 如何使用Servlet从ArrayList循环插入多个输入
在下面的代码中,我希望要求用户选择至少一个复选框,然后将该输入与输入的产品id一起输入,并将它们插入两个不同的表中。因此,我遇到的问题是从view/jsp页面和servlet中的查询语句传递多个组件的idJava 如何使用Servlet从ArrayList循环插入多个输入,java,mysql,jsp,servlets,Java,Mysql,Jsp,Servlets,在下面的代码中,我希望要求用户选择至少一个复选框,然后将该输入与输入的产品id一起输入,并将它们插入两个不同的表中。因此,我遇到的问题是从view/jsp页面和servlet中的查询语句传递多个组件的id <% List<Component> components = new ArrayList<Component>(); components = ComponentDb.selectComponents(); for (Component compon
<%
List<Component> components = new ArrayList<Component>();
components = ComponentDb.selectComponents();
for (Component component : components) {
%>
<tr>
<td></td>
<td><input type="checkbox" name="component_id" value="
<%=component.getId()%>" required="required"><%=component.getName()%></td>
//here i have the end of form and stuff i doubt its necessary
谢谢创建两条语句,逐个执行
INSERT
语句
String query = "insert into Product (product_id,product_name,product_description,product_price) VALUES (?,?,?,?)";
ps=connection.prepareStatement(query);
ps.setInt(1,product_id);
...
ps.executeUpdate();
query="insert into PC(product_id,component_id) VALUES (?,?)";
ps=connection.prepareStatement(query);
String []component_ids=request.getParameterValues("component_id");
for(String componentID: components_ids){
ps.setString(1,product_id);
ps.setString(2,componentID);
ps.executeUpdate();
}
请重新表述你的问题。我试过了,希望能好一点,除非你指的是标题?但是我从循环中有多个组件id输入,生成多个组件,可以从中选择。至少为1,可能为2,3
String query = "insert into Product (product_id,product_name,product_description,product_price) VALUES (?,?,?,?)";
ps=connection.prepareStatement(query);
ps.setInt(1,product_id);
...
ps.executeUpdate();
query="insert into PC(product_id,component_id) VALUES (?,?)";
ps=connection.prepareStatement(query);
String []component_ids=request.getParameterValues("component_id");
for(String componentID: components_ids){
ps.setString(1,product_id);
ps.setString(2,componentID);
ps.executeUpdate();
}