使用 idea 编辑器 + Maven + spring + spring MVC 做一个简单web访问功能,并记录一下其中的步骤。

1.从pom.xml配置Maven文件开始

<?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>com.springdemo</groupId>
<artifactId>springdemo</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging> <name>springdemo 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>
<!-- Spring依赖 start -->
<!-- https://mvnrepository.com/artifact/org.springframework/spring-aop -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>5.0.6.RELEASE</version>
</dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-aspects -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>5.0.6.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-beans -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>5.0.6.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.0.6.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-core -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>5.0.6.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-expression -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>5.0.6.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.0.6.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-orm -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>5.0.6.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-tx -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>5.0.6.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-web -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.0.6.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.0.6.RELEASE</version>
</dependency>
<!-- Spring依赖 end --> <!--servlet相关的Jar包-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency> <dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
</dependencies> <build>
<finalName>myspringmvc</finalName>
</build> </project>

2.web.xml

<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<!--设置我们的url都会交给DispatcherServlet-->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<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/springmvc-config.xml</param-value>
</init-param>
<!--Tomcat 启动时就会初始化DispatcherServlet-->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>

3.springmvc-config.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: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-2.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
<!--启用spring的一些annotation-->
<context:annotation-config/> <!--自动扫描com.zbt.controller-->
<context:component-scan base-package="com.springdemo.controller"/> <!--配置注解驱动可以将request参数绑定到controller参数上-->
<mvc:annotation-driven/> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean> </beans>

4.controller

package com.springdemo.controller;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; @Controller
@RequestMapping("/student")
public class StudentController {
private static final Log logger = LogFactory.getLog(StudentController.class);
@RequestMapping("/hello")
public String sayHi(){
logger.info("sayHi are called!");
return "hello";
}
}

省略配置tomcat.

5.效果图

http://127.0.0.1/springdemo_war_exploded/

http://127.0.0.1/springdemo_war_exploded/student/hello.do

参考:

https://blog.csdn.net/colton_null/article/details/78882182

https://blog.csdn.net/makeliwei1/article/details/80829528

最新文章

  1. ASP.NET MVC5+EF6+EasyUI 后台管理系统(56)-插件---单文件上传与easyui使用fancybox
  2. 在WPF中使用WinForm控件方法
  3. ASN.1 key structures in DER and PEM
  4. Mac下搭建hexo
  5. 采用TCP协议实现PIC18F97J60 ethernet bootloader
  6. SurfaceView
  7. linux下常用关机命令
  8. XE6移动开发环境搭建之IOS篇(2):安装VM9虚拟机(有图有真相)
  9. NOIP2010普及组T3 接水问题 ——S.B.S.
  10. Excel数据通过plsql导入到Oracle
  11. JDBC之PreparedStatement模糊查询
  12. 基于jQuery查找dom的多种方式性能问题
  13. 【IOS学习基础】文件相关
  14. MVC Razor视图引擎控件
  15. [转]solr DataImportHandler 解决mysql 表导入内存溢出问题
  16. Asp.Net MVC学习总结(三)——过滤器你怎么看?
  17. Linux下Tomcat8.0.44安装使用Apr
  18. 文件A包含文件B,找出A不包含B的那部分
  19. oracle初试、函数、增删改查、多表查询
  20. 经典的java中return和finally问题!

热门文章

  1. 【bzoj 4455】小星星(树型DP+容斥原理+dfs建树和计算的2种方式)
  2. java.awt.event.MouseEvent鼠标事件的定义和使用 以及 Java Swing-JTextArea的使用
  3. 洛谷 P2391.白雪皑皑 (并查集,思维)
  4. Codeforces Round #681 (Div. 2, based on VK Cup 2019-2020 - Final) A. Kids Seating (规律)
  5. Codeforces Round #498 (Div. 3) D. Two Strings Swaps (思维)
  6. [Golang]-2 Map关联数组与下划线(_)的意义
  7. Shell 信号处理 &amp; Expect 免交互
  8. Kubernets二进制安装(3)之准备签发证书环境
  9. dll的注册与反注册
  10. spring再学习之AOP事务