环境搭建

第一步:安装spring

可以参考这个:http://blog.csdn.net/boredbird32/article/details/50932458

安装成功后,重启后有下面这个Spring IDE就表示安装成功。

或者打开所选项,会有spring

第二步:把以下jar包导入到classPath下:

新建一个java工程,里面建一个文件夹lib,存放jar包

从该地址下载commons-logging:http://commons.apache.org/proper/commons-logging/download_logging.cgi。

从该地址下载spring-framework框架:https://repo.spring.io/release/org/springframework/spring/

解压,把该目录下相关jar包复制到lib目录下。

然后选中这些jar包,右键,添加到build path下面。

变成如下:

环境搭建完毕。

新建一个hello word

一:创建一个spring配置文件

选择Other

finish

二,新建一个HelloWord类。

package com.spring.beans;

public class HelloWord {

    private String name;

    public void setName(String name)
{
this.name=name;
} public void hello()
{
System.out.println("hello"+this.name);
}
}

三,在配置文件中配置bean。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- 配置bean -->
<bean id="helloWord" class="com.spring.beans.HelloWord">
<property name="name" value="Spring"></property>
<!-- 这里的name里面的值为HelloWord这个类里面set方法后面的字符,比如这个类里面有个方法setName,那么这个值为name,如果为其他值就会报错 -->
</bean>
</beans>

解释:

1,property的name,里面的值为HelloWord这个类里面set方法后面的字符,比如这个类里面有个方法setName,那么这个值为name,如果为其他值就会报错。

2,property的value表示是对于这个setName方法,传进去的值,这里相当于使用对象实例执行了一次setName("Spring"),这时候变量值为Spring。

三,新建main方法通过配置调用hello word类。

package com.spring.beans;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Main { public static void main(String [] args)
{
//1,创建spring的IOC容器对象
ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");//指定配置文件名
//2,从IOC中获取Bean实例
HelloWord helloword=(HelloWord) ctx.getBean("helloWord");//getBean里面的参数是配置的bean的ID
//3,调用hello方法。
helloword.hello();
}
}

分三步操作:

1,创建spring的IOC容器对象,参数为配置文件名

在创建这个容器的时候,会自动把容器下面的bean所配置的对应类的构造方法,和set方法执行一遍,对变量赋值,set方法的变量值就是property里面配置的value

 ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");//指定配置文件名

2,从IOC中获取bean实例。

通过ctx这个容器的getBean方法,把刚刚配置的bean的id作为参数传进去,获取对应id值所对应的类的对象实例。

 HelloWord helloword=(HelloWord) ctx.getBean("helloWord");//getBean里面的参数是配置的bean的ID

3,直接通过对象调用方法。

从执行结果可以看出来,在配置文件中设置的value成功的传入了,设置了value为Spring.

01-spring安装,hello word的更多相关文章

  1. spring原理案例-基本项目搭建 01 spring framework 下载 官网下载spring jar包

    下载spring http://spring.io/ 最重要是在特征下面的这段话,需要注意: All avaible features and modules are described in the ...

  2. 指导手册01:安装Hadoop

    指导手册01:安装Hadoop  Part 1:安装及配置虚拟机 1.安装Linux. (1)打开VMvirtualBox (2) 控制->新建虚拟机,输入虚拟机名称“marst+学号” 类型: ...

  3. IDEA(2018.01)安装和破解

    IDEA(2018.01)安装和破解 1.下载IDE https://www.jetbrains.com/idea/download/#section=windows 选择Ultimate版本 2.下 ...

  4. 黑马_13 Spring Boot:01.spring boot 介绍&&02.spring boot 入门

    13 Spring Boot: 01.spring boot 介绍&&02.spring boot 入门 04.spring boot 配置文件 SpringBoot基础 1.1 原有 ...

  5. 01 Spring Boot 的简单配置和使用

    Spring Boot 简介 使用 Spring Boot 可以让我们快速创建一个基于 Spring 的项目,而让这个 Spring 项目跑起来我们只需要很少的配置就可以了. 创建 Spring Bo ...

  6. redis实战(01)_redis安装

    早就想对redis进行实战操作了,最近看了一些视频和参考书籍,总结总结一下,redis实战内容: 实战前先对redis做一个大概的认识: 现在开始安装redis了... redis的安装下载地址 ht ...

  7. 01.Redis安装

    1.安装Redis 1.下载.解压Redis [lizhiwei@localhost Redis]$ ll total 1248 -rwxrwxr-x. 1 lizhiwei lizhiwei 127 ...

  8. [Git]01 如何安装和配置

     简单地说,Git 究竟是怎样的一个系统呢? 请注意,接下来的内容非常重要,若是理解了 Git 的思想和基本工作原理,用起来就会知其所以然,游刃有余.在开始学习 Git 的时候,请不要尝试把各种概 ...

  9. [笔记]我的Linux入门之路 - 01.Ubuntu安装

    最近学机器学习,感觉matlab/octave用的人不多,想改用python.于是开始学python,辛辛苦苦学会了自己装环境和装第三方库,结果发现scipy库竟然没有win版本!于是想着那我得装个l ...

  10. maven(01)--安装及其介绍

    1:下载maven windows下载 2:将下载文件夹解压,然后放在一个安装目录(可任意选择),例如就放在D盘的根目录 然后在设置环境变量,新建一个环境变量,名称为M2_HOME,其设置值为mave ...

