返回顶部
首页 > 资讯 > 精选 >怎么使用Idea搭建全注解式开发的SpringMVC项目
  • 262
分享到

怎么使用Idea搭建全注解式开发的SpringMVC项目

2023-07-05 16:07:15 262人浏览 八月长安
摘要

这篇“怎么使用idea搭建全注解式开发的springMVC项目”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用Idea

这篇“怎么使用idea搭建全注解式开发springMVC项目”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用Idea搭建全注解式开发的springmvc项目”文章吧。

1. 创建项目

打开Idea,并点击新建项目

注:使用的是2022.2的商业版,该版本跟2021.2的商业版创建Maven项目不一样

点击右侧的新建项目 -> 取名 -> 创建

怎么使用Idea搭建全注解式开发的SpringMVC项目

这样我们就创建了一个空依赖的Maven项目

打开项目 -> 右键项目名 -> 点击添加框架支持

有时会找不到,重复这个过程即可

怎么使用Idea搭建全注解式开发的SpringMVC项目

勾选WEB应用程序,然后点击确定,若出现Web目录,则加载完毕

这创建的是传统的JAVA WEB项目:带Web目录的,该目录下存在WEB-INF目录

怎么使用Idea搭建全注解式开发的SpringMVC项目

补全目录

创建完的目录结构如下, 缺失了一些目录,需要自己在test目录下创建resource目录

怎么使用Idea搭建全注解式开发的SpringMVC项目

  • web目录:该目录的文件能被外界访问

  • WEB-INF目录:该目录的文件不对外展示

  • web.xml:主要用来配置FilterListenerServlet

pom.xml文件里加入如下代码,然后刷新Maven,这样会在target里生成war文件

不这样做的话,工件中就没有我们通过Maven引入的jar包,会导致项目中用到引入Jar包的地方出错,如下所示
如: 使用@Controller注解设置请求时,会报404

怎么使用Idea搭建全注解式开发的SpringMVC项目

<!--设置打包方式为war--><packaging>war</packaging>

或者项目结构->工件->创建lib目录->添加Jar

2. 配置Tomcat

点击当前文件

怎么使用Idea搭建全注解式开发的SpringMVC项目

点击编辑配置

怎么使用Idea搭建全注解式开发的SpringMVC项目

点击+

怎么使用Idea搭建全注解式开发的SpringMVC项目

找到Tomcat服务器,点击下面的本地

怎么使用Idea搭建全注解式开发的SpringMVC项目

点击配置

怎么使用Idea搭建全注解式开发的SpringMVC项目

  • 点击Tomcat主目录旁的文件图标,选择你Tomcat安装到的文件夹所对应的路径,点击确定

    • 这个文件夹应该是bin目录的父目录

如果是正确的话,idea会自动帮你填写Tomcat基目录

怎么使用Idea搭建全注解式开发的SpringMVC项目

配置工件:点击修复 -> 会进入一个新页面 -> 修改应用程序上下文,保留一个即可

怎么使用Idea搭建全注解式开发的SpringMVC项目

怎么使用Idea搭建全注解式开发的SpringMVC项目

我们添加框架支持的时候就会创建一个相关的工件

3. 示例

pom.xml文件中引入相关依赖

<!-- 添加springmvc依赖 --><dependency>  <groupId>org.springframework</groupId>  <artifactId>spring-webmvc</artifactId>  <version>5.3.18</version></dependency><!-- 添加servlet 依赖 --><dependency>  <groupId>javax.servlet</groupId>  <artifactId>javax.servlet-api</artifactId>  <version>4.0.1</version>  <scope>provided</scope></dependency>

创建Controller

Controller包下创建UserController.java文件, 复制下面代码到该文件中

package org.example.Controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controller    public class UserController {        @RequestMapping("/save")        @ResponseBody        public String index() {            return "index";        }    }

创建Config

Config包下创建一个专用于SpringMVC的配置类-----SpringMvcConfig

该配置类将@ComponentScan注解只用于扫描Controller

