JavaEE自学记录 (一) Spring框架第一个小程序示例-编写第一个Hello World程序

JavaEE第一个小程序,如何利用Spring框架编写第一个Hello World程序
一.什么是Spring框架
Spring是一个分层的Java SE/EE full-stack(一站式)轻量级开源框架,它以IoC(控制反转)和AOP(面向切面编程)为内核,使用基本的JavaBean来完成以前只能用EJB(Java企业Bean)完成的工作,取代了EJB臃肿,低效的开发模式
Spring致力于JavaEE应用各层的解决方案,在表现层提供SpringMVC以及Structs框架的整合功能;
在业务逻辑层可以管理事务,记录日志等;在持久层可以整合MyBatis、Hibernate等技术.
虽然Spring贯穿于表现层、业务逻辑层和持久层,但它并不是取代已有的框架,而是以高度的开放性与它们进行无缝整合
二.Spring框架的优点
1.非侵入式设计
2.方便解耦,简化开发
3.支持AOP面向切面编程
4.支持声明式事务处理
5.方便程序的测试
6.方便集成各种优秀框架
7.降低JavaEE API的使用难度
三.Spring的下载以及目录结构
本例所用的Spring的版本均为4.3.6
下载地址为 http://repo.spring.io/simple/libs-release-local/org/springframework/spring/4.3.6.RELEASE/
Spring框架压缩包下载后解压会看见如下文件夹
docs、libs、以及schema文件夹
docs中包含API文档和开发规范,libs文件夹中包含开发所需要的JAR包和源码,schema文件夹中包含开发所需要schema文件,这些文件定义了Spring相关配置文件的约束
除此之外,我们还需要下载一个第三方的依赖包,Spring的核心容器还需要依赖commons.logging的JAR包
该包的下载地址为 http://commons.apache.org/proper/commons-logging/download_logging.cgi

下载完以上的JAR我们就可以进行第一个Spring的小程序开发示例了
首先,需要的有
jdk版本为1.8
开发工具为Eclipse
(1)在Eclipse中,创建一个名为TestSpring的Web项目,将Spring框架的4个基础包以及依赖包common-logging的JAR包复制到项目的WebContent的WEB-INF的lib目录中,如下图
新建项目时要选Dynamic Web Project在这里插入图片描述这里解释一下为什么复制这么多JAR包,在我第一次学习的时候我方便图省事就直接把所有下载的JAR包全都复制到项目里了,但真正需要的只有
spring-beans-4.3.6.RELEASE.jar
spring-context-4.3.6.RELEASE.jar
spring-core-4.3.6.RELEASE.jar
spring-expression-4.3.6.RELEASE.jar
还有依赖包commons-logging-1.2.jar
(2)在src的目录下,创建一个叫com.itheima.ioc包,并在包中创建接口UserDao,然后在接口定义一个say()方法,如下图
在这里插入图片描述(3)在com.itheima.ioc包下,创建UserDao接口的实现类UserDaoImpl,该类中需要实现接口中的say()方法,并在方法中编写一条输出语句
在这里插入图片描述(4)在src目录下,创建Spring的配置文件applicationContext.xml,并在配置文件中创建一个为id为userDao的Bean,如下图
在这里插入图片描述这里解释一下,这个XML文件是由一个模板,代码不需要都手动打出来,在以后真正实践中只需要改其中的bean id 和 class,name等属性,当然在以后的学习当中,Spring的装配方式有很多,这里用的方法只是初学者刚开始最基础的用法。

(5)在com.itheima.ioc包下,创建测试类TestIoC,并在类中编写main()方法,在main()方法中,需要初始化Spring容器,并加载配置文件,然后通过Spring容器获取userDao实例(即Java对象),最后调用say()方法,如下图
在这里插入图片描述执行程序后控制台输出结果为
在这里插入图片描述此篇教程主要是讲解一下如何通过Spring容器来获取实现类对象,这也是IoC控制反战的工作机制

感谢黑马程序员所编著书籍 JavaEE企业级应用开发教程(Spring+SpringMVC+MyBatis)
本人也是通过这本书初步了解了Spring的IoC工作机制。
教程篇幅有限,如有错误请各位指点出来。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值