1.为什么叫微基础
查阅目前出版的各大学习书籍,似乎没有作者敢号称Spring可以零基础入门。对于Java EE,我学的比较杂,Struts1、Struts2、Hibernate、Servlet、JSP(本质上也是Servlet),我都接触过一点点,对于XML在Java EE中的作用有大致的了解,所以相信自己是有一定的微基础的。一直对Spring很好奇,看过几本书,但是每次做实验时下载相应的jar包都花费很长的时间,所以荒废了半年多。
这个学期开学认识了一位新入职的老师,他原先是在公司里上班的,对Java和C#很熟,而且做的都是很好的项目。在他的推荐下,我知道了原来有Maven这种可以自动帮你下载依赖包的工具,我自己百度了一下流程,果然成功了,的确像他说的那样,很好用!!!
脱离了“花好多时间在百度上找包”这个怪圈后,终于可以开开心心的学习Spring了。
2.工具准备
IDEA Ultimate(曾经误下载过IDEA Community,打开一片空白,啥也没有。学生有edu邮箱就用edu邮箱去申请Student Packs,没有的话就拍照学生证上传,大约10天内会通过审核,到时候也可以免费用到毕业。如果GitHub账户通过学生认证的话,用GitHub登陆IntelliJ网站,也会自动被认证为学生的。不是学生的话就去下载破解吧,不过对于经常鼓捣系统的人,换电脑、换系统、重装软件总是要重新破解,有正规账户就方便多了,登陆一下就行,建议支持正版。)
3.准备好Maven
先别管Spring,以我“多次”学习Spring的经验来看,下载相关的jar包就够你烦的了,有了Maven,让他自动帮你下载依赖包,那我们就只需要专心学习就行了。
1.新建一个项目,选择Maven,把图中箭头的地方勾一下,在屏幕上打“quick”快速定位到相关的项目,点击,然后点击Next。
2.傻瓜式下一步,一直到Finish(如果要命名项目就命名一下)
3.创建settings.xml
默认的Maven下载源在国外,太太太太太慢了,14kb大小的文件能下个五六七八分钟,我们得把他的镜像地址改成国内的,体验一下丝滑到飞起的下载速度。
1.右键pom.xml,选择Maven,选择Create “setting.xml”(因为我已经Create过了,所以只有Open "settingx.xml"的选项,如果你早些时候创建过settings.xml,那就点击Open "settingx.xml"吧)
2.然后就打开了settings.xml了,此时右上角会跳出一个提示,点击一下,反正IDEA就是会帮你配置好一下的,放心的点吧。
3.接下来我们要在settings.xml里面配置国内的镜像了,请在<settings></settings>
里面新增如下代码:
<mirrors>
<!-- mirror
| Specifies a repository mirror site to use instead of a given repository. The repository that
| this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
| for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
|
<mirror>
<id>mirrorId</id>
<mirrorOf>repositoryId</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://my.repository.com/repo/path</url>
</mirror>
-->
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>uk</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://uk.maven.org/maven2/</url>
</mirror>
<mirror>
<id>CN</id>
<name>OSChina Central</name>
<url>http://maven.oschina.net/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>nexus</id>
<name>internal nexus repository</name>
<!-- <url>http://192.168.1.100:8081/nexus/content/groups/public/</url>-->
<url>http://repo.maven.apache.org/maven2</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
4.在上面我给大家配置了好多好多好多好多国内的镜像,阿里云不行就会跑去开源中国,开源中国不行就会跑去。。。。。大家放心,会自动帮你挑选的。
新建Spring的相关配置
配置好了Maven,也设置好了国内的镜像文件,终于可以开始写Spring了,在当前的目录下面新建一个src文件夹吧(当然其他名字也可以,随意)。
不过想要新建一个类,右键->新建似乎没有平时见到的Java类了,那是因为Maven项目没有新建类的功能,接下来为当前的src文件夹添加资源。
1.点击右上角的Project Structure。
2.点击modules
3.选择src,然后点一下source
4.保存,返回,然后右键src->新建,就有Java类了。
新建applicationContext.xml(一)
1.在src目录下新建一个resources文件夹,用来存放applicationContext.xml
2.把rosources文件夹设为资源文件夹,就是“resouces Root”
配置好后文件夹就长这个样子了
3.右键resources,准备新建一个Spring的配置文件
点开后发现并没有Spring配置文件的选项,此时我们需要去pom.xml里面添加依赖(如果这里已经有Spring的配置文件就直接选择新建一个配置文件即可)
添加Spring依赖
打开pom.xml,添加配置和依赖
<properties> <org.springframework.version>3.2.8.RELEASE</org.springframework.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.6.RELEASE</version>
</dependency>
</dependencies>
粘贴上去,系统就会自动下载的,稍等一下。因为添加了国内镜像的缘故,上述下载过程会非常非常快,第一次大约只需要20秒左右,第二次就更快了。
然后再次重复刚才在resource中新建资源的操作,会发现spring配置文件已经可以选择了。
新建applicationContext.xml(二)
点击Spring Config,取名为applicationContext.xml。
此时右上角有新的提示,傻瓜式点击,ok就行了,无需其他操作。
然后spring项目就正式创建好了,接下来可以测试一个最简单的Spring了:使用setter注入方式,在屏幕上显示“Hello”+注入的名字。
新建HelloWorld.java:
public class HelloWorld {
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String name;
public void hello(){
System.out.println("hello " + name);
}
}
新建Main.java:
这里注意下自己applicationContext.xml的位置,因为resources是我们自己手动创建的,所以找applicationContext.xml的时候,要以实际位置为主。
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Main {
public static void main(String[] args) {
//创建spring ioc容器
ApplicationContext ac = new ClassPathXmlApplicationContext("META-INF/applicationContext.xml");
HelloWorld helloWorld=(HelloWorld)ac.getBean("test");
helloWorld.hello();
}
}
配置applicationContext.xml
在beans中新增一颗豆子
<bean id="test" class="HelloWorld">
<property name="name" value="欧世乐">
</property>
</bean>
运行Main.java中的main方法,如图所示。
注入成功,完结撒花!