学习spring1--跟我一起学Spring 3(2)–开发环境配置
http://www.importnew.com/13185.html#spring


- 导航条 -
首页
所有文章
资讯
Web
架构
基础技术
书籍
教程
我要投稿
更多频道 »
- iOS
- Python
- Android
- Web前端
跟我一起学Spring 3(2)–开发环境配置
注: 本章节仅仅针对刚刚接触Java和Spring的初学者,如果已经配置好开发环境的,请略过此节直接进入使用Spring开发第一个HelloWorld应用。
下面来介绍一下如何配置开发环境,配置包括:
配置JDK
要开发Java程序,首先需要配置JDK(Java Development Kit)。你可以在Oracle的网站上下载最新的JDK。截止自本教程写作的时候[2014年9月],最新的版本是Java SE 8u20,但我仍旧以更多人使用的JDK7作为本教程的JDK。
在这个页面下载你的操作系统相应的JDK,我下载的是JDK 7u67。
安装好之后就要配置JAVA_HOME,PATH和CLASSPATH环境变量。
- JAVA_HOME : JDK的安装目录
- PATH : 告诉系统什么地方可以找到java,javac等程序,就不需要在执行运行程序时,在前面加上一长串路径了
- CLASSPATH : 告诉系统从什么地方可以找到编译java程序需要的库
Windows配置
如果是使用Windows NT/2000/XP,右击我的电脑 ->属性 -> 高级 -> 环境变量。如果是使用Windows 7,右击我的电脑 ->属性 -> 左栏高级系统设置 -> 高级 -> 环境变量
图片一 Windows设置环境变量
假设你的JDK安装目录是C:\jdk1.7.0。
- 新建变量
JAVA_HOME: C:\jdk1.7.0 - 修改或新建变量
PATH: %JAVA_HOME%\bin; - 修改或新建变量
CLASSPATH: .;%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/lib/dt.jar
设置成功后,打开运行->CMD,输入java -version得到当前版本。
图片二 Windows查看Java版本
MAC配置
如果使用MacOSX Leopard,它自带有JDK,默认安装在/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/下,不需要另外下载安装。
当然如果你要使用最新的版本,你可以从Oracle的网站上下载。以本教程下载的JDK 7u67,安装默认会放在/Library/Java/JavaVirtualMachines/1.7.0_67.jdk/。
安装之后使用java -version查看版本。如果安装了JDK 7之后仍然显示1.6.0的话,就要更改一下CurrentJDK所指向的路径。
|
1
|
cd /System/Library/Frameworks/JavaVM.framework/Versions/ |
然后ls -la,输出可能如下:
|
1
2
3
4
5
6
7
8
9
10
11
12
|
total 64drwxr-xr-x 11 root wheel 374 5 8 21:30 .drwxr-xr-x 10 root wheel 340 5 6 00:10 ..lrwxr-xr-x 1 root wheel 10 5 6 00:09 1.4 -> CurrentJDKlrwxr-xr-x 1 root wheel 10 5 6 00:09 1.4.2 -> CurrentJDKlrwxr-xr-x 1 root wheel 10 5 6 00:09 1.5 -> CurrentJDKlrwxr-xr-x 1 root wheel 10 5 6 00:09 1.5.0 -> CurrentJDKlrwxr-xr-x 1 root wheel 10 5 6 00:09 1.6 -> CurrentJDKlrwxr-xr-x 1 root wheel 10 5 6 00:09 1.6.0 -> CurrentJDKdrwxr-xr-x 7 root wheel 238 5 6 00:10 Alrwxr-xr-x 1 root wheel 1 5 6 00:09 Current -> Alrwxr-xr-x 1 root wheel 58 5 8 21:30 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents |
使用下面的命令更改CurrentJDK指向的路径:
|
1
|
sudo ln -fhsv /Library/Java/JavaVirtualMachines/jdk1.7.0_67.jdk/Contents CurrentJDK |
然后编辑 ~/.bash_profile,加入以下配置:
|
1
2
3
|
export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Homeexport PATH=$PATH:$JAVA_HOME/binexport CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar |
然后:
|
1
|
source ~/.bash_profile |
然后再看看java -version的输出结果吧,
|
1
2
3
4
|
[~]$java -versionjava version "1.7.0_67"Java(TM) SE Runtime Environment (build 1.7.0_67-b01)Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode) |
其他系统配置JDK的教程请点击这里。
多说一句,如果使用IDE开发的话,上面配置JDK的步骤并不是必须的,只不过配置JDK能直接通过java -version快速查看我们是否安装好了JDK。
配置IDE
这个教程的所有例子都是使用Eclipse作为IDE,其他IDE的配置类似。
本教程以配置Eclipse为例。在Eclipse官网上下载最新的版本。
下载后解压缩到你觉得方便的目录。譬如,Windows的C:\eclipse,或者Mac的~/Applications/eclipse。
直接双击打开。
图片三 Eclipse
接下来让Eclipse知道JDK放在哪。点击Window > Preferences > Java > Installed JREs > Edit...(Windows)或者Preferences > Java > Installed JREs > Edit...(Mac)
图片四 设置Eclipse的JRE路径
将JRE Home指向的JRE的安装
图片五 设置Eclipse的JRE路径
下载Spring
在这里下载Spring。
我下载的版本是spring-framework-3.2.9.RELEASE-dist.zip。解压缩放到任意目录,譬如~/spring-framework-3.2.9/
图片五 Spring安装目录
环境配置好之后,准备用Eclipse开发你的第一个HelloWorld程序吧!
习题
上一课中,留下了两个问题,希望读者思考一下这些问题。它们都是开放式的问题,并没有标准答案,笔者根据个人的经历和体会作答。
- 你使用过Spring吗?你用过它的哪些模块和功能?(如果你使用过Spring MVC,请移步下一题。)
Spring由很多组件组成,主要的组件是一个核心的IoC容器(Beans,BeanFactory, ApplicationContext等等构成),它提供依赖注入,剩下的组件都是围绕这个容器构建的。我主要用它的依赖注入、Spring MVC、事务管理、AOP和Security。
除了Spring MVC,你还知道哪些MVC框架吗?你用过哪些MVC框架?你能比较下它们之间的优缺点吗?
我只用过JSF 1.2,Struts 1和Spring MVC。
JSF 1.2
- 优点:
- 它是基于模块(UI)的框架
- Java EE标准,它拥有许多自带的模块可以提供很多功能
- 用EJB作为后台,JSF作为view层的话,兼容性很好
- 开始学习相对容易
- 缺点:
- 不能很好的支持REST风格的服务
- 对Ajax的支持较差(据说JSF 2有相当大的改善)
Struts 1
- 优点:
- 基于请求的框架
- Ajax支持较好
- 支持REST风格的服务
- 缺点:
- 较难写web层的测试用例
- 文档支持较差
Spring MVC
- 优点:
- 和Struts一样是基于请求的框架
- 依赖注入和IoC使得写测试用例很容易
- 对Ajax支持很好
- 和Spring的其他模块(如core/aop/orm等)衔接良好
- 文档很齐全
- 更多优点请参见跟我一起学Spring 3(1)
- 缺点:
- 和EJB的兼容不太好
- 开始接触的时候学习曲线较陡
ZeroTurnAround提供了更详细的Java Web框架的比较,此外还有Grails, Vaadin,GWT,Wicket,Play等,速速去围观吧。

