一、什么是Spring?


Spring Framework 是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,以Apache License 2.0开源许可协议的形式发布,也有.NET平台上的移植版本。该框架基于 Expert One-on-One Java EE Design and Development(ISBN 0-7645-4385-7)一书中的代码,最初由Rod Johnson和Juergen Hoeller等开发。Spring Framework提供了一个简易的开发方式,这种开发方式,将避免那些可能致使底层代码变得繁杂混乱的大量的属性文件和帮助类。维基百科-SpringFrameWork

总结来说就是:

  • Spring 是一个开源框架。
  • Spring 为简化企业级应用开发而生. 使用 Spring 可以使简单的 JavaBean 实现以前只有 EJB 才能实现的功能。
  • Spring 是一个 IOC(DI) 和 AOP 容器框架。

###具体描述:###

  • 轻量级:Spring 是非侵入性的 - 基于 Spring 开发的应用中的对象可以不依赖于 Spring 的 API。
  • 依赖注入(DI — dependency injection、IOC)。
  • 面向切面编程(AOP — aspect oriented programming)。
  • 容器: Spring 是一个容器, 因为它包含并且管理应用对象的生命周期。
  • 框架: Spring 实现了使用简单的组件配置组合成一个复杂的应用. 在 Spring 中可以使用 XML 和 Java 注解组合这些对象。
  • 一站式:在 IOC 和 AOP 的基础上可以整合各种企业应用的开源框架和优秀的第三方类库 (实际上Spring 自身也提供了展现层的 SpringMVC 和 持久层的 Spring JDBC)。


(Spring模块)

二、写HelloWorld前的一些准备工作##


1.Eclipse安装spring插件(MyEclipse可以跳过此步骤)###

(1)访问Spring的官网下载Spring Tool Suite   点我下载SpringToolSuite

(2)下载之后不用解压,使用Eclipse进行安装。在Eclipse中的菜单栏点击Help–>Install New Software

(3)按照下图的操作找到下载好的压缩包


(4)一路next,知道要求Eclipse重新启动。重启后在Preferences中能够看见如下图所示,则安装成功。

三、开始编写Spring的第一个程序HelloWorld##


注意:

如果是使用MyEclipse进行开发的朋友可以直接右键需要导入Spring的项目–>ConConfigure Facet–>Install Spring Facet即可,不需要执行下面的(1)(2)步。

(1)下载相关的JAR包

  • spring-framework-4.1.5.RELEASE-dist 点我下载
  • commons-logging-1.2 点我下载

