我的名字是安德烈。我创建了一个 Spring Boot Web 应用程序项目,我的问题是我的控制器和 securityConfig 文件从未被使用过(IntelliJ 告诉我是这样)。我在 Windows 11 上使用 Spring Boot 3.3。Google 告诉我将主应用程序文件放在基础包中,并将控制器放在基础包下面的子包中,但这不起作用。我已经在用了
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
在 pom.xml 文件中。
当我运行我的应用程序时,index.html 出现得很好(注意:我使用的是传统的 HTML 文件,而不是 thymeleaf)。我的登录表单位于此index.html 页面上。我输入正确的凭据,浏览器会显示 home.html 页面和 error.html 页面的混合内容。我的 Ajax 文件尝试运行,但无法找到名为“loggInUser”的端点,因为用于调用 loggInUser() 方法的方法“patty”永远不会被调用,因为根据 IntelliJ,从未使用类 UserController。
查看您的源代码可用后,我发现您的类
DataController
没有用@RestController
或@Controller
注释,这就是为什么Spring无法映射该类中包含的所有端点(包括@GetMapping("/loggInUser")
)。
除此之外,我建议您查看Spring 自动装配时的最佳实践。理想情况下,您始终在构造函数中而不是在私有字段中进行自动装配,因为它使您的代码更易于测试。