http://blog.csdn.net/yerenyuan_pku/article/details/52832145

Spring4.2.5的开发环境搭建好了之后,我们来编写Spring的第一个案例,并测试Spring的开发环境。 
首先在Eclipse中新建一个普通的Java Project,名称为spring_first,迅速搭建好Spring4.2.5的开发环境。 
然后在src目录下新建一个cn.itcast.service包,并在该包下创建一个接口——PersonService.java,其代码如下:

public interface PersonService {

    void save();

}

在Spring开发中建议大家使用面向接口编程,若我们要实现软件各层之间的解耦,须通过接口。 
紧接着在src目录下新建一个cn.itcast.service.impl包,并在该包下创建PersonService接口的实现类——PersonServiceBean.java,其代码如下:

public class PersonServiceBean implements PersonService {
@Override
public void save() {
System.out.println("我是save()方法");
}
}

现在我们就要把该业务bean交给Spring容器进行管理了,只须在Spring的配置文件beans.xml中添加如下代码:

<bean id="personService" class="cn.itcast.service.impl.PersonServiceBean"></bean>

注意:id属性本身就属于XML的一个属性,那么这个属性会受到XML解析器的验证,id属性的值是不能包含特殊字符的,如”/”,但有些情况下我们要为bean取的名称是要用到这些特殊字符的,这时候我们就需要使用到name属性了。 
再接下来我们编写测试代码,在src目录下新建一个junit.test包,并在该包下新建一个JUnit Test Case——SpringTest.java,在SpringTest.Java的文件中加入测试代码,如下:

public class SpringTest {

    @Test
public void test() {
// ApplicationContext是接口
ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); // 实例化Spring容器
PersonService personService = (PersonService) ctx.getBean("personService"); // 从Spring容器取得bean
personService.save();
} }

当Spring容器启动后,因为Spring容器可以管理bean对象的创建、销毁等生命周期,所以我们只需从容器直接获取bean对象就行,而不用编写一句代码来创建bean对象。 
最后运行test方法,Eclipse控制台打印如下: 

这就是Spring的第一个案例。源码可点击Spring的第一个案例——spring_first下载。

(转)编写Spring的第一个案例并测试Spring的开发环境的更多相关文章

  1. 第一部分 代码组织概念,集成开发环境(IDE)

    代码组织概念 主要是代码文件,项目和解决方案. 解决方案(.sln)包含多个项目(.csproj),一个项目又包含多个文件(.cs). 集成开发环境(IDE): 由编辑.编译.调试,以及用户图形界面, ...

  2. 全球第一免费开源ERP Odoo Ubuntu最佳开发环境独家首发分享

    起源 近年来随着国内的互联网经济的快速腾飞,诞生了很多开源软件创造的市场价值以及企业价值神话,特别是对于企业ERP领域,一直以来都是高昂的国内外产品充实,国内的中小成长型企业越来越需要一套好看又能打, ...

  3. Spring+SpringMVC+Hibernate小案例(实现Spring对Hibernate的事务管理)

    原文地址:https://blog.csdn.net/jiegegeaa1/article/details/81975286 一.工作环境 编辑器用的是MyEclipse,用Mysql数据库,mave ...

  4. Spring Boot 2.x(三):搭建开发环境(整合Spring Data JPA)

    为什么是JPA JPA虽然小众,但是足够优雅╮(╯_╰)╭,由于微服务的兴起,服务粒度的细化,多表联合的场景逐渐减少,更多的是一些简单的单表查询,而这正是JPA的强项所在.所以,以后的实战项目中我也会 ...

  5. [maven学习笔记]第一节,认识maven,搭建maven开发环境,写第一个HelloWorld

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/40142771 maven官网:http://maven.apache.org/ 学习视 ...

  6. 第一章:java语言概述与开发环境

    前言: 1.程序是什么? 程序是对现实世界的数字化模拟! 2.编程语言是工具,程序的作用就是解决问题!  重要的思路! 该知识点能解决什么问题?   1.语言特性:单继承.多接口!       纯面向 ...

  7. Ionic 入门与实战之第二章第一节:Ionic 环境搭建之开发环境配置

    原文发表于我的技术博客 本文是「Ionic 入门与实战」系列连载的第二章第一节,主要对 Ionic 的开发环境配置做了简要的介绍,本文介绍的开发环境为 Mac 系统,Windows 系统基本类似,少许 ...

  8. Spring多开发环境配置

    在项目开发中,多环境的的配置可以方便在不同环境的切换,减少错误的产生 一.properties文件的多环境配置 properties文件可以根据不同的后缀来区分不同的环境 application.pr ...

  9. 【一头扎进Spring】 01 | 从 HelloWorld 开始看Spring

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

随机推荐

  1. SPOJ:One piece(不错的带权括号最大匹配问题)

    One of DB and TN common interests is traveling. One day, they went to Grand Line and found One Piece ...

  2. NSArray是强引用容器

    经常比较疑惑NSArray.NSDictionary.NSSet这几个对象容器管理对象所采用的方式是“强引用”还是“弱引用”. 通过简单的命令行程序得到的结论是“NSArray.NSDictionar ...

  3. LRU原理和Redis实现——一个今日头条的面试题

    看了评论,发现有些地方有问题,更新了图和一些描述,希望可以更清晰一些,也欢迎关注,还会有干货文章 -------- 很久前参加过今日头条的面试,遇到一个题,目前半部分是如何实现 LRU,后半部分是 R ...

  4. gunicorn启动django时静态文件的加载

    目前在用nginx+gunicorn对django进行部署 当我用gunicorn -w 4 -b 127.0.0.1:8080 myproject.wsig:application启动django时 ...

  5. Collection View Programming Guide for iOS---(一)----About iOS Collection Views

    Next About iOS Collection Views 关于iOS Collection Views A collection view is a way to present an orde ...

  6. P5154 数列游戏(区间dp)

    传送门 果然和dp有关的东西我绝对做不出来啊-- 设\(dp[i][j]\)表示消完区间\([i,j]\)中的数之后能得到的最大分数,如果消不完则为\(-inf\),否则枚举断点.顺便如果\(a[i] ...

  7. ASP.NET Core中间件计算Http请求时间

    ASP.NET Core通过RequestDelegate这个委托类型来定义中间件 public delegate Task RequestDelegate(HttpContext context); ...

  8. Linux中查看端口占用情况及结束相应进程

    1.查看某端口占用情况lsof -i :端口号 例如:lsof -i :81 显示如下信息: COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME ja ...

  9. Angular4项目,默认的package.json创建及配置

        1.使用如下命令,可以创建一个默认的 package.json npm  init     创建后如下图所示: 添加 angular4 的 dependencies: npm install@ ...

  10. 微信小程序开发常见的拉起外部地图软件进行导航的功能

    <view class="dh" bindtap="mapNavigation" data-addr="{{address}}"> ...