亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Eclipse 中使用 Spring MVC 5 的新項目,但出現錯誤 404

在 Eclipse 中使用 Spring MVC 5 的新項目,但出現錯誤 404

繁華開滿天機 2023-06-14 14:44:28
我是 Spring MVC 的新手,我正在嘗試制作簡單的 HelloWorld 程序,應用配置package main.java.config;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.EnableWebMvc;import org.springframework.web.servlet.view.InternalResourceViewResolver;import org.springframework.web.servlet.view.JstlView;@Configuration@EnableWebMvc@ComponentScan(basePackages = {"main.java"})public class AppConfig {@Beanpublic InternalResourceViewResolver resolver() {? ? InternalResourceViewResolver resolver = new InternalResourceViewResolver();? ? resolver.setViewClass(JstlView.class);? ? resolver.setPrefix("/WEB-INF/views/");? ? resolver.setSuffix(".jsp");? ? return resolver;}}調度器 Servlet 初始化器package main.java.config;import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;public class ServletDispatcherInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {@Overrideprotected Class <?> [] getRootConfigClasses() {? ? // TODO Auto-generated method stub? ? return null;}@Overrideprotected Class <?> [] getServletConfigClasses() {? ? return new Class[] {? ? ? ? AppConfig.class? ? };}@Overrideprotected String[] getServletMappings() {? ? return new String[] {? ? ? ? "/"? ? };}}控制器package main.java.controller;import java.time.LocalDateTime;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestMapping;}}錯誤我嘗試清理服務器,關閉并打開瀏覽器,重新發布我的項目。我現在不知道該怎么辦,請幫助我。
查看完整描述

2 回答

?
守候你守候我

TA貢獻1802條經驗 獲得超10個贊

可能的問題之一是您的包命名錯誤。maven 項目的文件夾結構如下所示:

src
  |_ main
  |     |_ java
  |     |     |_ your.actual.package
  |     |_ resources
  |     |_ webapp
  |_ test
        |_ java
              |_ your.actual.package

所以你的實際包在文件夾之后開始java。這意味著您實際上擁有:

  • config包而不是main.java.configAppConfig

  • controller包而不是main.java.controllerforJavaController

  • model包而不是main.java.modelforHelloWorld

您還需要更改您的@ComponentScan. 將其留空以掃描根包?;蛘邍L試使用,basePackageClasses如果這不起作用。

之后你需要檢查你的war文件。解壓它并檢查該WEB-INF文件夾是否包含.class所有已創建類的文件以及views您的helloworld.jsp文件。

我希望這個能幫上忙。


查看完整回答
反對 回復 2023-06-14
?
胡說叔叔

TA貢獻1804條經驗 獲得超8個贊

1-

您應該在 @ComponentScan 注釋而不是 main.java 中列出所有包,包括配置類: @ComponentScan(basePackages = {"config","controller"})

或者

將所有包移動到父包(例如:com.project)中,例如 com.project.config、com.project.controller、com.project.model 并使用它:

@ComponentScan(basePackages = {"com.project"})

2- 檢查你的項目的 web 依賴程序集,它應該是這樣的:

http://img1.sycdn.imooc.com//648962150001eec606110305.jpg

如果您的配置不是這樣,您應該通過單擊添加按鈕并選擇 java 構建路徑條目來添加它。

http://img1.sycdn.imooc.com//648962200001ded104340439.jpg

并在下一個窗口中選擇 Maven Dependencies。



查看完整回答
反對 回復 2023-06-14
?
縹緲止盈

TA貢獻2041條經驗 獲得超4個贊

不確定問題到底出在哪里,但這里有一個完整的項目供您使用。您可以從這里獲得幫助:

https://github.com/imrangthub/BlogSolutionUsingSpringHibernateWithClassLevelConfig


查看完整回答
反對 回復 2023-06-14
  • 2 回答
  • 0 關注
  • 236 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號