`

最快实现spring 实例

阅读更多

      如果你是一个java程序,肯定会听过spring。然后你也会对IOC和AOP倍感好奇。我也不罗列概念,如果不懂可以到网上百科一下,很详细。 我简单的引入控制反转(IOC)的形式以及作用

    实例1:A类需要B类的实例时,直接在A类中new一个B 的实例。这是中耦合性太强

public class B {
    public B(){}
    public void bout(){
        System.out.println("B");
    }
}

public class A  {
    private B b=new B();
    public A(B b){
        this.b=b;
    }
    public void aout(){
        System.out.println(“A”);
        b.bout();
    }
}

 实例2:

//定义接口
public interface InterfaceB {
    public void out();
}
//实现接口
public class ClassB implements InterfaceB {
    public ClassB(){
        
    }
    public void out() {

    }

}
public class ClassA {
    private InterfaceB b;
   //这是我们平时用的方法   
    public ClassA(){
        this.b=new ClassB();
    }
   //这就是我想要结果,将需要的实例由外部类提供。而不由自身实现。
    public ClassA(InterfaceB b){
        this.b=b;        
    }
    public void out(){
        System.out.println("");
        this.b.out();
    }
}

   那么我们要的实例由谁提供管理呢? 这就要说到spring里面的IOC。还是说说它的简单概念。

   IOC Inversion of Control,即控制反转,是一个重要的面向对象编程的法则,用来减少耦合度。控制反转还有一个名字叫做依赖注入(Dependency Injection),简称DI。IoC不是什么技术,与GoF一样,是一种设计模式。应用控制反转,对象在被创建的时候,由一个调控所有对象的容器,将其所依赖的对象的引用,传递给它。也可以说,依赖被注入到对象中。

   实例说明问题 :

   工程图片

 

    HelloService 接口

    

/**
 * 
 */
package com.ch.hello;

/**
 * @author 陈华
 *
 */
public interface HelloService {
	public void sayHello();
}

 HelloServiceImp

/**
 * 
 */
package com.ch.hello.impl;

import com.ch.hello.HelloService;

/**
 * @author 陈华
 * 
 */
public class HelloServiceImp implements HelloService {

	private String helloworld;

	public HelloServiceImp() {
	}

	public HelloServiceImp(String helloworld) {
		this.helloworld = helloworld;
	}

	public void setHelloworld(String helloworld) {
		this.helloworld = helloworld;
	}

	public void sayHello() {
		System.out.println(this.helloworld);
	}

}

 

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"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
	<bean id="HelloService" class="com.ch.hello.impl.HelloServiceImp">
		<property name="helloworld" value="hello,android!"></property>
	</bean>
</beans>

 

测试类

/**
 * 
 */
package com.ch.client;

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

import com.ch.hello.HelloService;

/**
 * @author 陈华
 * 
 */
public class HelloClient {

	public static void main(String[] args) {
		ApplicationContext ac=new FileSystemXmlApplicationContext("src/applicationContext.xml");
		HelloService helloService=(HelloService)ac.getBean("HelloService");
		helloService.sayHello();
	}

}

 ac.getBean("HelloService");  这句是关键获取实例

    创建一个简单的java工程,引入spring 的core包。用myeclipse6.5就可以啦。非常快

   我的 QQ 455927885  一起探讨学习。

  • 大小: 20.4 KB
分享到:
评论

相关推荐

    使用Spring快速实现web开发的小实例工程源代码

    Spring作为Java领域最流行的轻量级框架之一,提供了丰富的功能,包括依赖注入、AOP(面向切面编程)、数据访问以及Web MVC等,极大地简化了企业级应用的开发流程。 首先,让我们从项目结构开始。在"myHelloWorld"这...

    cas+shiro+spring实例

    标题 "cas+shiro+spring实例" 涉及到的是一个集成CAS(Central Authentication Service)和Apache Shiro的Spring应用程序实例。这个实例是专为初学者设计的,旨在帮助他们理解和实现基于CAS的单点登录(Single Sign-...

    spring aop ioc实例

    开发者只需要定义对象的配置,如类的bean定义,然后由容器负责实例化、装配和管理这些对象。这降低了组件之间的耦合度,因为对象的依赖关系不再硬编码在代码中,而是通过配置文件或注解来声明。 Spring的bean定义...

    Spring高手实例

    实例将展示如何配置Spring Security实现用户认证、授权、CSRF防护等功能。 8. **源码解析** 源码分析部分将深入到Spring的内部工作机制,如IoC容器的初始化、AOP代理的生成、Spring MVC的请求处理流程等,有助于...

    spring完整demo实例

    在这个"spring完整demo实例"中,我们将深入探讨Spring的主要功能和如何在实际项目中应用它们。 首先,Spring的核心特性——依赖注入,是它简化软件开发的关键。依赖注入允许我们解耦组件,使得代码更加模块化,易于...

    cxf+spring开发webservice客户端与服务端实例

    Spring是Java领域最广泛使用的框架之一,它提供了一个全面的编程和配置模型,简化了企业级应用的开发。Spring的核心特性包括依赖注入(DI)和面向切面编程(AOP),并有强大的支持用于事务管理、数据访问等。 三、...

    Spring MVC 入门实例

    这篇文章将教你快速地上手使用 Spring 框架. 如果你手上有一本《Spring in Action》, 那么你最好从第三部分"Spring 在 Web 层的应用--建立 Web 层"开始看, 否则那将是一场恶梦! 首先, 我需要在你心里建立起 Spring...

    spring mvc,spring, hibernate 整合登录实例

    在本文中,我们将深入探讨如何将Spring MVC、Spring和Hibernate这三大流行框架整合在一起,以构建一个完整的登录实例。这个实例旨在提供一个清晰、简洁且易于理解的代码结构,帮助初学者快速上手。 首先,Spring ...

    Spring定时任务(多个实例)

    在Spring框架中,定时任务是实现自动化操作的重要手段,它允许开发者在特定时间点执行特定的任务,例如数据清理、报表生成等。本篇文章将详细探讨Spring中的定时任务,包括配置方式、注解实现以及集成Quartz库进行更...

    struts2_mybatis_spring_框架实例整合_数据库 文档

    在与Spring整合时,MyBatis的SqlSessionFactory可以通过Spring的Bean配置管理,实现事务控制和依赖注入。 Spring框架作为全能型的IoC(Inversion of Control)/DI(Dependency Injection)容器,负责管理和装配应用...

    spring容器简单实例

    本实例将带你深入理解Spring容器的基本使用,通过实际操作来帮助你快速上手。 1. **Spring容器概述** Spring容器是Spring框架的核心,负责管理对象的生命周期和依赖关系。主要有两种类型的容器:BeanFactory和...

    spring mvc+ibats实例

    在本实例中,iBatis可能是通过XML配置文件或注解方式与Spring MVC集成,实现数据访问层的事务管理和依赖注入。 3. Maven: Maven是Java项目管理工具,用于构建、依赖管理和项目信息管理。`pom.xml`文件是Maven的...

    spring cloud 实战教程

    接着,会介绍Spring Cloud的核心组件——Eureka,它是服务注册与发现的实现,让服务提供者和服务消费者能够自动发现彼此。通过实例,读者可以学习到如何创建和注册服务,以及如何实现服务调用。 Spring Cloud ...

    最全最经典spring-mvc教程

    这个"最全最经典spring-mvc教程"应该会详细讲解上述所有概念,并可能通过实例演示如何配置、创建和调试Spring MVC项目。对于想要深入理解和使用Spring MVC的开发者来说,这是一份非常宝贵的资源。通过学习这个教程,...

    spring mobile 实例

    1. **HelloWorld**: 这是最基础的示例,展示了如何在 Spring MVC 应用中集成 Spring Mobile,并简单地根据不同设备展示不同的欢迎消息。 2. **DeviceSpecificViews**: 此示例演示了如何为不同类型的设备创建不同的...

    spring实例教程

    通过这个简单的Spring实例教程,你可以学习如何创建Spring项目,配置Bean,实现AOP,进行数据库操作,构建Web应用,并了解Spring Boot和Spring Cloud的基本用法。实践中,你将逐渐理解Spring如何通过其强大的功能和...

    Spring Quartz 任务调度实例

    结合Spring框架,可以方便地在企业级应用中实现复杂的时间触发逻辑。本实例提供了可以直接运行的任务调度解决方案,既可以作为服务器启动的一部分自动调用,也可以通过main方法入口手动触发。 在Spring中集成Quartz...

    spring+springMVC+mybatis简单实例

    在SSM实例中,Spring作为整个应用的容器,管理着其他组件的生命周期和对象之间的依赖关系。Spring通过XML配置或注解方式来定义bean,使得代码更加解耦和易于维护。 2. **SpringMVC**:SpringMVC是Spring框架的一个...

    SPRING MVC入门实例

    本实例将帮助初学者理解并掌握 Spring MVC 的基本概念和使用方法。 在 Spring MVC 中,Model 代表应用程序的数据模型,View 负责数据的展示,而 Controller 处理用户请求并协调 Model 和 View 的工作。通过使用 ...

    spring入门实例

    在这个"Spring入门实例"中,我们将探讨Spring的基本概念、核心特性以及如何搭建一个简单的Spring项目。 首先,我们需要了解Spring的核心概念——依赖注入(Dependency Injection,简称DI)。依赖注入是一种设计模式...

Global site tag (gtag.js) - Google Analytics