文章目录

  • 目录结构
  • web.xml
  • SpringMVC核心配置文件:md5-servlet.xml
  • Controller类
  • /jsp/md5/md5_query.jsp
  • 相关依赖:pom.xml

目录结构

web.xml

<web-app xmlns="http://java.sun.com/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"version="3.0"><!-- ContextLoaderListener实现了ServletContextListener这个接口,在启动web容器时会执行,完成spring的启动和初始化。 若配置了contextConfigLocation上下文参数则按照该参数指定的路径和文件名去读取spring配置文件, 否则默认会去读/WEB-INF/applicationContext.xml --><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><!-- 此参数指定spring初始化时读取的配置文件,如果要读取多个xml文件,可以写在一起并一“,”号分隔。也可以采用如applicationContext-*.xml通配符的格式。 classpath:是类路径,此处可替换为/WEB-INF/classes/ --><context-param><param-name>contextConfigLocation</param-name><param-value>classpath:spring/applicationContext.xml</param-value></context-param><!-- DispatcherServlet是SpringMVC的总调度类,我们定义了一个名为md5的servlet并将url为/的请求映射到这个servlet,这样在请求到达时就会执行此类。 若配置了contextConfigLocation sevlet参数则按照该参数指定的路径和文件名去读取springMVC的核心配置文件, 否则默认会去读/WEB-INF/servlet名称-servlet.xml load-on-startup定义了此servlet启动优先级,1表示第一个启动,servlet一般在web容器启动时初始化 --><servlet><servlet-name>md5</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:spring/servlet/md5-servlet.xml</param-value></init-param><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>md5</servlet-name><url-pattern>/</url-pattern></servlet-mapping><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list>
</web-app>

SpringMVC核心配置文件:md5-servlet.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:p="http://www.springframework.org/schema/p"xmlns:mvc="http://www.springframework.org/schema/mvc"xmlns:context="http://www.springframework.org/schema/context"xmlns:util="http://www.springframework.org/schema/util"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd             http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"><!--激活@Controller模式 --><mvc:annotation-driven /><!--对包中的所有类进行扫描,以完成Bean创建和自动依赖注入的功能 --><context:component-scanbase-package="com.lwt.bigtools.controller" /><beanclass="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" /><!-- 这个bean用于将Controller类方法的返回值映射为实际的文件,此处为加前缀后缀: /jsp/md5/***.jsp --><bean id="viewResolver"class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix"><value>/jsp/md5/</value></property><property name="suffix"><value>.jsp</value></property></bean><!-- 此处使得DispatcherServlet将静态资源文件交给web容器默认处理,如js,css文件等 --><mvc:default-servlet-handler /><!-- <mvc:resources location="/skin" mapping="/resources/**" cache-period="10000" /> -->
</beans>

Controller类

为一普通POJO类

@Controller
public class Md5Query {// url为/md5的请求会被DispatcherServlet发送到此方法执行,其中参数Md5Form携带请求提交的参数信息。最终@RequestMapping(value = "/md5")public String query(Md5Form md5Form, Model model) {String source = md5Form.getSource();String res = "";if (!StringUtil.isEmpty(source)) {res = Md5Util.query(source); // 返回字符串source的MD5字符串表示形式}model.addAttribute("source", source);model.addAttribute("result", res);return "md5_query"; // 最终视图会被viewResolver映射到 /jsp/md5/md5_query.jsp这个文件返回给浏览器}// 这是个ajax请求最终到达的方法@ResponseBody@RequestMapping(value = "/md5ajax")public Map<String, Object> md5Ajax(String source) {Map<String, Object> modelMap = new HashMap<String, Object>();modelMap.put("res", Md5Util.query(source));return modelMap;}
}

/jsp/md5/md5_query.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%> <%@ taglib prefix="c"
uri="http://java.sun.com/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<basehref="${pageContext.request.scheme}://${pageContext.request.serverName}:${pageContext.request.serverPort}${pageContext.request.contextPath}/">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>md5查询</title><style type="text/css">
input[type="text"] {/*      float: left; */}
</style>
<link href="<c:url value='skin/css/common.css'/>" rel="stylesheet"type="text/css" />
<script src="skin/js/jquery-1.11.3.min.js"></script>
<script src="skin/js/ajaxsubmit.js"></script><script type="text/javascript">$(function() {$("form").submit(function() {$.post("md5ajax", {"source" : $("form input[name='source']").val()}, function(data, status) {$("#res").html(data.res);});return false;});});
</script>
</head><body><form action="" method="post"><input type="text" name="source"> <input type="submit"value="查询"></form><div><p id="res"></p></div>
</body>
</html>

相关依赖:pom.xml

<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/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.lwt</groupId><artifactId>bigtools</artifactId><packaging>war</packaging><version>0.0.1</version><name>bigtools Maven Webapp</name><url>http://maven.apache.org</url><!-- 定义相关版本号 --><properties><java-version>1.7</java-version><org.springframework-version>3.1.4.RELEASE</org.springframework-version><jackson.version>2.6.3</jackson.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><!-- 定义依赖 --><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency><dependency><groupId>jstl</groupId><artifactId>jstl</artifactId><version>1.2</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.1</version><scope>provided</scope></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>${org.springframework-version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${org.springframework-version}</version></dependency><!-- 提供对ajax请求json数据形式的返回,若没有则ajax请求会返回406(Not Acceptable)错误 --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>${jackson.version}</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>${jackson.version}</version></dependency></dependencies><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>2.3.2</version><configuration><source>${java-version}</source><target>${java-version}</target><encoding>UTF-8</encoding></configuration></plugin></plugins><finalName>bigtools</finalName></build>
</project>

