【问题标题】:how to retrieve data from html table in servlet and insert it into database [duplicate]如何从servlet中的html表中检索数据并将其插入数据库[重复]
【发布时间】:2015-04-01 17:56:16
【问题描述】:

我想从下面给出的这个表中检索数据,并将该数据插入到下一个 servlet 的数据库中。 我应该在这里使用数组还是其他东西 请帮忙。 当我试图通过 request.getParameter() 检索数据时,它只检索一个值,我想要所有值

package com.sk; 
import java.io.IOException; 
import java.io.PrintWriter; 
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 

public class crea extends HttpServlet { 
private static final long serialVersionUID = 1L; 

/** 
* @see HttpServlet#HttpServlet() 
*/ 
public crea() { 
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 
String tn=request.getParameter("tn"); 
//  System.out.println(tn); 
String np=request.getParameter("nc"); 
//  System.out.println(np); 
int n=Integer.parseInt(np); 
PrintWriter out=response.getWriter(); 
out.print("<html><body>"); 
out.print("<form action='creat'method='get'>"); 
out.print("<table border='1'"); 
out.print("<tr><th>NAME</TH><TH>TYPE</TH><TH>LENGTH</TH></TR>"); 
for (int i=0;i<n;i++) 
{ 
out.print("<tr><td><input type='text'name='na'></td><td><input type='text' name='type'></td><td><input type='text' name='length'></td>"); 
} 
out.print("<input type='submit' value='create'>"); 
out.print("</table>"); 
out.print("</body></html>"); 

} 

/** 
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) 
*/ 
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
// TODO Auto-generated method stub 
} 

} 

【问题讨论】:

  • 那么我将如何创建表,因为我必须根据给定的数字创建它 for (int i=0;i "); }
  • 首先,cmets 中的源代码通常是不礼貌的。请将其移至您的问题。其次,随着 JSTL 的出现,这种 Java 编码风格被抛弃了。这种技术是从 1997 年开始的,当时 Perl 统治了 CGI 脚本。尝试使用 JSTL 重写你的代码,至少如果你仍然有问题,你不会被否决。

标签: java html mysql servlets


【解决方案1】:

你应该使用getParameterValues方法

java api 中的更多信息:

http://docs.oracle.com/javaee/6/api/javax/servlet/ServletRequest.html#getParameterValues(java.lang.String)

【讨论】:

    【解决方案2】:

    使用

    request.getParameterValues();

    相反。 它将返回输入类型中具有相同名称的字符串数组

    HTML 文件: 两个输入文本具有相同的名称,例如 'td',并且可能具有不同的值,例如 'a,b'
    Servlet:

    String td[]=request.getParameterValues("td");

    这会给你像 ['a','b']

    这样的数组

    【讨论】:

      猜你喜欢
      • 2016-09-03
      • 2015-01-16
      • 2023-03-25
      • 1970-01-01
      • 2014-06-02
      • 2014-01-06
      • 2022-01-20
      • 1970-01-01
      • 2010-12-02
      相关资源
      最近更新 更多