精华内容
下载资源
问答
  • 2020-08-12 17:24:50

    演示通过Eclipse创建SpringMVC工程的基本过程并编写一个最简单的SpringMVC项目。

    1. 创建一个Web项目

    在这里插入图片描述

    填写项目名称之后一路点击Next,然后勾选创建 web.xml。最后点Finish,完成工程的创建。
    在这里插入图片描述
    创建之后,工程结构如下图所示:
    在这里插入图片描述

    2. 为 Web 工程添加 SpringMVC 的相关类库

    将 spring-framework 中 libs 目录下的 JAR 类库复制到 Web 工程 WEB-INF/lib 目录下。复制时只需要复制XXX.RELEASE.jar 的文件。

    由于 SpringMVC 依赖于 Apache Commons Logging 组件,所以还需要复制 commons-logging-1.2.jar 文件。

    3.在 web.xml 文件中部署 DispatcherServlet

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0">
      <display-name>FirstSpringMVC</display-name>
      <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
      </welcome-file-list>
      
      <!-- 部署 DispatcherServlet -->
      <servlet>
      	<servlet-name>springmvc</servlet-name>
      	<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
      	<load-on-startup>1</load-on-startup>
      </servlet>
      <servlet-mapping>
      	<servlet-name>springmvc</servlet-name>
      	<url-pattern>/</url-pattern>
      </servlet-mapping>
    </web-app>
    

    上述 DispatcherServlet 的 servlet 对象初始化的时候,将在工程的 WEB-INF 目录下查找一个配置文件,这个配置文件的命名规则是“servletName-servlet.xml”,如上面的配置中使用的是springmvc,那么配置文件的名称应该是springmvc-servlet.xml

    另外,也可以将 SpringMVC 的配置文件存放到工程目录中的任何地方,不过此时需要使用 servlet 的 init-param 元素加载配置文件。示例代码如下:

    <!-- 部署 DispatcherServlet -->
    <servlet>
        <servlet-name>springmvc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
        	<param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/spring-config/springmvc-servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>springmvc</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
    

    4. 创建 SpringMVC 的配置文件

    跟随上一步,在合适的位置创建 springmvc-servlet.xml 文件。在这个文件中声明与 SpringMVC 应用相关的配置。配置内容包含但是不限于以下内容:

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xmlns:p="http://www.springframework.org/schema/p"
    	xmlns:context="http://www,springframework.org/schema/context"
    	xmlns:mvc="http://www.springframework.org/schema/mvc"
    	xsi:schemaLocation="http://www.springframework.org/schema/beans
    	http://www.springframework.org/schema/beans/spring-beans.xsd
    	http://www.springframework.org/schema/context
    	http://www.springframework.org/schema/context/spring-context.xsd
    	http://www.springframework.org/schema/mvc
    	http://www.springframework.org/schema/spring-mvc.xsd">
     	
        <!-- 请求与控制器的映射 -->
    	<bean name="/login" class="controller.LoginController" />
    	<bean name="/register" class="controller.RegisterController" />
     
    </beans>
    

    通过上面的步骤已经完成了 SpringMVC 项目的基本配置,可以基于上面的配置进行应用程序的开发。
    实现一个简单的,没有数据传输的页面跳转功能,虽然HTML本身就可以实现无数据传输的页面跳转,但是现在为了梳理SpringMVC的运行逻辑,将通过后台进行页面跳转。
    创建三个JSP页面,分别是首页、注册页面和登录页面。在首页通过不同的链接跳转到注册或者登录页面。
    由于只是为了演示跳转,登录和注册页面十分简单。

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>登录页面</title>
    </head>
    <body>
    这里是登录页面
    </body>
    </html>
    
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>注册页面</title>
    </head>
    <body>
    这里是注册页面
    </body>
    </html>
    

    index.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>首页</title>
    </head>
    <body>
    没有注册的用户请<a href="register">前往注册</a><br>
    已经注册的用户请<a href="login">前往登录</a>
    </body>
    </html>			
    

    <a>链接的href属性内容并不是注册和登录页面的物理路径,而是请求名称。


    SpringMVC工作流程的第一步是:客户端请求提交到DispatcherServlet。这一步是通过创建工程第三步中的 web.xml 配置文件中的内容实现的。xml文件中 servlet-mapping 的 url-pattern 配置了一个/,表示处理所有请求。所以,通过页面链接的请求都会经过这个配置,然后指向DispatcherServlet
    工作流程的第二步是:由DispatcherServlet控制器寻找一个或者多个HandlerMapping(处理器映射器)。找到处理请求的Controller。这一步是通过 springmvc-servlet.xml 配置文件的内容实现的。通过 name 属性对应的 class 值找到处理对应请求的 Controller,class 的内容是 Controller 类的全限定名。
    工作流程的第三步是:DispatcherServlet将请求提交到 Controller。Controller 接收到请求之后,将调用业务层进行逻辑业务的处理。以 LoginController 和 RegisterController 为例:

    package controller;
    
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import org.springframework.web.servlet.ModelAndView;
    import org.springframework.web.servlet.mvc.Controller;
    
    /**
    * @ClassName: LoginController
    * @Description: 
    * @Author: coder
    * @Date: 2020年4月15日
    */
    public class LoginController implements Controller {
    	/* (non-Javadoc)
    	* <p>Title: handleRequest</p>
    	* <p>Description: </p>
    	* @param arg0
    	* @param arg1
    	* @return
    	* @throws Exception
    	* @see org.springframework.web.servlet.mvc.Controller#handleRequest(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
    	*/
    	@Override
    	public ModelAndView handleRequest(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception {
    		// TODO Auto-generated method stub
    		return new ModelAndView("/WEB-INF/jsp/login.jsp");
    	}
    }
    
    package controller;
    
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import org.springframework.web.servlet.ModelAndView;
    import org.springframework.web.servlet.mvc.Controller;
    
    /**
    * @ClassName: RegisterController
    * @Description: 
    * @Author: coder
    * @Date: 2020年4月15日
    */
    public class RegisterController implements Controller {
    	/* (non-Javadoc)
    	* <p>Title: handleRequest</p>
    	* <p>Description: </p>
    	* @param arg0
    	* @param arg1
    	* @return
    	* @throws Exception
    	* @see org.springframework.web.servlet.mvc.Controller#handleRequest(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
    	*/
    	@Override
    	public ModelAndView handleRequest(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception {
    		// TODO Auto-generated method stub
    		return new ModelAndView("/WEB-INF/jsp/register.jsp");
    	}
    }
    

    由于没有业务逻辑需要处理,Controller直接返回了 ModelAndView 。返回 ModelAndView 正是工作流程的第四步。工作流程的第四步是:Controller 调用业务逻辑处理后,返回 ModelAndView
    工作流程的第五步是:DispatcherServlet 寻找一个或者多个 ViewResolver(视图解析器),找到ModelAndView 对应的视图。这一步的完成依赖于***视图解析器***。
    视图解析器可以为自动添加前缀和后缀。需要在 springmvc-servlet.xml 中进行配置。配置方法如下所示:

    <!-- 视图解析器 -->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="internalResourceViewResolver">
        <!-- 前缀 -->
        <property name="prefix" value="/WEB-INF/jsp/" />
        <!-- 后缀 -->
        <property name="suffix" value=".jsp" />
    </bean>
    

    工作流程的第六步,也是最后一步:视图负责将结果显示到客户端


    综上所述:
    使用 Eclipse 创建一个单纯的 SpringMVC 项目的时候,第一步是创建一个空的动态web项目,第二步是将 springmvc 的 jar 包复制到项目的 WEB-INF/lib 中。第三步是在 web.xml 中部署 DispatcherServlet。第四步根据第三步在合适的位置创建 xxx-servlet.xml 的配置文件,用来注册 Controller、配置视图解析器等。然后就是编写代码了。
    编码的时候,自己的 Controller 需要实现 org.springframework.web.servlet.mvc.Controller接口并实现其中的handleRequest方法。该方法的返回值类型是ModelAndView,方法需要两个参数,分别是HttpServletRequestHttpServletResponse。创建了新的 Controller 之后需要在 xxx-servlet.xml 文件中注册这个 Controller,以便让这个 Controller 能被 DispatcherServlet 找到。

    更多相关内容
  • SpringMVC项目

    2017-01-17 16:04:11
    SpringMVC5.0M3; MySQL; log4j2; 注解; 事务;
  • 包含了所有需要的jar包,不需要下载。Eclipse JavaEE IDE+Tomcat7+Jdk1.7就可运行
  • 最近需要开发一个springMVC项目,所有的配置文件太多,都需要自己一个一个写,今天花了很多时间搭建了一个空的项目,进行了日志、数据库等的基本配置,日志用的是Slf4j,数据库用的时候阿里的druid,直接可以在...
  • SpringBoot整合SpringMVC项目源代码IDEA
  • 在工作当中,我们有时需要创建一个全新的工程,而基于spring-mvc web的工程较为常见,这篇文章主要介绍了IntelliJ IDEA maven 构建简单springmvc项目(图文教程),感兴趣的小伙伴们可以参考一下
  • IDEA用maven创建springMVC项目和配置(XML配置和Java配置)
  • Springmvc项目

    2017-12-25 11:22:30
    springmvc项目;连接数据库;实现Restful风格;CRUD;事务;
  • springmvc项目

    2019-02-28 18:21:14
    springmvc项目
  • SpringMvc项目实例

    2017-12-06 13:46:25
    这段时间在学习javaweb的一些知识,然后接触到了springmvc框架。框架的创建和配置一直是新手入门的一个难题,所以我就写一下我的配置过程,以供参考,另外因为spring4的新特性可以用java来配置,网上相关资料较少,...
  • SpringMVC项目搭建

    2021-05-31 14:53:11
    退出当前项目: 将pom.xml文件改为如下: <?xml version="1.0" encoding="UTF-8"?> <project xmlns=...


    SpringMVC项目搭建

    IDEA版本:2021.1 (各个版本的操作步骤大致一样)


    1. 新建一个空项目,在项目下创建一个web模块

    退出当前项目:

    在这里插入图片描述

    在这里插入图片描述

    选择创建一个空项目:
    在这里插入图片描述

    选择项目名称和项目位置:
    在这里插入图片描述

    空项目建完后,我们选择从模板中创建一个模块:
    在这里插入图片描述

    配置模块的一些信息:
    在这里插入图片描述

    在这里插入图片描述

    将模块中缺少的java和resources目录补齐:
    在这里插入图片描述

    在这里插入图片描述



    2. 配置依赖

    将pom.xml文件改为如下:

    <?xml version="1.0" encoding="UTF-8"?>
    
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
    
      <groupId>org.jxd</groupId>
      <artifactId>Springmvc_helloworld</artifactId>
      <version>1.0-SNAPSHOT</version>
      <packaging>war</packaging>
    
      <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
      </properties>
    
      <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.11</version>
          <scope>test</scope>
        </dependency>
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-context</artifactId>
          <version>5.2.0.RELEASE</version>
        </dependency>
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-web</artifactId>
          <version>5.2.0.RELEASE</version>
        </dependency>
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-webmvc</artifactId>
          <version>5.2.0.RELEASE</version>
        </dependency>
        <dependency>
          <groupId>javax.servlet</groupId>
          <artifactId>servlet-api</artifactId>
          <version>2.5</version>
          <scope>provided</scope>
        </dependency>
        <dependency>
          <groupId>javax.servlet.jsp</groupId>
          <artifactId>jsp-api</artifactId>
          <version>2.2.1-b03</version>
          <scope>provided</scope>
        </dependency>
      </dependencies>
    
    </project>
    


    3. 更改web.xml使用的版本

    由于默认的web.xml的版本比较低,我们需要自己新建一个。

    选择“ Project Structure ”:
    在这里插入图片描述

    将原来的web.xml删除掉:
    在这里插入图片描述

    在这里插入图片描述

    新建一个web.xml的替代文件,名字不要和web.xml一样:
    在这里插入图片描述

    将我们刚刚创建的用来替代web.xml文件的文件改名为web.xml
    在这里插入图片描述

    在这里插入图片描述



    4. 配置web.xml文件

    在web.xml文件中做如下配置:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
             version="4.0">
    
        <!-- 前端拦截控制器 -->
        <servlet>
            <servlet-name>springDispatcherServlet</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>classpath:springmvc.xml</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
        
        <servlet-mapping>
            <servlet-name>springDispatcherServlet</servlet-name>
            <url-pattern>/</url-pattern>
            <!-- /和/*都是拦截所有请求,/*的范围更大,会拦截jsp文件 -->
        </servlet-mapping>
    
    
    </web-app>
    

    在这里插入图片描述



    5. 创建springmvc的配置文件

    在这里插入图片描述

    在这里插入图片描述



    6. 编写要跳转到的目标网页

    在WEB-INF下新建一个pages目录,在这个目录下新建一个名为success.jsp文件,这个文件就是我们要跳转到的目标网页:

    在这里插入图片描述



    7. 编写springmvc的控制层

    先在java目录下创建一个用来存放springMVC的所有控制层的java代码的包com.jxd.controller:
    在这里插入图片描述

    在这里插入图片描述

    在我们创建好的com.jxd.controller包下创建一个MyFirstController类:
    在这里插入图片描述

    在这个类中创建一个名为helloWorld方法,该方法用来处理helloWorld请求,接收到helloWorld请求后,再控制台打印信息,并跳转到success.jsp:
    在这里插入图片描述



    8. 配置组件扫描

    在Springmvc.xml文件中配置组件扫描路径:
    在这里插入图片描述



    9. 添加Tomcat服务

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述



    10. 启动Tomcat服务

    添加好Tomcat服务后,就可以启动服务来测试了:
    在这里插入图片描述

    服务启动后,自动来到index.jsp页面,如果有"Hello World!"字样,说明项目正常,页面内容如下:
    在这里插入图片描述



    11. 添加链接来测试请求处理

    将原来的index.jsp文件删除,新建一个index.jsp文件:
    在这里插入图片描述

    启动后默认来到index.jsp,点击链接测试helloWorld请求是否能被正确处理:
    在这里插入图片描述

    点击链接后跳转到success页面:
    在这里插入图片描述

    且控制台也打印了提示信息:
    在这里插入图片描述



    好了,上面就是一个简单的Springmvc项目的hello world教程了,感谢你的阅读!

    展开全文
  • SpringMVC项目模版,用于快速开始一个SpringMVC的项目 使用 Eclipse需要安装maven插件,现在最新的eclipse都预装了maven的插件了 把项目import进来, 然后项目会下载各种依赖的jar包 右击pom.xml -> Run As -> Maven...
  • MAVEN搭建的springmvc项目 引用阿里共有库的资源,个人测试
  • springMVC项目

    2015-07-24 17:13:41
    springMVC项目,简单明了.保证你看的懂,有添加、修改、删除、登录等功能。(如果是oracle数据库的话,就只要改下配置文件就OK了,表都不用建。)
  • SpringMvc项目配置实例

    2017-12-06 13:43:46
    SpringMVC项目配置的Demo 分两种方式 框架的创建和配置一直是新手入门的一个难题,所以我就写一下我的配置过程,以供参考 另外spring4的新特性可以用java来配置
  • 主要介绍了在IDEA中搭建最小可用SpringMVC项目(纯Java配置),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 创建SpringMvc项目流程--史上最详细步骤教程

    千次阅读 多人点赞 2021-01-30 00:20:41
    创建SpringMvc项目流程 写在前面: 要创建一个SpringMVC项目,首先博主使用的工具是STS,使用eclipse也是和STS非常相似的哈,推荐使用STS

    创建SpringMvc项目流程--史上最详实步骤教程

    写在前面:
    要创建一个SpringMVC项目,首先博主使用的工具是STS,使用eclipse也是和STS非常相似的哈,推荐使用STS。在这里我使用的是mac环境,但是具体的软件操作是一样的,不需要担心,耐心按照步骤去做就不会出错的。

    关于SpringMVC的相关知识可以查看:
    详解SpringMVC
    在这里我们就不过多赘述了,直接放干货。

    1. 创建一个Maven项目

    在空白处点击右键,new --> other --> Maven project
    输入存储路径,最后一层是项目文件名;选中如图第一种创建方式
    在这里插入图片描述

    点击next之后,分组选根据自己需要输入,Artifact id需要和上一层写的名字相同,选择jar是创建JavaSE项目,war是创建JavaEE项目,pom是创建总体的文件,还需要在里面继续创建Maven module,Maven module是war包的,我们可以直接创建war包的,当项目模块很多是选择pom

    在这里插入图片描述

    finish之后,项目就出来了,但是看到报错了,不要慌
    在这里插入图片描述

    错误原因是我们缺少一个配置文件,解决方法是在项目名上右键,Java EE Tools --> 第二项
    在这里插入图片描述

    之后就可以看到报错消失了,并且发现在webapp下多出了一个web.xml文件,这个文件很重要!!!
    在这里插入图片描述

    接下来我们连接tomcat,首先你需要有tomcat哈,如果没有可以去往:
    tomcat官网 http://tomcat.apache.org
    下载tomcat即可,很小下载很快。
    在工具栏中找到performance,左侧选择Perject Facets --> 选中如图中间红框 --> 版本选择到3.1 --> 右边勾选上你的tomcat
    在这里插入图片描述

    到这里创建一个项目的模型就完成了,接下来我们开始正式布置我们的内容。

    2. 编辑配置文件

    首先我们打开这个项目的pom.xml文件
    在这里插入图片描述

    打开如果看不见内容代码,只需要切换展示模块,如图,选到pom
    在这里插入图片描述

    在这里我们需要做的事情是在这份配置文件当中写入依赖,可以配置到我们所需要的帮助文件,平时是通过导入jar包完成的,现在需要通过写依赖来完成。常用的依赖可以在:
    ----> 常用maven依赖总结
    中查看,在这里我直接将我的代码展示出来:
    在这里插入图片描述

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <parent>
        <groupId>spring-demo</groupId>
        <artifactId>springdemo</artifactId>
        <version>0.0.1-SNAPSHOT</version>
      </parent>
      <artifactId>spring-example</artifactId>
      <packaging>war</packaging>
      
        <properties>
    		<project.spring.version>5.2.12.RELEASE</project.spring.version>
    		<project.lombok.version>1.18.16</project.lombok.version>
    		<project.junit.version>4.12</project.junit.version>
    	</properties>
      
      	<dependencies>
    	
    		<dependency>
    			<groupId>org.projectlombok</groupId>
    			<artifactId>lombok</artifactId>
    			<version>${project.lombok.version}</version>
    		</dependency>
    		
    		<dependency>
    			<groupId>junit</groupId>
    			<artifactId>junit</artifactId>
    			<version>${project.junit.version}</version>
    		</dependency>
    		
    		<dependency>
    			<groupId>org.springframework</groupId>
    			<artifactId>spring-context</artifactId>
    			<version>${project.spring.version}</version>
    		</dependency>
    		
    		<dependency>
    			<groupId>org.springframework</groupId>
    			<artifactId>spring-webmvc</artifactId>
    			<version>5.2.12.RELEASE</version>
    		</dependency>
    		<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
    		<dependency>
    			<groupId>com.fasterxml.jackson.core</groupId>
    			<artifactId>jackson-databind</artifactId>
    			<version>2.12.1</version>
    		</dependency>
    
    	</dependencies>
    </project>
    

    写好之后可以在,Maven dependence 中查看到:
    在这里插入图片描述

    接下来我们需要在src/main/resource中创建spring/mvc/spring-mvc.xml(文件结构在下一张图) , 我们要在这里配置servlet,建议xml文件命名为springmvc-Servlet.xml , 这里是博主大意了,后面的项目我都改过来了。
    创建过程是,在mvc文件夹上右键,搜索spring,选择如图选项

    在这里插入图片描述

    我们将前端界面放到webapp下,static/**.html , 根据你的页面设置名字哈,页面代码我会在后面放出来。

    在这里插入图片描述

    在刚创建的Servlet的xml文件中,我们首先需要选中下方模块,在其中勾选上如图内容
    在这里插入图片描述

    接下来点击 Source模块,编辑内容,如下:
    在这里插入图片描述

    代码:

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xmlns:context="http://www.springframework.org/schema/context"
    	xmlns:mvc="http://www.springframework.org/schema/mvc"
    	xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd
    		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
    		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">
    
    
    <context:component-scan base-package="com.dyit" ></context:component-scan>
    <!-- 基于注解的驱动 -->
    <mvc:annotation-driven />
    <!-- location="static/" 指的具体的本地的地方 mapping="static/**" 指的是映射的网页地址的 -->
    <mvc:resources location="static/" mapping="static/**"></mvc:resources>
    
    </beans>
    

    配置完servlet,接下来我们打开web.xml文件,首先是修改版本号为3.1 , 接着我们在这里配置一下刚刚写好的servlet的拦截请求相关配置,并且我写了一个字符编码拦截器(<fileter>),这个拦截器可以处理中文乱码问题,复用率非常高之后我们每个项目可能都需要。
    在这里插入图片描述

    代码:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xmlns="http://java.sun.com/xml/ns/javaee"
    	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_1.xsd"
    	version="3.1">
    	<display-name>spring-example</display-name>
    	<filter>
    		<filter-name>charset</filter-name>
    		<filter-class >org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    		<init-param>
    			<param-name>encoding</param-name>
    			<param-value>UTF-8</param-value>
    		</init-param>
    	</filter>
    	<filter-mapping>
    		<filter-name>charset</filter-name>
    		<url-pattern >/*</url-pattern>
    	</filter-mapping>
    
    	<servlet>
    		<servlet-name>springDispatcherServlet</servlet-name>
    		<servlet-class>org.springframework.web.servlet.DispatcherServlet
    		</servlet-class>
    		<init-param>
    			<param-name>contextConfigLocation</param-name>
    			<param-value>classpath:spring/mvc/spring-*.xml</param-value>
    		</init-param>
    		<load-on-startup>1</load-on-startup>
    	</servlet>
    	<!-- Map all requests to the DispatcherServlet for handling -->
    	<servlet-mapping>
    		<servlet-name>springDispatcherServlet</servlet-name>
    		<url-pattern>*.action</url-pattern>
    	</servlet-mapping>
    </web-app>
    

    到这里我们配置文件部分就完成了,接下来来写具体的java代码,实现一个简单的登录功能。

    3. 编写Java代码

    首先展示一下我们的包结构:

    在这里插入图片描述

    1. 编写实体类:User
      这里写了lombok的注解 ,
      在这里插入图片描述

    代码:

    package com.dyit.spring.entity;
    
    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    
    @AllArgsConstructor
    @Data
    @NoArgsConstructor
    public class User {
    	private String username;
    	private String password;
    	
    
    }
    
    1. dto传输层:HttpResp
      在这里插入图片描述
    package com.dyit.spring.dto;
    
    import java.util.Date;
    
    import com.fasterxml.jackson.annotation.JsonFormat;
    
    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    @NoArgsConstructor
    @AllArgsConstructor
    @Data
    public class HttpResp {
    	private int code;
    	private String msgString;
    	private Object results;
    	@JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss",timezone="GMT+8")
    	private Date date;
    
    }
    
    1. Service层:UserService
      在这里插入图片描述
    package com.dyit.spring.service;
    
    import com.dyit.spring.entity.User;
    
    public interface IUserService {
    	void addUser(User user);
    }
    
    
    package com.dyit.spring.service;
    
    import org.springframework.stereotype.Service;
    
    import com.dyit.spring.entity.User;
    @Service
    public class UserServiceImpl implements IUserService {
    
    	@Override
    	public void addUser(User user) {
    		System.out.println("add"+user.getUsername());
    		System.out.println("add"+user.getPassword());
    	}
    
    }
    
    1. 接下来是最重要的Controller层 :Controller
      在这里插入图片描述
    package com.dyit.spring.controller;
    import java.util.Date;
    
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.ResponseBody;
    
    import com.dyit.spring.dto.HttpResp;
    import com.dyit.spring.entity.User;
    import com.dyit.spring.service.IUserService;
    
    //这里应该是@Controller  由于博主电脑不知名原因只能写成带包的,大家不用这样写
    @org.springframework.stereotype.Controller
    public class Controller {
    	@Autowired
    	private IUserService iUserService;
    	@RequestMapping("/regist.action")
    	public String regist(User user) {
    		iUserService .addUser(user);
    		System.out.println("regist:"+user);
    		return "redirect:static/regist.html";	
    	}
    	/**
    	 * @ResponseBody注解就会被扫描到,把此注解下的内容变成json
    	 * @return
    	 */
    	@RequestMapping("/findAll.action")
    	@ResponseBody
    	public HttpResp  findAll() {
    		return new HttpResp(2001,"查询成功",new User("anmin","123"),new Date());
    	}
    }
    
    
    1. 页面:register.html
      在这里插入图片描述

    Java代码部分也编写完成啦,最后一步是测试结果了!

    4. 测试结果

    我们需要从页面上开始运行,之后浏览器启动可以看到:
    在这里插入图片描述

    我们输入一组测试数据,点击提交,又回到了登录界面,但是数据不见了,说明数据已经正常传到后台去了,因为我们设置的重定向路径还是regist.html。

    在这里插入图片描述

    查看后台结果,可以看到,我们的数据确实是正常的传回来了,对应我们的service层和controller层方法,都没有问题。并且中文也没有出现乱码,说明我们的编码拦截器也生效了。
    至此一个完整的SpringMVC项目就搭建完成了,并且实现了前后台的交互功能,复杂的项目也只需要将功能完整一下就可以了。整理不易,期待你的一键三连哦~(手动狗头)

    展开全文
  • springMVC项目配置

    千次阅读 2021-02-23 11:44:42
    springMVC项目配置 文章目录1 springMVC配置1.1 创建Maven webapp项目1.2 导入依赖和插件,补齐文件目录1.3 配置springmvc.xml1.3.1 配置注解驱动1.3.2 配置包扫描1.3.3 配置内部资源视图解析器1.3.4 完整的...
    springMVC项目配置


    提示:以下是本篇文章正文内容,下面案例可供参考

    1 springMVC配置

    1.1 创建Maven webapp项目

    在这里插入图片描述

    1.2 导入依赖和插件,补齐文件目录

    在pom.xml内导入spring-webmvc、junit依赖和tomcat插件

    <?xml version="1.0" encoding="UTF-8"?>
    
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
    
      <groupId>org.example</groupId>
      <artifactId>springmvc20210223</artifactId>
      <version>1.0-SNAPSHOT</version>
      <packaging>war</packaging>
    
      <name>springmvc20210223 Maven Webapp</name>
      <!-- FIXME change it to the project's website -->
      <url>http://www.example.com</url>
    
      <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.7</maven.compiler.source>
        <maven.compiler.target>1.7</maven.compiler.target>
      </properties>
    
      <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.11</version>
          <scope>test</scope>
        </dependency>
        <!--导入spring框架包,包含spring框架和springMVC框架-->
        <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-webmvc</artifactId>
          <version>4.3.11.RELEASE</version>
        </dependency>
      </dependencies>
    
      <build>
        <finalName>springmvc20210223</finalName>
        <!--<pluginManagement>--><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
          <plugins>
            <!-- 导入tomcat插件-->
            <plugin>
              <groupId>org.apache.tomcat.maven</groupId>
              <artifactId>tomcat7-maven-plugin</artifactId>
              <version>2.2</version>
              <configuration>
                <port>8066</port>
                <path>/</path>
              </configuration>
            </plugin>
            <!--<plugin>
              <artifactId>maven-clean-plugin</artifactId>
              <version>3.1.0</version>
            </plugin>
            &lt;!&ndash; see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging &ndash;&gt;
            <plugin>
              <artifactId>maven-resources-plugin</artifactId>
              <version>3.0.2</version>
            </plugin>
            <plugin>
              <artifactId>maven-compiler-plugin</artifactId>
              <version>3.8.0</version>
            </plugin>
            <plugin>
              <artifactId>maven-surefire-plugin</artifactId>
              <version>2.22.1</version>
            </plugin>
            <plugin>
              <artifactId>maven-war-plugin</artifactId>
              <version>3.2.2</version>
            </plugin>
            <plugin>
              <artifactId>maven-install-plugin</artifactId>
              <version>2.5.2</version>
            </plugin>
            <plugin>
              <artifactId>maven-deploy-plugin</artifactId>
              <version>2.8.2</version>
            </plugin>-->
          </plugins>
        <!--</pluginManagement>-->
      </build>
    </project>
    
    

    补齐文件目录
    在这里插入图片描述

    1.3 配置springmvc.xml

    resources目录内新建springmvc.xml

    1.3.1 配置注解驱动

    springmvc.xml的beans的标签内配置

    <!-- 1、配置注解驱动:识别注解标志
        spring提供的注解比如@Component @Service @Controller @Repository
        在SpringMVC中能够将带有该注解的类扫描给Spring容器进行管理
        但是要想SpringMVC实现更加完成的功能,SpringMVC又封装自身的注解比如@RequestMapping @GetMapping .....
        -->
        <mvc:annotation-driven></mvc:annotation-driven>
    

    1.3.2 配置包扫描

    java内新建包 com.qst.controller
    在这里插入图片描述
    springmvc.xml的beans的标签内配置

    <!-- 2、配置包扫描
        将带有@Component @Service @Controller @Repository这些注解的类交给Spring容器进行管理
            base-package:基于哪个包进行扫描,扫描根包所有子包都会被扫描
        -->
        <context:component-scan
                base-package="com.qst"></context:component-scan>
    

    1.3.3 配置内部资源视图解析器

    WEB-INF目录下新建 jsp 目录 新建 login.jsp
    在这里插入图片描述
    springmvc.xml的beans的标签内配置

    <!-- 3、内部资源视图解析器
            最终实现把页面的正确路径进行拼接
            /WEB-INF/jsp/   login(返回的视图名)   .jsp
        -->
        <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            <property name="prefix" value="/WEB-INF/jsp/"></property>
            <property name="suffix" value=".jsp"></property>
        </bean>
             
    

    1.3.4 完整的springmvc.xml文件

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:mvc="http://www.springframework.org/schema/mvc"
           xmlns:context="http://www.springframework.org/schema/context"
           xsi:schemaLocation="http://www.springframework.org/schema/mvc
    						http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
    						http://www.springframework.org/schema/beans
    						http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
    						http://www.springframework.org/schema/context
              				http://www.springframework.org/schema/context/spring-context-4.0.xsd">
    
    
        <!-- 1、配置注解驱动:识别注解标志
        spring提供的注解比如@Component @Service @Controller @Repository
        在SpringMVC中能够将带有该注解的类扫描给Spring容器进行管理
        但是要想SpringMVC实现更加完成的功能,SpringMVC又封装自身的注解比如@RequestMapping @GetMapping .....
        -->
        <mvc:annotation-driven></mvc:annotation-driven>
    
        <!-- 2、配置包扫描
        将带有@Component @Service @Controller @Repository这些注解的类交给Spring容器进行管理
            base-package:基于哪个包进行扫描,扫描根包所有子包都会被扫描
        -->
        <context:component-scan
                base-package="com.qst"></context:component-scan>
    
        <!-- 3、内部资源视图解析器
            最终实现把页面的正确路径进行拼接
            /WEB-INF/jsp/   login(返回的视图名)   .jsp
        -->
        <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            <property name="prefix" value="/WEB-INF/jsp/"></property>
            <property name="suffix" value=".jsp"></property>
        </bean>
    
    
    </beans>
    
    

    1.4 新建jsp页面

    WEB-INF/jsp 目录内的 login.jsp

    <%--
      Created by IntelliJ IDEA.
      User: 16338
      Date: 2021/2/23
      Time: 13:57
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>Title</title>
    </head>
    <body>
    <h1>spring配置成功</h1>
    </body>
    </html>
    
    

    1.5 新建UserController.java

    包 com.qst.controller 内新建UserController.java

    package com.qst.controller;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    //当前类被spring容器管理
    //当前类是Controller控制器层
    @Controller
    public class UserController {
        //当浏览器发起一个http://localhost:8066/login这个请求返回一个登陆页面给浏览器
    
        @RequestMapping("/login")//请求路径
        public  String toLoginPage(){
            //暂时不处理任何请求
            return "login";//通过springmvc.xml里配置的内部资源视图解析器返回视图名称,页面要存在,否则返回404
    
        }
    }
    

    1.6 配置web.xml

    先访问web.xml后访问springmvc.xml
    所以要配置web.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
    	id="WebApp_ID" version="3.0">
    
    	<!-- 整合springmvc -->
    	<servlet>
    		<servlet-name>springmvc</servlet-name>
    		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    		
    		<!-- 指定springmvc的核心配置文件的位置 -->
    		<init-param>
    			<param-name>contextConfigLocation</param-name>
    			<param-value>classpath:springmvc-config.xml</param-value>
    		</init-param>
    		
    	</servlet>
    	<servlet-mapping>
    		<servlet-name>springmvc</servlet-name>
    		
    		<!-- 拦截所有请求 -->
    		<url-pattern>/</url-pattern>
    	</servlet-mapping>
    
    
    </web-app>
    
    

    2 运行

    使用tomcat插件运行
    在这里插入图片描述
    出现地址
    在这里插入图片描述
    将地址加 /login
    输入浏览器http://localhost:8066/login
    配置成功
    在这里插入图片描述

    展开全文
  • idea创建SpringMVC项目

    千次阅读 2021-05-27 09:18:09
    通过IDEA建立一个简单SpringMVC项目的大致过程: 通过IDEA新建SpringMVC项目 设置运行、调试相关配置 导入Spring MVC 相关类库 添加 Controller【MVC的C】 修改 url-pattern(web.xml) 配置 component-scan...
  • Maven springMVC项目实例

    2016-06-29 14:22:54
    maven开发springMVC完整实例
  • 1、项目右键 2、修改Project Settings 下Modules 检查项目编译文件输出路径是否正确 调整 WEB配置 选择 web.xml 文件路径 选择 WebRoot 或 WebContent 路径 并设置Relative path in deployment ...
  • springmvc项目骨架

    2016-03-05 15:26:07
    springmvc 项目骨架, 包含xml和javaConfig两种配置版本
  • 主要介绍了在IntelliJ IDEA 搭建springmvc项目配置debug的教程详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
  • Idea创建一个springmvc项目

    千次阅读 2022-02-16 13:17:44
    1.新建一个springmvc项目(如果没有spring选项请参考) https://blog.csdn.net/as_64/article/details/122960382?spm=1001.2014.3001.5501 2.修改web.xml配置文件,将servelet-mapping里面的内容修改为(拦截所有请求...
  • IDEA创建一个SpringMVC项目(基于注解) 1. 首先在idea中如图建一个项目,别的不要勾 当然创建方法不唯一,也可以用maven,或者手工导jar包,自己建起目录结构。 接下来可以填写项目名 系统创建好的目录结构如下...
  • 项目为dubbo简易demo,本地启动zookeeper后,导入项目可直接运行.
  • 1.new一个maven项目 2.引入maven依赖 3.添加webapp目录 4.在resoure目录下创建springMVC.xml 5.WEB-INF目录下创建templates文件夹创建index.html 6.写个类返回视图名称 7.配置tomcat、完整目录结构 1.new...
  • springmvc项目名称:springmvc ☆JDK版本:JDK 1.8 ☆运行环境:apache-tomcat-9.0.8 ☆开发工具:IntelliJ IDEA 2018.1.5 ############### 注释模板设置
  • idea2021搭建SpringMVC项目

    千次阅读 2021-09-07 15:44:20
    打开IDEA 点击file–>close Project ... ...在框中填写你的项目名称和项目的存储位置 ,还有groupId然后点击NEXT。如下图操作 打开pomxml文件增加依赖 <?xml version="1.0" encoding="UTF-8"?..
  • 主要介绍了springmvc项目中使用过滤器来解决请求方式为post时出现乱码的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 171,353
精华内容 68,541
关键字:

springmvc项目

spring 订阅
友情链接: Nagakami-dist.rar