我正在尝试使用spring,Java和html为前端在项目的前端和后端之间进行通信。
我已将https://spring.io/guides/gs/handling-form-submission/中的代码放入我的工作中,试图找出我需要做的事情。
我有两个问题。第一个是我想要这样做,以便我可以将控制器和域分成单独的文件夹以使其更整洁但是当我这样做时,弹簧无法正确加载并且如果您尝试提交任何内容则会出现500或405错误,说不允许使用“POST”方法。如果我将文件移到单独的文件夹之外,并使用“应用程序”,它似乎工作正常,并正常工作。我还注意到,如果文件位于不同的文件夹中,那么只有在网址末尾添加“html”扩展名时才会显示网站,例如“localhost:8080/greeting.html
”如果它们不在文件夹中,则只有在您不使用扩展程序时才会显示。
This is the configuration that works for me
这让我想到了第二个问题。我不能在我的仓库中移动我的弹簧文件而不会破坏应用程序,以至于我必须从git重新下载我的最新版本。甚至在移动文件后尝试移回文件仍会导致问题。
为什么它仍然声称现在有两份?
这是错误代码:
org.springframework.beans.factory.BeanDefinitionStoreException:失败 解析配置类[com.ess.employee.EmployeeApplication]; 嵌套异常是 org.springframework.context.annotation.ConflictingBeanDefinitionException: bean类的注释指定bean名称'greetingController' [com.ess.employee.GreetingController]与现有的冲突, 同名和类的非兼容bean定义 [com.ess.employee.controllers.GreetingController]
请建议。
答案 0 :(得分:0)
根据您的错误,我们看到GreetingController类位于两个位置。
根据错误,它在com.ess.employee.controllers.GreetingController(在控制器文件夹内)
根据图片,它在com.ess.employee.GreetingController(外部控制器文件夹)
可能是由于构建问题。做一个干净的构建。过时的文件将被删除。然后让希望最好!