Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.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
如何在thymeleaf模板中打印java对象?_Java_Spring_Spring Boot_Thymeleaf - Fatal编程技术网

如何在thymeleaf模板中打印java对象?

如何在thymeleaf模板中打印java对象?,java,spring,spring-boot,thymeleaf,Java,Spring,Spring Boot,Thymeleaf,我需要在price.html中显示resultset对象的model数据,该数据由thymeleaf组成。访问resultset对象子元素的方式是什么。有没有办法把整个物体打印出来。就像toString()一样。这是我在spring boot中的控制器类 @PostMapping("/price") public ModelAndView pricePost(@Valid @ModelAttribute("priceSearch") PriceSearch priceSearch,

我需要在price.html中显示
resultset
对象的
model
数据,该数据由thymeleaf组成。访问resultset对象子元素的方式是什么。有没有办法把整个物体打印出来。就像toString()一样。这是我在spring boot中的
控制器

@PostMapping("/price")
public ModelAndView pricePost(@Valid @ModelAttribute("priceSearch") PriceSearch priceSearch, 
        BindingResult bindingResult, Model model) {
    modelAndView.addObject("resultSet", resultSet);
    modelAndView.setViewName("price");
    return modelAndView;
}

在java中,如果您正在寻找的是随机对象,则没有通用的方法可以“将其从盒子中串出”。您将被留给resultSet的项目,并直接打印它的属性


如果您只需要对象的任何文本表示,您可以将其封送到JSON以便查看它

在java中,如果您正在寻找的是随机对象,则没有通用的方法可以“将其从盒子中串出”。您将被留给resultSet的项目,并直接打印它的属性


如果您只需要对象的任何文本表示,您可以将其封送到JSON以便查看它

如果希望使用thymeleaf访问resultset对象的子元素,则需要执行以下操作

<th:block th:each="iterator : ${resultSet}">
     <p th:text=${iterator.name}></p>
</th:block>


注意:我假设resultset是一个对象集合。

如果您想使用thymeleaf访问resultset对象的子元素,您需要执行以下操作

<th:block th:each="iterator : ${resultSet}">
     <p th:text=${iterator.name}></p>
</th:block>


注意:我假设resultset是对象的集合。

您可以重写object类的toString()方法。可以在嵌套的子元素上进行迭代,并将它们的toString()响应添加到返回值中,例如:

@Override
public String toString()
{
  String result = /* other properties from the class */ 
  result += "[";
  for (SubElementClass o in this.subElements)
  {
     result += String.Format("(%s)", o.toString());
  }
  result += "]";
  return result;
}
在SubElementClass中重写toString()方法也是有意义的


另一个选项是不重写toString方法,而是将dump()方法添加到原始类的扩展类中,您可以在模板中调用该扩展类。

您可以重写对象类的toString()方法。可以在嵌套的子元素上进行迭代,并将它们的toString()响应添加到返回值中,例如:

@Override
public String toString()
{
  String result = /* other properties from the class */ 
  result += "[";
  for (SubElementClass o in this.subElements)
  {
     result += String.Format("(%s)", o.toString());
  }
  result += "]";
  return result;
}
在SubElementClass中重写toString()方法也是有意义的

另一个选项是不重写toString方法,而是将dump()方法添加到原始类的扩展类中,您可以在模板中调用该扩展类