我正在尝试POST一个List自定义对象.请求正文中的我的JSON是这样的:
{
"collection": [
{
"name": "Test order1",
"detail": "ahk ks"
},
{
"name": "Test order2",
"detail": "Fisteku"
}
]
}
Run Code Online (Sandbox Code Playgroud)
处理请求的服务器端代码:
import java.util.Collection;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
@Path(value = "/rest/corder")
public class COrderRestService {
@POST
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Response postOrder(Collection<COrder> orders) {
StringBuilder stringBuilder = new StringBuilder();
for (COrder c : orders) {
stringBuilder.append(c.toString());
}
System.out.println(stringBuilder);
return Response.ok(stringBuilder, MediaType.APPLICATION_JSON).build();
}
}
Run Code Online (Sandbox Code Playgroud)
实体COrder:
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class …Run Code Online (Sandbox Code Playgroud) 序列化具有其他对象引用的Java对象时,我只需要序列化嵌套对象的一个属性(通常是外键的情况,因此序列化对象引用的"id"属性).其他一切.
例如,我有两个类,我需要序列化为JSON和XML(为清楚起见,删除了JPA注释):
关系:用户 - >(一对多)地址信息; 另外:AddressInformation - >(一对一)用户
@XmlRootElement
public class User {
private String id;
private String firstName;
private String lastName;
private String email;
private AddressInformation defaultAddress;
private Set<AddressInformation> addressInformation;
public User() {
}
@JsonProperty(value = "id")
@XmlAttribute(name = "id")
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
@JsonProperty(value = "firstname")
@XmlAttribute(name = "firstname")
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
@JsonProperty(value …Run Code Online (Sandbox Code Playgroud) Android 中consumeContent()的类或org.apache.http.HttpEntity的目的是什么?
什么时候应该使用它可以有副作用吗?
我正在尝试修复应用程序中的错误,该应用程序使用HttpClient向服务器发出请求,有时如果某个特定请求失败,它将随后失败,尽管互联网是正常的.应用程序在输入流读取结束时调用此方法.
我正在将原始映射Stream到a Stream<Integer>,然后将元素收集到a List<Integer>.
为什么我必须将结果投射collect(Collectors.toList())到List<Integer>我的映射器.map(str -> ((String)str).length())- 已映射到Integer?
我的代码:
List list = Arrays.asList("test", "test2");
List<Integer> lengths = (List<Integer>) list.stream()
.map(str -> ((String)str).length())
.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
如果我不使用raw List,则无需强制转换:
List<String> list = Arrays.asList("test", "test2");
List<Integer> lengths = list.stream()
.map(str -> str.length())
.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud) java ×4
jackson ×2
spring ×2
android ×1
httpclient ×1
java-8 ×1
java-stream ×1
jax-rs ×1
json ×1
resteasy ×1