SpringMVC(一)——在IDEA创建第一个springmvc项目

1.在IDEA创建项目

然后下一步设置项目名,接着创建就行

2.配置和启动tomcat

点击Fix,就会跳到以下界面

启动tomcat

会报错

原因是缺少 ContextLoaderListerner这个类

解决:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

点击“Artifacts”选项,可以看到下面有一个指示标,说缺少“Spring mvc”的jar包,

点击Fix,选择一个 Add all missing ... 就行

此时重新启动Tomcat,就成功了访问了默认的index.jsp

3.创建HelloWorld类

在HelloWorld类上添加 @Controller,@RequestMapping

并写一个普通方法,添加上 @RequestMapping,如下

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;


@Controller

@RequestMapping("/springmvc")

public class HelloWorld {


    @RequestMapping("/helloworld")

    public String hello(){

        System.out.println("hello world");

        return "success";

    }

}

访问的时候要怎么访问?

    因为类有一个@RequestMapping("/springmvc"),而方法也有一个@RequestMapping("/helloworld"),然后要对hello() 发出请求,得这样:http://localhost:8080/springmvc/helloworld.form

    如果类没有@RequestMapping("/springmvc"),则得:得这样:http://localhost:8080/helloworld.form

疑惑: .form 是啥,我们来看 web.xml文件

可以看到配置文件中帮我们配置一个Servlet,这个Servlet是org.springframework.web.servlet.DispatcherServlet这个类来处理,并且可以看到 *.form,这个url-pattern就是来配置拦截什么请求的,

我们把它改为 /,表示拦截所有请求:

这样的话,我们只需要这样就可以访问:http://localhost:8080/springmvc/helloworld

如果这样启动Tomcat的话会出现404,我们的hello()方法在访问时,如果访问成功会在控制台打印一条语句,结果现在访问却没有打印,说明spring识别不到@Controller

这时候就要去配置dispatcher-servlet.xml这个文件

4.配置dispatcher-servlet.xml

IDEA中创建SpringMVC有两个配置文件:dispatcher-servlet.xml和applicationContext.xml

我刚开始就在applicationContext.xml,结果总是404,原因是dispatcher-servlet.xml是专门来配置@Controller标记的类的

具体的区别可以看这里

然后我们需要告知Spring去哪里扫描包,将包里面的类添加进Spring

<context:component-scan base-package="cn.springmvc.hello"><</context:component-scan>

现在重启访问的话,还是会出现404,但是控制台已经可以打印语句了,说明添加进Spring成功

那么为什么还会404,看上图的警告,因为我们没有配置视图解析器

    hello()返回值会通过视图解析器解析为实际的物理视图,回到dispatcher-servlet.xml,配置如下

<!--配置视图解析器-->

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">

    <!--视图路径,转发后会到这去找文件-->

    <property name="prefix" value="/WEB-INF/views/"></property>

    <!--找后缀为jsp的文件-->

    <property name="suffix" value=".jsp"></property>

</bean>

    对于InternalResourceViewResolver类会做如下解析:

        通过 prefix  + 返回值 + 后缀,这样的方式来得到实际的物理视图,然后做转发操作

        如:/WEB-INF/views/ success .jsp

4.创建视图文件

在WEB-INF下创建文件名为views,并创建一个success.jsp的文件,该jsp的文件名必须跟hello()返回值相同

这样就成功了

更加具体参考:https://www.cnblogs.com/wormday/p/8435617.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用IntelliJ IDEA创建Spring MVC项目时,你需要按照以下步骤进行操作: 1. 打开IntelliJ IDEA并选择创建项目。 2. 在创建项目的向导中,选择你想要创建项目的位置,并为项目命名。 3. 在项目类型选择中,选择"Maven"作为构建工具,并勾选"Create from archetype"选项。 4. 在搜索框中输入"maven-archetype-webapp",选择该archetype作为项目模板。 5. 点击"Next"继续。 6. 在GroupId和ArtifactId中填写你的项目包名和项目名称。 7. 点击"Next"继续。 8. 在项目设置中,选择你想要使用的Java版本,并点击"Next"。 9. 在最后一步中,点击"Finish"完成项目创建创建项目后,你需要进行一些配置: 1. 在项目的根目录下创建一个名为"src/main/java"的目录,用于存放Java源代码。 2. 在"src/main/java"目录下创建你的Java包,例如"csdn.junKo"。 3. 在"src/main/resources"目录下创建一个名为"dispatcher-servlet.xml"的文件,并将引用\[1\]中的内容复制到该文件中。 4. 在"src/main/resources"目录下创建一个名为"applicationContext.xml"的文件,并将引用\[3\]中的内容复制到该文件中。 5. 在"pom.xml"文件中添加引用\[2\]中的Spring MVC依赖。 完成以上配置后,你就可以开始编写Spring MVC的控制器和视图了。同时,你可以根据需要进一步配置和定制你的Spring MVC项目。 #### 引用[.reference_title] - *1* *3* [Idea最新版创建一个SpringMVC项目的详细步骤](https://blog.csdn.net/qq_36223406/article/details/120850022)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [idea创建springmvc项目](https://blog.csdn.net/scj0725/article/details/131269193)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值