java - 在 Spring mvc 中使用 html 文件发送 dto

标签 java spring spring-boot spring-mvc

我当前的 Controller 正在返回 HTML 页面。我想发送一些可以在前端接收的数据(DTO),例如ajax响应(就像在ajax + RestController中发生的那样)。但这不是一个 RestController,它是一个返回 HTML 的普通 @controller。我不知道是否可以用html发送DTO。没有太多代码可看。我只是在寻找可行性。如果需要更多信息,请告诉我。谢谢

编辑

这里有一些代码可供引用。 login.html 是我要返回的页面。我想通过此返回发送一些附加信息(以 DTO 的形式)。

@Controller
public class LoginUserController {

  @RequestMapping(value = {"/loginuser", "/loginuser?error"})
  public String login() {
    return "/login";
  }

}

最佳答案

如果您只想返回 View ,即您的情况下的 jsp 。您可以将 DTO 对象 放入 modelMap 中并在 jsp 中使用。或者,如果您只想返回 JSON,则只能使用 @ResponseBody .

@RequestMapping(value = {"/loginuser", "/loginuser?error"})
  public String login(ModelMap model) {
   YourDTO dtoObject = // get DTO;
   model.put("dtoObject",dtoObject)
   return "/login";
 }

  class YourDTO {
    private int id;
    private String name;
    // getters setters 
  }

在登录 JSP 中,您可以使用dtoObject

     Name <c:out value="${dtoObject.name}" ></c:out>  // Using JSTL

或者在 Html 文件中

    <input type="text" id="name" value='${dtoObject.name}'/>

关于java - 在 Spring mvc 中使用 html 文件发送 dto,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59355325/

相关文章:

java - 如何在 Spring Boot 中限制仅 5 个设备的登录?

spring-boot - springdoc-openapi 如何显示字符串数组作为响应

java - session 工厂不知道带注释的实体

java - nutch 爬虫正在爬行“as”

java - Spring Rest Controller,重写方法参数上的路径变量

java - Hibernate 未在不同架构上创建新列

spring - 为什么 Spring Boot 启动器依赖项被设计为与 Maven 传递依赖机制的既定意图相反?

java - 从句子中提取单词的方法

java - 从重载类方法调用 super() 是否使用非参数化方法中的变量?

java - 如何在Spring + tomcat 7 + MySQL中使用数据源配置p6spy