(2)把包导入到新建的Web项目中

  1. 新建项目,添加一个lib文件,把刚才下载的包中的下面这些包拷贝进去,全选jar包,右键`Build Path` ---〉`Add to Build Path`![这里写图片描述](https://img-blog.csdn.net/2018071711035748?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzMzNTk2OTc4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)<center>**(下面的spring开头的包能够在`spring-framework-4.1.5.RELEASE-dist`压缩包中的`libs`文件夹中找到)**</center>
    
  2. 新建下面3个文件
    HelloWorld.java
    Main.java
    applicationContext.xml
    (三个文件的摆放位置如图所示,包名可以随便修改)

(3)编写相关类的代码

HelloWorld.java 代码:

public class HelloWorld {private String user;public HelloWorld() {System.out.println("HelloWorld's constructor...");}public void setUser(String user) {System.out.println("setUser:" + user);this.user = user;}public HelloWorld(String user) {this.user = user;}public void hello(){System.out.println("Hello: " + user);}}

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:util="http://www.springframework.org/schema/util"xmlns:p="http://www.springframework.org/schema/p"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.0.xsd"><!-- 配置一个 bean --><bean id="helloWorld" class="com.spring.helloworld.HelloWorld"><!-- 为属性赋值 --><property name="user" value="Jerry"></property></bean>
</beans>

Main.java

public static void main(String[] args) {//1. 创建 Spring 的 IOC 容器ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");//2. 从 IOC 容器中获取 bean 的实例HelloWorld helloWorld = (HelloWorld) ctx.getBean("helloWorld");//根据类型来获取 bean 的实例: 要求在  IOC 容器中只有一个与之类型匹配的 bean, 若有多个则会抛出异常. //一般情况下, 该方法可用, 因为一般情况下, 在一个 IOC 容器中一个类型对应的 bean 也只有一个.
//      HelloWorld helloWorld1 = ctx.getBean(HelloWorld.class);//3. 使用 beanhelloWorld.hello();
}

运行结果:

分析:

(图为网上搜索所得,未知图片出处,侵删)

【Spring 4.0】Spring入门之第一个程序HelloWorld实现相关推荐

  1. 如何:从Spring 4.0快速入门以构建简单的REST-Like API(演练)

    如何:从Spring 4.0快速入门以构建简单的REST-Like API(演练) 关于使用Spring MVC创建Web API的另一篇教程. 不太复杂. 只是一个演练. 生成的应用程序将提供简单的 ...

  2. Android Studio 教程:入门开发第一个程序

    Android Studio 教程:入门开发第一个程序 2018.09.11 14:30 16005浏览 开发第一应用 可以开发属于自己的应用,是否有点小激动?好吧!让我们开始,首先点击Start a ...

  3. actionscript 3.0 怎么写android 程序,(ActionScript3.0笔记)第一个程序HelloWorld!

    (ActionScript3.0笔记)第一个程序HelloWorld! 创建我的第一个ActionScript3.0程序--HelloWord! 首先下载ActionScript3.0的集成开发环境, ...

  4. 程序员入门的第一个程序,打印输出 “ HelloWorld “

    程序员入门的第一个程序,打印输出 " HelloWorld " HelloWorld 中文意思是"你好世界".因为 The C Programming Lang ...

  5. 2018年9月28日第一个程序HelloWorld

    A编写第一个程序 HelloWorld public class HelloWorld { //一个文件只能有一个public的class // 一个文件中可以有多个类,但是只能有一个公开的类 pub ...

  6. java怎么开始学dos,第一阶段-Java基础知识:【第一章 DOS命令与开发环境的配置 + 第一个程序HelloWorld】...

    加油Ideal星河滚烫  你是人间理想 第一阶段 JAVA基础知识 第一章 开发环境的配置 Dos 命令 在正式进入Java学习之前我们来了解一个看起来B格很高的东西--Dos命令 DOS命令,计算机 ...

  7. Spring 5.0+Spring Boot+security+spring cloud oauth2+Redis整合详情,记录那些遇到的一些坑

    1.使用的技术以及版本号 JDK8.0 Spring 5.0 oauth2.0 redis2.0 2.项目采用MAVEN管理. pom文件中加入: < dependency > < ...

  8. python windows窗口置顶_Python入门:第一个程序“Hello, world”

    本文主要内容 安装Python 使用IDLE和基础交互模式 编写一个简单的程序 使用IDLE的Python shell窗口 本章将介绍Python和IDLE的下载.安装和启动过程,IDLE是Pytho ...

  9. java第一个程序编译失败,零基础java第一个程序HelloWorld,编译,环境变量,运行,注释...

    1.开发第一个java程序:HelloWorld public class HelloWorld{ // 这是一个类,类名叫做HelloWorld public static void main(St ...

最新文章

  1. pthread_cond pthread_mutex
  2. JavaEE 要懂的小事:二、图解 Cookie(小甜饼)
  3. ML之SSIM:基于输入图片RGB的三维向量利用SSIM(结构相似性度量)算法进行判别
  4. java结丹期(14)----javaweb(cookiesession)
  5. 用c#输出正九九乘法表_用C#写九九乘法表
  6. 从零开始搭建口袋妖怪管理系统(3)-实现一个简单的SPA管理系统
  7. 我是技术男,也曾创过业,也曾拿过风投...
  8. Vue----常见面试题
  9. Web 实时推送技术如何弥补 HTTP 协议的缺陷? | 技术头条
  10. 深入理解分布式事务,高并发下分布式事务的解决方案
  11. 姆巴佩独造三球一战成名 阿里云打破世界杯流量纪录 1
  12. bzoj 1603 打谷机
  13. Qt调用jrtplib实现单播、多播和广播
  14. MultipartFile多文件上传
  15. 采购计算机申请,采购申请报告格式
  16. python statsmodel 回归结果提取(回归系数、t值、pvalue、R方、、、、)
  17. plsql如何显示表结构图_如何用PLSQL导出数据库存表结构信息
  18. 给高特键轴开盖的操作技巧
  19. promise 读书笔记,promise核心方法(手写promise)
  20. 什么是死锁,如何避免死锁?

热门文章

  1. 京东css3动画全屏海报_30个免费的CSS3动画片段代码
  2. 多示例学习(Multiple Instance Learning)
  3. Sublime3安装emmet之后,按tab键没有反应?
  4. Odoo14的退货管理模块
  5. 高薪招聘能讲课的JAVA程序员,专、兼职均可
  6. CSS高级技巧(七)
  7. 解决联想拯救者r9000p于ubuntu20.04没有WIFI的问题
  8. element-ui带输入建议的input框踩坑--输入建议空白
  9. 中英文对照 —— 十二星座
  10. 又一家企业暴雷跑路,17000多人受骗,涉金额数亿元!