我的第一个Spring程序

1、程序结构

2、各个文件

ByeService.java

package com.service;

public class ByeService {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void sayBye() {
        System.out.println("Bye " + name);
    }
}

UserService.java

package com.service;

public class UserService {

    private String name;
    private ByeService byeService2;

    public ByeService getByeService2() {
        return byeService2;
    }

    public void setByeService2(ByeService byeService2) {
        this.byeService2 = byeService2;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void sayHello() {
        System.out.println("hello " + name);
        byeService2.sayBye();
    }

}

Test.java

package com.test;

import com.service.UserService;
import com.util.ApplicationContextUtil;

public class Test {

    public static void main(String[] args) {
        ((UserService) ApplicationContextUtil.getApplicationContext().getBean(
                "userService")).sayHello();
    }
}

ApplicationContextUtil.java

package com.util;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

final public class ApplicationContextUtil {
    private static ApplicationContext ac = null;

    private ApplicationContextUtil() {

    }

    static {
        ac = new ClassPathXmlApplicationContext("applicationContext.xml");
    }

    public static ApplicationContext getApplicationContext() {
        return ac;
    }
}

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:context="http://www.springframework.org/schema/context"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
                http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
                http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
    <!-- 在容器文件中配置bean(service/dao/domain/action/数据源 -->
    <!-- 配置bean和注入属性 -->
    <!-- 相当于新建了一个userService对象 -->
    <bean id="userService" class="com.service.UserService">
        <!-- 相当于调用了name的setName()方法 -->
        <property name="name">
            <value>涂富杰</value>
        </property>
        <property name="byeService2" ref="byeService"></property>
    </bean>
    <bean id="byeService" class="com.service.ByeService">
        <property name="name" value="小杰" />
    </bean>
</beans>
时间: 2024-10-08 16:16:45

我的第一个Spring程序的相关文章

hello world spring ioc——第一个spring程序

认真对待学习 最近又重新阅读了spring官方文档 对里面的有用的高频的配进行记录和分享. 简介 控制反转(IoC)又被称作依赖注入(DI).它是一个对象定义其依赖的过程,它的依赖也就是与它一起合作的其它对象,这个过程只能通过构造方法参数.工厂方法参数.或者被构造或从工厂方法返回后通过settter方法设置其属性来实现.然后容器在创建bean时注入这些依赖关系.这个过程本质上是反过来的,由bean本身控制实例化,或者直接通过类的结构或Service定位器模式定位它自己的依赖,因此得其名曰控制反转

Spring学习之路三——第一个Spring程序(体会IoC)

体会IoC:Spring通过一种称作控制反转(IoC)的技术促进了松耦合.当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象.你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它. 步骤如下: 1.建立web功能 2.导入jar包 3.配置applicationContext.xml 4.创建类 5.测试 具体代码如下 UserDao.java 1 package cn.itcast

第一个Spring 程序

一 搭建好开发环境 JDK Eclipse 等 二 下载jar包 https://commons.apache.org/logging/ https://repo.spring.io/release/org/springframework/spring 三 添加依赖jar包 把下载下来的jar包 添加到 我们新建的java项目 属性 JavaBuildPath的Libraries中 四 新建bean类 MyClass  并为属性 添加set 方法(以便容器 注入 也可以用 构造器 方式) pac

第一个Spring MVC程序

最近公司项目要开始使用Spring MVC替代Struts2了,就学习了一下Spring MVC的使用.这是第一个Spring mvc程序,分别使用xml和注解两种方式. 一.使用xml格式进行构建 1.使用SpringMVC,首选需要在web.xml中配置拦截器和过滤器 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XM

我的第一个spring boot程序(spring boot 学习笔记之二)

第一个spring boot程序 写在前面:鉴于spring注解以及springMVC的配置有大量细节和知识点,在学习理解之后,我们将直接进入spring boot的学习,在后续学习中用到注解及其他相关知识点时会再次理解.要运行起第一个Spring boot特别简单,用IDEA包含了Spring Boot的引导,直接新建一个spring boot项目. 注意: 1.第一次新建Spring boot项目的时候,maven会下载大量的依赖到本地,所以特别慢,耐心等待或者用国内的maven公库都行(自

搭建Spring开发环境并编写第一个Spring小程序

一.前面,我写了一篇Spring框架的基础知识文章,里面没讲到如何配置Spring开发环境,今天就来讲一下,如果大家不知道怎么下载Spring软件包的话,可以看我那篇文章: http://blog.csdn.net/u012561176/article/details/45971917 ,里面讲述了2种获得Spring软件包的方式. 建议大家配置Spring环境之前先了解一下IoC(控制反转)的原理,可以看我写的文章:http://blog.csdn.net/u012561176/article

一个简单的Spring程序

首先,要用Eclipse开发Spring程序,需要安装Spring插件并重启Eclipse 具体操作: 新建java Project后,导入需要使用的包(提前下好Spring),Spring包包含6个部分的jar,我们只要导入用的即可 程序开发场景准备: 角色 - 执行动作的人群:proformer,接口 实现的类:Juggler,杂技师 发布指令的主类:Main 舞台准备:spring-idol.xml,配置bean,谁具备上场表现的机会 具体代码: Proformer接口: package

02-第一个Spring Boot应用程序

Spring Boot深度课程系列 02第一个Spring Boot应用程序 1.版本要求 集成开发环境:IntelliJ IDEA 2017.2.1 ,Spring Boot 版本:2.2.42. 2.步骤介绍 3.编写Helloworld,参照Spring MVC的写法 A) 在chapter01文件夹下创建包controller,创建类HelloController. B) 代码如下 package com.java.chapter01.controller; import org.spr

Spring--1一个简单的Spring程序

1.Spring概述 --Spring是一个开源的以控制反转(Inverse(相反) of Control,IoC)和面向切面(Aspect(方向) Oriented(定向) Programming,AOP)为核心的框架. 用于简化企业级开放. --控制反转:应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护由外部容器负责, 此时对依赖对象的控制权就由应用转移到了外部容器.这种控制权的转移就称为控制反转. 运行时,可通过依赖注入的方式将对象注入到应用的组件中. --面向切面:也称为面向切面