如何使用ajax在Javaservlet中构造响应/请求

如何使用ajax在Javaservlet中构造响应/请求,java,javascript,ajax,servlets,Java,Javascript,Ajax,Servlets,我正在创建一个网站,它有一个在后台运行的java servlet(作为服务)和一个运行ajax作为请求/响应工具的html前端。 我需要一些关于如何使请求/响应结构正确的信息。现在,我正在考虑在Javaservlet中设置一个开关,并向其发送操作参数。然后将响应发送回。 但我不知道如何正确处理这个问题——我如何回传不同的回应?如果它只是一个更新命令字符串,我应该发送文本本身还是只发送一个javascript将转换为文本的命令号?我想对象应该序列化并作为json发送?如何在请求/响应的前后设置正确

我正在创建一个网站,它有一个在后台运行的java servlet(作为服务)和一个运行ajax作为请求/响应工具的html前端。
我需要一些关于如何使请求/响应结构正确的信息。现在,我正在考虑在Javaservlet中设置一个开关,并向其发送操作参数。然后将响应发送回。

但我不知道如何正确处理这个问题——我如何回传不同的回应?如果它只是一个更新命令字符串,我应该发送文本本身还是只发送一个javascript将转换为文本的命令号?我想对象应该序列化并作为json发送?如何在请求/响应的前后设置正确的开关结构?

您可以使用
java.util.Map
将字符串值作为键和值对存储在Servlet中。像

Map<String, String> json = new HashMap<String, String>();
json.put("fileId", fileId);
json.put("name", fileName);
要在成功方法中检索Ajax响应中的键值对

success: function(response) {
    console.log(response.fileId);
    console.log(response.fileName);
}

您可以考虑JSON,它可以从JavaServlet传递并在JavaScriptAjax中访问。:)(注意:搜索大致相同,有很多选项,如:相似不相同:)感谢您的输入-如何使用Objectmapper将其转换为字符串?@Mac Luc使用Objectmapper().writeValueAsString()方法,该方法可用于将任何Java值序列化为字符串。检查更新的答案。
success: function(response) {
    console.log(response.fileId);
    console.log(response.fileName);
}