为什么要有SpringMVC专门的配置类, 就是为了bean管理起来更清晰
就是将controller层放在springmvc容器中管理, 其他如service层放在父容器Spring中管理

@Configuration@ComponentScan("org.example.Controller")//扫描Controller包public class SpringMvcConfig {}

Config包下创建Tomcat启动类SpringMvcInit

  • 该类要继承AbstractDispatcherServletInitializer

    • AbstractDispatcherServletInitializer类:用于Tomcat启动

package org.example.Config;import org.example.Config.SpringMvcConfig;import org.springframework.web.context.WebApplicationContext;import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;import org.springframework.web.servlet.support.AbstractDispatcherServletInitializer;//定义一个servelt容器启动的配置类,用于加载spring的配置类public class SpringMvcInit  extends AbstractDispatcherServletInitializer {    //1. 将controller层放在springmvc容器中,其他如service层放在父容器,bean管理起来更清晰    //2. 也可以没有父容器,将所有bean都放在springmvc容器中    @Override    //加载springMVC容器的配置类    protected WebApplicationContext createServletApplicationContext() {        //创建SpringMVC容器        AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();        //加载配置类--SpringMvcConfig        ctx.reGISter(SprinGConfig.class);        return ctx;    }    @Override    //配置哪些请求要被拦截,归属SpringMVC处理    // /: 拦截所有请求    protected String[] getServletMappings() {        return new String[]{"/"};    }    @Override    //加载Spring容器的配置类    protected WebApplicationContext createRootApplicationContext() {        return null;    }}

该类要继承`AbstractAnnotationConfigDispatcherServletInitializer`类, 用于简化开发

