java - 如何将 html 页面(JSP)中选定的信息发送到 servlet?

标签 java html jsp servlets

我正在尝试使用 servlet(ExportDB.java) 向数据库发送查询。我正在尝试将数据从下拉列表发送到 servlet。这是包含列表的表单。

<form>
    <select name="day">
        <option value=""></option>
        <option value="01">01</option>
        <option value="02">02</option>
        ...
        <option value="30">30</option>
        <option value="31">31</option>
    </select>
    <select name="month">
        <option value=""></option>
        <option value="01">01</option>
        <option value="02">02</option>
        ...
        <option value="11">11</option>
        <option value="12">12</option>
    </select>
    <select name="year">
        <option value=""></option>
        <option value="2013">2013</option>
        ...
        <option value="2029">2029</option>
        <option value="2030">2030</option>
    </select>
    <input type="submit" value="Export" onclick="exportDB()"/>
    <script type="text/javascript">
        function exportDB() {
        window.open('ExportDB');
        }
    </script>
</form>

这是 ExportDB.java 中导致问题 (NullPointerException) 的代码行

sqlite4java.export(Integer.parseInt(request.getParameter("day")), Integer.parseInt(request.getParameter("month")), Integer.parseInt(request.getParameter("year")));

这就是我认为我的错误所在。我不太清楚如何将信息链接到 servlet。我怎样才能做到这一点才能使其发挥作用?还有为什么我目前的方式不起作用?

最佳答案

你试过这个吗?

<form action="ExportDB" target="_blank">
<select name="day">
    <option value=""></option>
    <option value="01">01</option>
    <option value="02">02</option>
    ...
    <option value="30">30</option>
    <option value="31">31</option>
</select>
<select name="month">
    <option value=""></option>
    <option value="01">01</option>
    <option value="02">02</option>
    ...
    <option value="11">11</option>
    <option value="12">12</option>
</select>
<select name="year">
    <option value=""></option>
    <option value="2013">2013</option>
    ...
    <option value="2029">2029</option>
    <option value="2030">2030</option>
</select>
<input type="submit" value="Export" />
</form>

您还应该添加您在 ExportDB servlet 中使用的方法。 如果您使用的是post方法

protected void doPost(HttpServletRequest request, HttpServletResponse response) {
int year = Integer.parseInt(request.getParameter("year"));
...
}

您应该将 method="post"添加到表单中

<form action="ExportDB" target="_blank" method="POST">

GET 也是如此

关于java - 如何将 html 页面(JSP)中选定的信息发送到 servlet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17409555/

相关文章:

java - 使用Java加密/解密pdf文件

javascript - 使 JavaScript 函数可行

javascript - 检查值是否在某个数字的范围内

java - 如何在不使用表单标签库的情况下访问 JSP 中的 Spring 3 MVC validator 结果

java - jsp中如何导入外部js文件

jsp - <html :file> upload file error , -参数类型不匹配-

java - 如何在 Java 中操作 BLOB?

java - 具有多个客户端的聊天服务器

java - 如何将给定的长度转换为厘米并将其表示为公里、米和厘米的组合?

javascript - 相对于另一个不起作用的定位元素