相关文章
- 跟我一起学Spring 3(3)–使用Spring开发第一个HelloWorld应用
- 跟我一起学Spring 3(1)–为什么要学Spring
- Spring MVC + Hibernate + Maven: Crud操作示例
- 理解Spring MVC Model Attribute 和 Session Attribute
- Spring面试问答
- Spring面试问答Top 25
- 如何实现XA式、非XA式Spring分布式事务
- Spring MVC 入门示例讲解
- Spring的IOC原理
- 如何使用Spring开发和监控线程池服务
发表评论
(*) 表示必填项
2 条评论
来自微博的评论


最新评论
这是印度阿三写的,除了少数几个网站还可以,大部分都是垃圾。ryan
markoniong
咨询一个问题。ctx.getChannel().write(response).addListene...张果胜
Re: 浅谈 Java 字符串String 字符串常量 StringBuffer 字符串变量(线程安全) String...oniong
Re: Java实现单例的难点看不懂那个绕过枚举单例保护的反射代码...Constructor con = FooEnumSing...oniong
public T $(int id) { return (T) super.find...kenny
有没有2.6节的链接呢Rocky
Re: Java 9特性人工智能应当最后检验,如果不对就回退到普通方法。大多数情况正确就行。我们

关于ImportNew
ImportNew 专注于 Java 技术分享。于2012年11月11日 11:11正式上线。是的,这是一个很特别的时刻 :)
ImportNew 由两个 Java 关键字 import 和 new 组成,意指:Java 开发者学习新知识的网站。 import 可认为是学习和吸收, new 则可认为是新知识、新技术圈子和新朋友……
联系我们
Email:ImportNew.com@gmail.com
新浪微博:@ImportNew
微信号:importnew
反馈建议:ImportNew.com@gmail.com
广告与商务合作QQ:2302462408
© 2015 ImportNew


