package com.bml.icbs.ws.param;
import java.util.HashMap;
公共类RequestParameter{
private String param;
private HashMap<String, String> hashmap;
public RequestParameter(String param){
this.param=param;
this.hashmap = new HashMap<String, String>();
Integer i;
String key,value;
String myArray[] = this.param.split("&");
for (i=0;i<myArray.length;i++){
key=myArray[i].substring(0,myArray[i].indexOf("="));
value=myArray[i].substring(myArray[i].indexOf("=")+1);
this.hashmap.put(key,value);
}
}
public String getParameterValue(String key){
return this.hashmap.get(key);
}
public String getParam() {
return param;
}
public void setParam(String param) {
this.param = param;
}
public HashMap<String, String> getHashmap() {
return hashmap;
}
public void setHashmap(HashMap<String, String> hashmap) {
this.hashmap = hashmap;
}
}
当我测试上述方法时,如果URL是“param2=ffffhhh¶m1=oooo¶m3=ppp¶m4=iiii¶m5=kkkkk”
public static void main(String[] args) {
RequestParameter reqParam = new RequestParameter("param2=ffffhhh¶m1=oooo¶m3=pppp¶m4=iiii¶m5=kkkkk");
System.out.println("SIZE " + reqParam.getHashmap().size());
System.out.println("URL " + reqParam.getParam());
System.out.println("HASHMAP " + reqParam.getHashmap());
System.out.println("PARAM1 = " reqParam.getParameterValue("param1"));
}
public static void main(String[] args) {
RequestParameter reqParam = new RequestParameter("param2=ffff&&&hhh=¶m1=oooo=&¶m3=pppp¶m4=iiii&&yy=¶m5=kkkkk");
System.out.println("SIZE " + reqParam.getHashmap().size());
System.out.println("URL " + reqParam.getParam());
System.out.println("HASHMAP " + reqParam.getHashmap());
System.out.println("PARAM1 = " reqParam.getParameterValue("param1"));
}
它引发以下异常:线程“main”java.lang.StringIndexOutOfboundsException:String索引超出范围:在com.bml.icbs.ws.param.requestParameter处的java.lang.String.substring处的-1(String.java:1937)处的com.bml.icbs.ws.param.requestParameter.java:188)处的com.bml.icbs.ws.param.main.main(main.java:9)处的
确保数组元素!empy。
for (i=0;i<myArray.length;i++){
if(myArray[i] == null || myArray[i].length()==0){
continue;
}
key=myArray[i].substring(0,myArray[i].indexOf("="));
value=myArray[i].substring(myArray[i].indexOf("=")+1);
this.hashmap.put(key,value);
}
公共类请求参数{ } 当我在URL为“param2=ffffhhh”的情况下测试上述方法时
我正在使用Spring、REST和Hibernate创建一个web应用程序。在这里,我从数据库中提取记录使用唯一的用户名,这是来自URL。但问题是,如果我写的是简单字符串,那么它可以正常工作,但在username中,我写的是dot(.)则数据库中没有任何结果。 这是我的控制器 这是我的DAO类
有一种方法可以创建这样的JPA查询 如果查询需要可选的搜索字段最常见的避免重复的方法是什么?对于单个参数,可以有两个命名查询,或者Criteria API可能允许避免这种情况(因为没有查询字符串),但还有其他方法吗?
问题内容: 我正在编写小型且非常干燥的框架,该框架高度依赖元数据。我想知道是否有一种方法来获取方法参数名称,即给定一些方法 得到的字符串和。 我知道我可以注释参数,但是那不是很好。 问题答案: 我们为包含参数名称的String[]的方法创建了一个自定义注释。与必须注释每个单独的参数相比,此方法感觉易于管理。我们计划添加构建时检查,以确保带注释的参数名称的数量与参数的数量匹配,因为这是我们所需要的。
问题内容: 在Java中,我有: 我想获取参数值(PAR,NYC)。 所以我创建了正则表达式: 返回假。正在返回。 我究竟做错了什么? 问题答案: 它不必是正则表达式。由于我认为没有标准的方法可以处理此问题,因此我使用的是从某处复制的内容(可能有一些修改): 因此,当您调用它时,将获得所有参数及其值。该方法处理多值参数,因此使用而不是,并且在您的情况下,您需要获取第一个列表元素。
我有一个R代码,它从单个. nc4文件中提取每个月的每日值。我有49个netcdf文件。我想使用循环从所有这些文件中提取数据并将它们写入唯一的csv文件中。 我有一个文件的代码,但我需要多个文件的帮助。