【问题标题】:return web page contents not the web page name spring boot返回网页内容而不是网页名称spring boot
【发布时间】:2021-05-11 04:48:07
【问题描述】:

我想显示 HTML 页面的内容。但这会返回网页的名称。我尝试使用@controller 和@Responsebody 也使用@RestController。两者都没有给出页面的内容。请帮我解决这个问题。我正在尝试显示 vendor.html,但会打印名称“vendors”。 这是我的代码。

@Controller
@RequestMapping("/vendors")
public class VendorController {

@Autowired
private VendorService vendorService;

@RequestMapping("/indexVendor")
@ResponseBody
public String viewIndexVendor2(Model model) throws Exception {
List<Vendor> listVendor;

listVendor = vendorService.listAll();
model.addAttribute("listVendor", listVendor);
return "vendors";

}

} 

谢谢:)

【问题讨论】:

    标签: java html spring spring-boot


    【解决方案1】:

    @ResponseBody 返回方法的响应,在您的情况下,值中的字符串是“vendors”,因此您的请求“/vendors/indexVendor”返回“vendors”。谁应该显示“供应商”是很正常的。 要显示“vendors.html”页面的内容,首先删除@ResponseBody 注释并将页面重命名为“vendors.jsp”并配置模板引擎来处理 jsp 文件或使用它们。

    【讨论】:

    • 感谢您的回复。我试图生成一个jsp文件。但它仍然打印“供应商”。我之前尝试过生成html页面。但有时它会呈现页面,有时它会打印网页的名称。请帮我解决这个问题。
    • 您是否删除了@ResponseBody 注释?
    • 是的,我删除了注释
    • 如何配置您的vendors.jsp?请注意,如果您的供应商模板不存在,结果将显示“供应商”。您可能需要设置一个 Tiles.xml 系统来使用您的 JSP 页面构建您的模板!早点了解如何管理您的“webapp”以使用模板系统。
    • 抱歉回复晚了。正如您提到的,它找不到 Vendor.html 页面,因此显示“供应商”。我得到了该项目的副本并尝试再次运行该应用程序,它成功地显示了 vendor.html 页面。但是我仍然找不到为什么在以前的项目中找不到网页。因为同一个网页在两个项目中。你能找到原因吗?谢谢:)
    猜你喜欢
    • 2015-08-28
    • 2014-05-08
    • 2019-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-27
    • 2018-05-07
    • 2021-10-02
    相关资源
    最近更新 更多