学习spring1--跟我一起学Spring 3(2)–开发环境配置的更多相关文章
- OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置
摘要: 由于最近AR(增强现实)这个概念非常火爆,各种基于AR的应用及游戏逐渐面向大众,而在AR中最重要的两个技术就是跟踪识别和增强渲染,其中跟踪识别是通过OpenCV这个开源的计算机视觉库来实现的, ...
- 【opencv学习笔记一】opencv下载安装与VS2017开发环境配置
本文章摘录自浅墨博客,原文链接http://blog.csdn.net/poem_qianmo/article/details/19809337 目录 1.opencv下载与安装 2.计算机环境变量配 ...
- Scala 学习之路(一)—— Scala简介及开发环境配置
一.Scala简介 1.1 概念 Scala全称为Scalable Language,即“可伸缩的语言”,之所以这样命名,是因为它的设计目标是希望伴随着用户的需求一起成长.Scala是一门综合了面向对 ...
- Direct3D11学习:(一)开发环境配置
转载请注明出处:http://www.cnblogs.com/Ray1024 从今天开始,开启一个新的系列:Direct3D11的学习教程. 因为一直对3D方面比较感兴趣,最近决定开始学习D3D知 ...
- 【转载】Maven+druid+MyBatis+Spring+Oracle+Dubbo开发环境搭建
原地址:http://blog.csdn.net/wp1603710463/article/details/48247817#t16 Maven+druid+MyBatis+spring+Oracle ...
- 我们一起学React Native(一):环境配置
最近想在项目中实现跨平台,对比一下主流的实现方式,选用了React Native.参考网上的教程,对于一直都是原生移动端开发,对前端的知识不是很了解的,感觉入门不是特别简单.于是打算把学习React ...
- Spring Cloud:多环境配置、eureka 安全认证、容器宿主机IP注册
记录一下搭建 Spring Cloud 过程中踩过的一些坑,测试的东西断断续续已经弄了好多了,一直没有时间整理搭建过程,时间啊~时间~ Spring 版本 Spring Boot:2.0.6.RELE ...
- Spring多开发环境配置
在项目开发中,多环境的的配置可以方便在不同环境的切换,减少错误的产生 一.properties文件的多环境配置 properties文件可以根据不同的后缀来区分不同的环境 application.pr ...
- Django:学习笔记(1)——开发环境配置
Django:学习笔记(1)——开发环境配置 Django的安装与配置 安装Django 首先,我们可以执行python -m django --version命令,查看是否已安装django. 如果 ...
随机推荐
- vs2013 编译 notepad++ 源代码
一.官方网站下载源代码,解压后得到scintilla和powereditor文件夹. 二.安装vs2013.直接打开powereditor\visual.net\notepadplus.vcxproj ...
- shell基本计算、逻辑运算、位运算详解
转:http://blog.chinaunix.net/uid-8504518-id-3918531.html Shell 提供大量的基本运算操作,在脚本中非常有用.Shell 对您提供的算术表达式求 ...
- python的dict如何排序
Python的内置dictionary数据类型是无序的,通过key来获取对应的value.可是有时我们需要对dictionary中 的item进行排序输出,可能根据key,也可能根据value来排 # ...
- 一、ELKStack介绍与入门实践
第1章 ELKStack 对于日志来说,最常见的需求就是收集.存储.查询.展示,开源社区正好有相对应的开源项目:logstash(收集).elasticsearch(存储+搜索).kibana(展示) ...
- 【Docker安全】关于Docker使用root与非root用户的场景中的容器与host中的执行用户的研究
参考: http://blog.csdn.net/yygydjkthh/article/details/47694929
- EffectiveJava(22)JAVA四种嵌套类的特点及用法
嵌套类: 1.静态成员类 静态成员类是外围类的一个静态成员,遵守同样的可访问性规则 用法:a.作为公有的辅助类 内部类: 2.非静态成员类 语法上只和静态成员类的唯一区别是少一个static修饰符 a ...
- perl学习笔记——哈希
哈希 哈希是一种数据结构,它和数组的相似之处在于可以容难任意多的值并能按需取用,而他和数组的不同在于索引的方式,数组是以数字为索引而哈希则是以名字为索引. 哈希的键是唯一的,哈希的值可以重复. 哈希的 ...
- 说说Linux文件权限那些事儿
文件全部权 显示文件的全部权 更改文件的全部权 文件的权限 改动文件的权限 用符号表示法改动 用数字表示法改动 使用umask指定默认的文件权限 參考文献 首先我们要知道Linux的标准文件权限和安全 ...
- Win7如何修改开机动画
1 使用魔方美化大师可以替换WIN7的开机画面,我们用该软件打开一个开机动画,居然是一张BMP的图片. 2 在PS中可以发现,这张有21000像素长,大小12MB,可见所谓的动画其实是一个一个动作 ...
- 游戏AI的综合设计
原地址:http://www.cnblogs.com/cocoaleaves/archive/2009/03/23/1419346.html 学校的MSTC要出杂志,第一期做游戏专题,我写了一下AI, ...
0
4