转载于:https://www.cnblogs.com/xuejianbest/p/10284915.html

Spring:SpringMVC一例相关推荐

  1. Spring+SpringMVC+MyBatis深入学习及搭建(二)——MyBatis原始Dao开发和mapper代理开发

    前面有写到Spring+SpringMVC+MyBatis深入学习及搭建(一)--MyBatis的基础知识.MybatisFirst中存在大量重复的代码.这次简化下代码: 使用MyBatis开发Dao ...

  2. SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)

    SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一) 1. 前言 最近在写毕设过程中,重新梳理了一遍SSM框架,特此记录一下. 附上源码:https://gitee ...

  3. Spring+SpringMVC+MyBatis+Maven框架整合

    本文记录了Spring+SpringMVC+MyBatis+Maven框架整合的记录,主要记录以下几点  一.Maven需要引入的jar包  二.Spring与SpringMVC的配置分离  三.Sp ...

  4. Eclipse中 搭建 Spring+SpringMVC+Mybatis整合(下)

    通过前面的步骤可以搭建好 Maven 以及下载依赖框架,那么接下来就是编写框架的配置文件了,配置分为以下三个步骤: 配置 SpringMVC 配置 Mybatis 配置 log 以下配置 Spring ...

  5. Spring+SpringMVC+MyBatis+easyUI整合优化篇(十三)数据层优化-表规范、索引优化

    本文提要 最近写的几篇文章都是关于数据层优化方面的,这几天也在想还有哪些地方可以优化改进,结合日志和项目代码发现,关于数据层的优化,还是有几个方面可以继续修改的,代码方面,整合了druid数据源也开启 ...

  6. Spring+SpringMVC+Hibernate整合(封装CRUD操作)

    前言:当前Web项目开发的框架主流应该非Spring+SpringMVC+Hibernate莫属,不管是工作还是学习中涉及框架技术,首先是要搭建一套运行环境,虽然网上框架整合的教程很多,但我还是输出此 ...

  7. Spring+SpringMVC+MyBatis+easyUI整合优化篇(五)MockMvc服务端的单元测试

    日常啰嗦 承接前一篇文章<Spring+SpringMVC+MyBatis+easyUI整合优化篇(四)单元测试实例>,已经讲解了dao层和service层的单元测试,还有控制器这层也不能 ...

  8. Java+spring+springmvc 基于ssm的师生防疫登记备案系统设计#毕业设计

    *文末获取源码 开发环境 项目编号:Java+spring+springmvc ssm422师生防疫登记备案系统设计#毕业设计 开发语言:Java 开发工具:IDEA /Eclipse 数据库:MYS ...

  9. SMM(Spring+SpringMVC+MyBatis)

    Spring & SpringMVC & MyBatis 一.Spring的体系结构 自下往上: Test Core Container 核心容器 Beans :容器 Core :核心 ...

  10. 基于Java( Spring+SpringMVC+JDBC)+MySQL实现(Web)家电售后服务系统【100010064】

    一.家电售后服务系统 1.1 背景 随着生活质量的提高,现在各家各户都在使用家电,但是在家电被购买之后,免不了会出现一些问题,需要厂家提供一些技术支持等,家电售后服务就成了厂家和用户之间一个重要的交流 ...

最新文章

  1. 无意中发现了一位清华大佬的代码模版
  2. python的软件叫什么-python是什么软件
  3. 802.11ac/ax (wifi6)中的Beamforming技术介绍
  4. CSDN官方发布的《180道Python面试题,助你一举通过面试》浅析一
  5. [AtCoder Regular Contest 123] 题解
  6. 泽西岛2.9及更高版本中的声明式链接
  7. html5 box布局,使用Flexbox打造响应式网页网格布局
  8. export default (imported as router) was not found_U盘上的FOUND.000和FILE0000.CHK是什么
  9. python之gunicorn的配置
  10. 阿里云ubuntu16.04安装ruby
  11. python数据爬虫代码_python如何示例爬虫代码
  12. GGGIS地图下载器
  13. PythonNote036---python中字典合并
  14. 简单几步让WinUSB设备变为多端点设备
  15. 图片工具GraphicsMagick的下载安装配置使用
  16. JAVA中关于日志的介绍
  17. NV GTX680对GTX580:另一个视角
  18. 如何用标签机打印长序列号的条形码
  19. 微众银行除了电话客服之外,还有一种联系方式要知道
  20. iPhone模拟定位(非越狱修改手机定位)

热门文章

  1. jvm性能调优 - 19G1分代回收原理深度图解
  2. Apache Kafka-通过concurrency实现并发消费
  3. Java 8 - 04 类型检查、类型推断以及限制
  4. Elasticsearch-03 CentOS7 / Windows上部署Elasticsearch5.6.16集群模式
  5. Spring-AOP 通过配置文件实现 引介增强
  6. charset参数 sqluldr2_sqluldr2 学习心得
  7. matlab gui打开fig文件,求助gui打开word文件及打开fig格式图片
  8. java对象是 什么的集合_java持有对象-集合类
  9. unity 角度限制_Unity自定义可编程渲染管线(SRP)(九)——灯光照明
  10. Python中的线程threading.Thread()使用详解