随机推荐

  1. NGUI的异步场景加载进度条

    1.直接创建三个场景,其中第二个场景是用来显示进度条加载的界面,进度条用UISlider,不会的看我前面的博文就可以了. 2.这里提供两种方法,建议使用第一种,加载比较平缓 方法一: using Sy ...

  2. BZOJ2462[Beijing2011]矩阵模板(二维Hash)

    二维矩阵匹配问题,至今不知道Q的范围是多少,反正是要求做到读入复杂度. 二维Hash:就是一维的等效拓展,注意两维的Base不能相同. 其余就是一维Hash和二维前缀和的结合,可以自然溢出,据说概率很 ...

  3. 【贪心】Codeforces Round #436 (Div. 2) D. Make a Permutation!

    题意:给你一个长度为n的数组,每个元素都在1~n之间,要你改变最少的元素,使得它变成一个1~n的排列.在保证改动最少的基础上,要求字典序最小. 预处理cnt数组,cnt[i]代表i在原序列中出现的次数 ...

  4. (原创)Stanford Machine Learning (by Andrew NG) --- (week 8) Clustering & Dimensionality Reduction

    本周主要介绍了聚类算法和特征降维方法,聚类算法包括K-means的相关概念.优化目标.聚类中心等内容:特征降维包括降维的缘由.算法描述.压缩重建等内容.coursera上面Andrew NG的Mach ...

  5. linux之rootfs (UBIFS)

    转:http://www.360doc.com/content/11/1208/15/3700464_170655736.shtml 大大小小事情一堆,好久不更新了,这次记录下移植ubifs文件系统步 ...

  6. 【Tomcat MyEcplise】MyEcplise添加一个新的Server,Tomcat8.5报错

    添加新的Tomcat添加不进去,报错: The Apache Tomcat installation at this directory is version 8.5.11.  A Tomcat 8. ...

  7. iOS面试题合集(77道)

    1.#import和#include的区别 @class? @class一般用于头文件中需要声明该类的某个实例变量的时候用到,在m文 件中还是需要使用#import 而#import比起#includ ...

  8. Android记一次后台保活设计心得2018

    首先我并不推荐也不喜欢手机应用通过各种手段后台保活,但是当产品经理确定一定以及肯定地提出了这个需求,活着应用有着必须常驻后台的理由,也就只有硬着头皮去与各个手机的后台管理机制做斗争了. 背景:因为开发 ...

  9. rbac控制下无法创建poddisruptionbudgets

    先通过下面命令找到具体的命名空间的rbac kubectl get role --all-namespaces kubectl get role aaa -o yaml 然后倒入到yaml文件中添加 ...

  10. 如何在sublime3项目设置中设置python模块的搜索路径?ImportError: No module named *的解决办法

    问题:之前使用pycharm,用的挺溜,但是电脑配置实在不争气,pycharm启动久了,耗去大量内存,导致运行起来越来越慢,于是转向使用sublime text. 把项目从pycharm切换到subl ...