源码笔记地址分享:链接:http://pan.baidu.com/s/1o8x9uH0 密码:ctaa
详细见springMvc课堂笔记(在网盘中)
Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。
另外还有一种基于组件的、事件驱动的Web框架在此就不介绍了,如Tapestry、JSF等。
SpringWeb MVC也是服务到工作者模式的实现,但进行可优化。前端控制器是DispatcherServlet
;
应用控制器其实拆为处理器映射器(Handler Mapping)进行处理器管理和视图解析器(View Resolver)进行视图管理;页面控制器/动作/处理器为Controller接口(仅包含ModelAndViewhandleRequest(request, response)
方法)的实现(也可以是任何的POJO类);支持本地化(Locale)解析、主题(Theme)解析及文件上传等;提供了非常灵活的数据验证、格式化和数据绑定机制;提供了强大的约定大于配置(惯例优先原则)的契约式编程支持。
Maven创建一个父工程,一般在大项目中都会如此创建一个maven父工程,然后其他的都是继承父工程之后再操作。
父工程是给子工程声明jar包管理和依赖的。子工程可以声明调用或者添加额外依赖,父工程方便了jar包的统一管理。
如果创建了maven父工程,若要war程序(聚合工程)跑tomcat必须先初始化父工程。如果war工程还添加了common自定义工程,还要初始化common自定义工程。
目录结构如下:
因为我已经创建过了,所以我这个地方报红叉,说名字已经存在。
点击完成。父工程创建完成
Pom.xml文件内容
4.0.0
cn.huayu.mavenparent
mavenparent
0.0.1-SNAPSHOT
pom
4.12
4.1.3.RELEASE
3.2.8
1.2.2
1.2.15
5.1.32
1.6.4
2.4.2
1.0.9
4.3.5
1.2
2.5
2.0
2.5
3.3.2
1.3.2
3.3
3.4.2-fix
0.9.1
1.3.1
2.7.2
4.10.3
2.3.23
2.2.2
joda-time
joda-time
${joda-time.version}
org.apache.commons
commons-lang3
${commons-lang3.version}
org.apache.commons
commons-io
${commons-io.version}
commons-net
commons-net
${commons-net.version}
com.fasterxml.jackson.core
jackson-databind
${jackson.version}
org.apache.httpcomponents
httpclient
${httpclient.version}
junit
junit
${junit.version}
test
org.slf4j
slf4j-log4j12
${slf4j.version}
org.mybatis
mybatis
${mybatis.version}
org.mybatis
mybatis-spring
${mybatis.spring.version}
com.github.miemiedev
mybatis-paginator
${mybatis.paginator.version}
com.github.pagehelper
pagehelper
${pagehelper.version}
mysql
mysql-connector-java
${mysql.version}
com.alibaba
druid
${druid.version}
org.springframework
spring-context
${spring.version}
org.springframework
spring-beans
${spring.version}
org.springframework
spring-webmvc
${spring.version}
org.springframework
spring-jdbc
${spring.version}
org.springframework
spring-aspects
${spring.version}
org.springframework
spring-context-support
${spring.version}
jstl
jstl
${jstl.version}
javax.servlet
servlet-api
${servlet-api.version}
provided
javax.servlet
jsp-api
${jsp-api.version}
provided
commons-fileupload
commons-fileupload
${commons-fileupload.version}
redis.clients
jedis
${jedis.version}
org.apache.solr
solr-solrj
${solrj.version}
org.freemarker
freemarker
${freemarker.version}
org.quartz-scheduler
quartz
${quartz.version}
${project.artifactId}
org.apache.maven.plugins
maven-resources-plugin
2.7
UTF-8
org.apache.maven.plugins
maven-compiler-plugin
3.2
1.7
UTF-8
org.apache.tomcat.maven
tomcat7-maven-plugin
2.2
至此父工程创建结束
Pom.xml
4.0.0
cn.huayu.mavenparent
mavenparent
0.0.1-SNAPSHOT
cn.huayu.mavenspringmvc
mavenspringmvc
0.0.1-SNAPSHOT
war
junit
junit
test
org.slf4j
slf4j-log4j12
org.springframework
spring-webmvc
jstl
jstl
javax.servlet
servlet-api
provided
javax.servlet
jsp-api
provided
org.apache.tomcat.maven
tomcat7-maven-plugin
8080
/
Web.xml
index.html
index.htm
index.jsp
default.html
default.htm
default.jsp
springDispatcherServlet
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:springmvc.xml
1
springDispatcherServlet
/
Springmvc.xml
package com.huayu.springmvc.handlers;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class Helloworld {
/**
* 1. 使用RequestMapping注解来映射请求的URL
* 2. 返回值会通过视图解析器解析为实际的物理视图, 对于InternalResourceViewResolver视图解析器,会做如下解析
* 通过prefix+returnVal+suffix 这样的方式得到实际的物理视图,然后会转发操作
* "/WEB-INF/views/success.jsp"
* @return
*/
@RequestMapping("/helloworld")
public String hello(){
System.out.println("hello world");
return "success";
}
}
Index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
Insert title here
hello world
Success.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
My JSP 'success.jsp' starting page
恭喜你,测试简单SpringMvc Hello world 成功!
启动服务器tomcat,首先需要将tomcat7配置到myeclipse中去。然后
首先启动父工程
测试地址:localost:8080 或者ip地址:8080 例如172.16.192.166:8080
至此结束。(有问题联系我qq742002761)