准备学习Spring MVC
这一系列笔记将带你一步一步的进入Spring MVC,高手勿喷。
首先你得安装以下的工具:
- JDK,虽然JDK8已经发布了一段时间了,但是由于我们并不会使用到里面的新特性,所以JDK6以上版本皆可以(需加入到PATH环境变量中);
- Servlet Container,为了能运行WEB应用程序,因此需要一个Web Container,这里我们建议Tomcat即可;
- IDE,一个好的IDE不仅能提高你开发的效率,还能降低你学习的成本,我们选择的是IntelliJ;
- 构建工具,推荐使用Gradle,它提供了和maven一样基于约定(即约定优于配置)的构建框架;同时也提供了依赖管理(需加入到PATH环境变量中);
这里重点说一下Gradle;Gradle是一个构建工具,主要依赖于两个文件:build.gradle(必选,类似于maven中的pom.xml)和settings.gradle(可选);其作用在于:
- 依赖管理:我们都知道Java的强大在于它的生态系统,包含了很多高质量的Java代码库;这是它的优势,同时也是它的劣势,很可能一个中小型系统也会依赖于数十多个代码库,这些代码库之间还会有相互依赖,也可能其中的两个代码库又依赖于版本不一样的同一个代码库;这为我们在开发时带来了很大的困难,我们也不可能坐在电脑旁一个一个的去下载这些代码库,然后还不得不去解决依赖版本不一致的问题;
- 构建:Gradle不仅仅是一个依赖管理工具,同时也是一个构建工具,它能很容易的帮助我们完成编译、测试、创建war包等工作。
以上软件安装完毕后,我们即可以在某个盘符下面创建一个新的目录,这里命名为sampleProject,然后在里面创建一个build.gradle文件,在文件中录入:
apply plugin: 'idea'
apply plugin: 'war'
apply plugin: 'jetty' repositories {
mavenCentral()
}
保存该文件。
由于我们主要讲述Spring MVC相关的知识,关于上面这段代码的解释,请查看Gradle相关的文档;
打开命令行程序,进入sampleProject所在的目录,运行以下命令:
gradle idea
待运行完毕,随即会在该目录下创建多个文件:

猛击sampleProject.ipr这个文件,即可以用IntelliJ打开整个项目。
现在需要在IntelliJ中从根目录下面创建以下目录:
src
src/main
src/main/java
src/main/resources
src/main/webapp
src/test
src/test/java
src/test/resources
完成后如下图所示:

准备学习Spring MVC的更多相关文章
- 20-spring学习-Spring MVC基本操作
本次实现数据的CRUD功能,数据依然以VO类形式进行数据接收. 一,建立Message.java类操作,负责数据的接收操作. package com.SpringMVC.vo; public clas ...
- [Java Web学习]Spring MVC使用普通类对象,声明的对象为null
由于对Spring还不熟悉,目前还处于学习阶段,因此经常会遇到一些小白问题,这个问题需要在Spring文件中将普通对象注入bean,然后在MVC中添加set方法,填充普通对象.
- 学习spring mvc
http://www.cnblogs.com/bigdataZJ/p/springmvc1.html
- Java学习07 (第一遍) - Spring MVC
跳过Struts2,直接学习Spring MVC MVC,自己画的 属性(Property/Attribute),事件(Event),方法(method/procedure),函数(Function) ...
- Spring MVC 学习 之 - URL参数传递
在学习 Spring Mvc 过程中,有必要来先了解几个关键参数: @Controller: 在类上注解,则此类将编程一个控制器,在项目启动 Spring 将自动扫描此类,并进行对应URL路由映 ...
- SSM(spring mvc+spring+mybatis)学习路径——2-1、spring MVC入门
目录 2-1 Spring MVC起步 一.回顾Servlet 二.SpringMVC简介 三.搭建SpringMVC第一个案例 四.简单流程及配置 五.使用注解开发Controller 六.参数绑定 ...
- 【转载】Spring MVC 整合 Freemarker
前言 1.为什么要使用Spring MVC呢? 2.为什么要使用Freemarker呢? 3.为什么不使用Struts2呢? 此示例出现的原因就是发现了struts2的性能太差,所以学习Spring ...
- Spring MVC URL传参
Spring MVC 学习 之 - URL参数传递 在学习 Spring Mvc 过程中,有必要来先了解几个关键参数: @Controller: 在类上注解,则此类将编程一个控制器,在项目启 ...
- spring mvc 的基本注解
刚开始学习spring mvc 有很多东西不是很了解 spring mvc 四个基本注解 annotation(控制层,业务层,持久层) -- @Component.@Repository @Se ...
随机推荐
- javascript 减少回流
减少回流(REFLOWS) 当浏览器重新渲染文档中的元素时需要 重新计算它们的位置和几何形状,我们称之为回流.回流会阻塞用户在浏览器中的操作,因此理解提升回流时间是非常有帮助的. 回流时间图表 你应该 ...
- 安卓中級教程(7):annotation中的 public @interface的用法
package com.example.ele_me.util; import java.lang.annotation.Retention; import java.lang.annotation. ...
- x86指令集同频性能提升
x86近5000条指令,迄今为止最复杂的指令集.这里不研究CISC & RISC,也不考虑process制程变化,主要是看最近几代IA架构对于同频率下性能的提升. x86指令集nasm文档 h ...
- Eclipse下使用GDT插件无法登陆GAE & GDT无法上传JAVA代码
今天更新github主页的过程中,想使用GAE部署一个Java Web服务来更好的支持网站动态性(关键是利用了免费的GAE资源),结果遇到了2个大问题. 1.GDT插件无法登陆GAE账户 错误1:登陆 ...
- 简单而兼容性好的Web自适应高度布局,纯CSS
纯CSS实现的自适应高度布局,中间内容不符自动滚动条.兼容IE9以上.chrome.FF.关键属性是box-sizing: border-box. 不废话,直接上代码: <!doctype ht ...
- PCB上过孔via钻孔的直径如何设置 是任意的吗 谈谈PCB钻孔工艺及规格
PCB上过孔via钻孔的直径如何设置,是不是可以随便填入一个直径尺寸就行了?比如我的走线宽度是6mil,那我的via过孔直径也设置为6mil,节约布线空间岂不是更好?这样的设计板厂是否都能按照设计规格 ...
- js null 和 undefined
undefined是一个特殊类型,null本质上是一个对象 typeof undefined//"undefined"typeof null//"object" ...
- javascript中原型(prototype)与原型链
javascript是一门动态语言(动态语言Dynamic Programming Language:动态类型语言,意思就是类型的检查是在运行时做的,也就是常说的“弱类型”语言),没有类的概念,有cl ...
- WINDOWS下PhoneGap(Cordova)安装笔记
1.首先下载Node.js 安装nodejs很简单直接点击安装文件下一步直至成功即可,安装notejs的同时npm也会同时安装 成功后打开notejs的命令行工具 输入“node -v”," ...
- MAC emacs下安装php-mode
在某一个个页面(抱歉不记得了), 比较了三个配置,php-mode, php-mode-improved, xnhtml. 作者在比较后推荐xnhtml,但在xnthml官网下载链接一直显示403,真 ...