Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JavaServlet中捕获表单数据-代码搜索_Java_Servlets - Fatal编程技术网

在JavaServlet中捕获表单数据-代码搜索

在JavaServlet中捕获表单数据-代码搜索,java,servlets,Java,Servlets,我想要一些关于我试图理解的特定问题的反馈。我正在尝试构建一个简单的Java web应用程序,允许用户输入zipcode和距离,让Java servlet捕获数据并通过百思买的API BBYOpen运行,以返回最接近所提供信息的商店位置。Java API(由BBYOpen提供)文档提供了以下示例: import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; i

我想要一些关于我试图理解的特定问题的反馈。我正在尝试构建一个简单的Java web应用程序,允许用户输入zipcode和距离,让Java servlet捕获数据并通过百思买的API BBYOpen运行,以返回最接近所提供信息的商店位置。Java API(由BBYOpen提供)文档提供了以下示例:

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.mattwilliamsnyc.service.remix.*;

public class RemixAdvancedDemo {

    public static void main(String[] args) {
        Remix remix = new Remix("YourApiKey");

        List<String> storeFilters   = new ArrayList<String>();
        List<String> productFilters = new ArrayList<String>();

        storeFilters.add("area(11201,10)");
        productFilters.add("sku=8982988");

        try {
            StoresResponse response = remix.getStoreAvailability(
                storeFilters,
                productFilters
            );

            if(!response.isError()) {
                for(Store store : response.list()) {
                    System.out.println(
                        store.getName() + " (" + store.getDistance() + " miles)"
                    );
                    for(Product product : store.getProducts()) {
                        if(product.hasInStoreAvailability()) {
                            System.out.println(product.getName());
                            System.out.println(
                                "Available for $" + product.getSalePrice()
                            );
                        }
                    }
                    System.out.println();
                }
            } else {
                ErrorDocument error = response.getError();
                if(null != error) {
                    System.out.println(error.getStatus());
                    System.out.println(error.getMessage());
                    System.out.println("Examples:");
                    for(String example : error.getExamples()) {
                        System.out.println(example);
                    }
                }
            }
        } catch(RemixException e) {
            e.printBackTrace();
        }
    }
}
import java.util.ArrayList;
导入java.util.HashMap;
导入java.util.List;
导入java.util.Map;
导入com.mattwillamsnyc.service.remix.*;
公共类RemixAdvancedDemo{
公共静态void main(字符串[]args){
混音混音=新混音(“YourApiKey”);
List storeFilters=new ArrayList();
List productFilters=new ArrayList();
添加(“面积(11201,10)”;
productFilters.add(“sku=8982988”);
试一试{
StoresResponse response=remix.getStoreAvailability(
存储过滤器,
产品过滤器
);
如果(!response.isError()){
对于(存储:response.list()){
System.out.println(
store.getName()+“(“+store.getDistance()+”英里)”
);
对于(产品:store.getProducts()){
if(product.hasInStoreAvailability()){
System.out.println(product.getName());
System.out.println(
“适用于$”+product.getSalePrice()
);
}
}
System.out.println();
}
}否则{
ErrorDocument error=response.getError();
如果(null!=错误){
System.out.println(error.getStatus());
System.out.println(error.getMessage());
System.out.println(“示例:”);
例如(字符串示例:error.getExamples()){
System.out.println(示例);
}
}
}
}捕获(RemixException e){
e、 printBackTrace();
}
}
}
这是一个在纽约市找到有Playstation 3可用的商店的例子。这不是我想要做的。但我想我需要的是在这里的某个地方稍加修补

1.我假设我可以删除代码中对产品的任何引用

2.是否需要列表storeFilters=new ArrayList();?这对于servlet是必需的

3.我可以使用getParameter()从我的.jsp表单中检索用户输入,然后在storeFilters.add(“area(11201,10)”)中引用它吗;替换其中已有的值

我对java很陌生,任何关于这方面的帮助或建议都会很好。 干杯

  • 您似乎可以忽略示例中涉及产品的部分,因为您只对位置感兴趣

  • 该行声明变量storeFilters,并将其初始化为空列表。因此,是的,这部分是必需的,因为您稍后将在代码中向该列表添加过滤器。查看列表(和ArrayList)上的文档:

  • 是的,HttpServletRequest.getParameter()将为您提供表单字段(和querystring参数)的字符串值,以便您可以动态创建所需的筛选器并将其添加到storeFilters列表中