当前位置: 首页 > 知识库问答 >
问题:

Spring Boot不直接使用RequestMapping更正URL

颛孙钱青
2023-03-14
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>My Contacts - Spring Boot Web Application Example</title>
</head>
<body>
    <h1>My Contacts</h1>
    <a href="/list_contact">Click here to list all contacts</a>
</body>
</html>
package com.example.SpringWebT1;
import java.util.List;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
 

    @Controller
    @RequestMapping("/home")
    public class AppController {
         
        @RequestMapping("/list_contact")
        public String listContact(Model model) {
             
            ContactBusiness business = new ContactBusiness();
            List<Contact> contactList = business.getContactList();
             
            model.addAttribute("contacts", contactList);       
             
            return "contact";
        }
    }

我在单击按钮时运行项目。它转到localhost:8080/list_contact,而不是正确的URL localhost:8080/springtest/home/list_contact。这是我的tomcat配置问题还是我错过了某个步骤?THX.

共有1个答案

支洋
2023-03-14

发生这种情况是因为您的JS重定向只知道您的服务器在localhost:8080上运行,所以当您告诉它使用时,单击此处列出所有联系人,它会将href追加到服务器url,从而导致localhost:8080/list_contact

您需要将href修改为:

<a href="/home/list_contact">Click here to list all contacts</a>

我不确定/springtest是什么--是您配置的服务器上下文吗?

 类似资料:
  • 我正在学习Spring Boot来构建应用程序。我试图用不同包中的控制器作为应用程序来构建我的第一个Spring Boot应用程序。Tomcat实例出现,但请求没有到达为URI注册的RestController。 以下是控制器类: 以下是应用程序类: Pom.xml tomcat启动时的日志: 我添加了基本包扫描,甚至尝试了注释,但当我点击URL(http://localhost:8080/abc

  • 我有一个应用程序有多个mongo配置。这是通过一些@Configuration类实现的,比如 配置1——应用程序 配置2--测试 然后在我的房子里 因此,两个mongo配置连接到本地运行但具有不同数据库的实例。我也尝试过使用不同的地址,但它的行为相同。 不管怎么说,这将通过实体和MongoRepository来使用 回购 然而,当我在某个地方的课堂上使用它时 此对象被写入,而不是我所期望的,因为它

  • 问题内容: 我有此RequestMapping: 我想添加该RequestMapping: 因此,它可以服务于所有“无出发”路线。但是,这会产生冲突,因为“ / route / to-destination-from-departure” URL实际上也与第二个RequestMapping匹配…很公平,所以我的解决方案是指定一个正则表达式: 因此,如果“目标”包含“ -from-”,则Reques

  • 基本上,我正在使用spring boot和thymeleaf创建一个餐厅餐饮网站(只是一个课程的练习),厨师提供自助餐,每个自助餐由不同的菜肴和不同的配料组成(对不起,我的英语)。 我的问题是:我应该使用来指示厨师制作的自助餐吗? 或者我应该直接使用(“/自助餐”)?因为对于配料的控制器,我最终会使用<代码>(“/厨师/{id}/自助餐/{id}/盘子{id}/配料”) ,它看起来很奇怪,但我认为

  • 问题内容: 我正在尝试设置控制器,但是很遗憾无法查看输出…一切都正确呈现。当我转到404页面时。从Netbeans运行我的应用程序转到 app-config.xml web.xml 我如何调试它,看看有什么用,什么没用? 更新资料 Netbeans中的GlassFish服务器日志显示 问题答案: 您的名字映射到中吗?从您先前的问题中,我看到: 网址不匹配格式。尝试一种可能的解决方法。

  • 我有一个使用自定义MIME类型。该请求使用中定义的bean来启用。 是否有一种方法可以区分用于每个或的ObjectMapper? 对象映射器Bean 请求映射接口方法