public class SpringMvcInit  extends AbstractAnnotationConfigDispatcherServletInitializer {    //1. 将controller层放在springmvc容器中,其他如service层放在父容器,bean管理起来更清晰    //2. 也可以没有父容器,将所有bean都放在springmvc容器中    // === 上面的createRootApplicationContext()做的事    //用来加载  springmvc容器的父容器spring的配置类    @Override    protected Class<?>[] getRootConfigClasses() {        return new Class[0];    }    //加载springMVC的配置类    //=== 上面的createServletApplicationContext()做的事    @Override    protected Class<?>[] getServletConfigClasses() {        return new Class[]{SpringConfig.class};    }    //配置哪些请求要被拦截,归属SpringMVC处理    // /: 拦截所有请求    @Override    protected String[] getServletMappings() {        return new String[]{"/"};    }}

以上就是关于“怎么使用Idea搭建全注解式开发的SpringMVC项目”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网精选频道。

--结束END--

本文标题: 怎么使用Idea搭建全注解式开发的SpringMVC项目

本文链接: https://lsjlt.com/news/353175.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么使用Idea搭建全注解式开发的SpringMVC项目
    这篇“怎么使用Idea搭建全注解式开发的SpringMVC项目”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用Idea...
    99+
    2023-07-05
  • 如何使用Idea搭建全注解式开发的SpringMVC项目
    目录1. 创建项目2. 配置Tomcat3. 示例1. 创建项目 1.打开Idea,并点击新建项目 注:使用的是2022.2的商业版,该版本跟2021.2的商业版创建Maven项目不...
    99+
    2023-03-24
    idea搭建SpringMVC项目 idea注解式开发SpringMVC项目
  • 微信开发中如何使用springmvc 搭建一个mybatis项目
    本篇文章为大家展示了微信开发中如何使用springmvc 搭建一个mybatis项目,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。①在建立好的maven项目中的pom.xml文件引入依赖,代码如下:...
    99+
    2023-05-31
    springmvc mybatis
  • 怎么利用springmvc与maven搭建一个web项目
    本篇文章为大家展示了怎么利用springmvc与maven搭建一个web项目,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。具体内容如下创建一个maven project 为spring1进行项目的配...
    99+
    2023-05-31
    springmvc maven web
  • 使用Maven搭建SpringMVC项目的步骤(图文教程)
    约定电脑都安装了eclipse,且已配置好Maven以及eclipse插件。  1.Eclipse  2.maven  3.Eclipse 需要安装maven插件。url:maven - http://download.eclipse.or...
    99+
    2023-05-31
    maven springmvc
  • 怎么用Docker搭建Laravel和Vue项目的开发环境
    本篇内容主要讲解“怎么用Docker搭建Laravel和Vue项目的开发环境”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Docker搭建Laravel和...
    99+
    2024-04-02
  • 怎么使用IDEA新建一个普通的Javaweb项目
    这篇文章给大家分享的是有关怎么使用IDEA新建一个普通的Javaweb项目的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。如今使用IDEA一般都是创建springBoot程序,今天说说创建普通JavaWeb项目的方...
    99+
    2023-06-15
  • 怎么使用webpack手动搭建vue项目
    这篇文章主要讲解了“怎么使用webpack手动搭建vue项目”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用webpack手动搭建vue项目”吧!一、前提条件在开始以下步骤之前需先安装...
    99+
    2023-07-05
  • springmvc项目使用@Valid+BindingResult遇到的问题怎么解决
    本篇内容介绍了“springmvc项目使用@Valid+BindingResult遇到的问题怎么解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有...
    99+
    2023-06-21
  • 使用 vue-cli怎么搭建一个vue项目
    使用 vue-cli怎么搭建一个vue项目,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 一、 安装 node.js首先需要安装no...
    99+
    2024-04-02
  • 怎么使用vite+vue3.0+ts+element-plus搭建项目
    这篇文章主要介绍“怎么使用vite+vue3.0+ts+element-plus搭建项目”,在日常操作中,相信很多人在怎么使用vite+vue3.0+ts+element-plus搭建项目问题上存在疑惑,小编查阅了各式资料,整理出简单好用的...
    99+
    2023-07-04
  • 使用IDEA创建Web项目并发布到tomcat的操作方法
    目录Web开发1.web开发概述Tomcat安装配置安装Tomcat2.web开发环境搭建3.创建发布web项目Web开发 1.web开发概述 •学习web开发,需要先安...
    99+
    2024-04-02
  • 怎么使用Docker组件开发Django项目
    本篇内容主要讲解“怎么使用Docker组件开发Django项目”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Docker组件开发Django项目”吧!Docker 是一个开源的应用容器引...
    99+
    2023-06-19
  • 使用JAVA怎么快速搭建一个springboot项目
    今天就跟大家聊聊有关使用JAVA怎么快速搭建一个springboot项目,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。安装JDK使用的是jdk8,这里使用的是windows10 64...
    99+
    2023-06-06
  • MyBatis注解式开发映射语句怎么使用
    今天小编给大家分享一下MyBatis注解式开发映射语句怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。前言MyBati...
    99+
    2023-07-05
  • 在Java项目中怎么使用@Annotation注解
    本篇文章给大家分享的是有关在Java项目中怎么使用@Annotation注解,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Java注解是在JDK5时引入的新特性,鉴于目前大部分...
    99+
    2023-05-31
    java @annotation 注解
  • 使用IDEA搭建Hadoop开发环境的操作步骤(Window10为例)
    下载安装Hadoop 下载安装包 进入官网下载下载hadoop的安装包(二进制文件)http://hadoop.apache.org/releases.html 我们这里下载2....
    99+
    2024-04-02
  • Python怎么使用Web框架Flask开发项目
    本篇内容主要讲解“Python怎么使用Web框架Flask开发项目”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python怎么使用Web框架Flask开发项目”吧!一、简介Flask是一个轻量...
    99+
    2023-07-06
  • SpringBoot项目中怎么使用Swagger2及注解解释
    本文小编为大家详细介绍“SpringBoot项目中怎么使用Swagger2及注解解释”,内容详细,步骤清晰,细节处理妥当,希望这篇“SpringBoot项目中怎么使用Swagger2及注解解释”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢...
    99+
    2023-07-05
  • 本地使用Docker搭建go开发环境的全过程
    目录前言安装1.docker安装2.go安装3.配置4.运行5.完成总结前言 对于我这种小白来说,本地环境搭建常规的操作一向是直接去go官网下载go安装包,本机进行安装,然后配置相应...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作