spring控制反转接口编程:
首先编写接口interfere:ChangeLetter.java
package cn.hyl.hsp.inter; public interface ChangeLetter { public String change(); }
其次编写实现接口类:UpperLetter.java,LowwerLetter.java
package cn.hyl.hsp.inter; public class UpperLetter implements ChangeLetter{ private String str; @Override public String change() { return str.toLowerCase(); } public String getStr() { return str; } public void setStr(String str) { this.str = str; } }
package cn.hyl.hsp.inter; public class LowwerLetter implements ChangeLetter{ private String str; @Override public String change() { return str.toUpperCase(); } public String getStr() { return str; } public void setStr(String str) { this.str = str; } }
然后在beans.xml里配置bean
<?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 id="changeLetter" class="cn.hyl.hsp.inter.UpperLetter"> <property name="str" value="ABRTY" /> </bean> </beans>
最后调用实现程序:
package cn.hyl.hsp.inter; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class App { /** * @param args */ public static void main(String[] args) { ApplicationContext ac=new ClassPathXmlApplicationContext("cn/hyl/hsp/inter/beans.xml"); ChangeLetter changeLetter=(ChangeLetter) ac.getBean("changeLetter"); System.out.println(changeLetter.change()); } }
总结:可以减少层(web层) 和业务层的耦合度.
相关推荐
五、 注意接口的使用: 8 第五课:IOC(DI)配置及应用 9 一、 什么是IOC、DI 9 二、 编辑xml文件时,没有提示 9 三、 注入类型(Injecting dependencies) 9 (一) setter注入类型Setter Injection 9 (二) 构造方法...
(用户持久化类)重构第一步——面向接口编程 8 重构第二步——工厂(Factory)模式 9 重构第三步——工厂(Factory)模式的改进 10 重构第四步-IoC容器 11 控制反转(IoC)/依赖注入(DI) 11 什么是控制反转...
Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单...
适用于具有一定编程基础和对技术有兴趣的开发者,以及大学生作为学习参考的实践项目。 关键词:Spring Boot、Vue.js、Web应用程序开发、源代码、论文文档 系统概述: 本系统基于Spring Boot、Vue.js、Element UI和...
五、 注意接口的使用: 8 第五课:IOC(DI)配置及应用 9 一、 什么是IOC、DI 9 二、 编辑xml文件时,没有提示 9 三、 注入类型(Injecting dependencies) 9 (一) setter注入类型Setter Injection 9 (二) 构造方法...
新手学习spring的笔记,面向接口(抽象)编程的概念与好处,IOC/DI的概念与好处,AOP的概念与好处,Spring简介,Spring应用IOC/DI,Spring应用AOP(重要),Struts2.1.6 + Spring2.5.6 + Hibernate3.3.2整合……
面向接口编程(面向抽象编程) 什么是IOC(DI),有什么好处 Spring简介 Spring IOC配置与应用 什么是AOP Spring AOP配置与应用 Spring整合Hibernate Struts2.1.6 + Spring2.5.6 + Hibernate3.3.2
使用 Spring 可插入的 MVC 架构,从而在使用 Spring 进行 WEB 开发时,可以选择使用 Spring的 Spring MVC 框架或集成其他 MVC 开发框架,如 Struts1(现在一般不用),Struts2 等。SpringMVC 已经成为目前最主流的 MVC...
首先我们应该想想为什么要使用aop面向切面编程?面向切面的底层实现是什么?小编在这里举个例子吧 小编首先给出Spring全家桶,方便大家下载使用—->Spring全家桶 1.自定义代理对象代理类以及实现类 1.1 定义接口...
依赖注入提倡使用接口编程;依赖注入使得可以开发各个组件,然后根据组件之间的依赖关系注入组装。 所谓依赖,从程序的角度看,就是比如 A 要调用 B 的方法,那么 A 就依赖于 B,反正 A 要用到 B,则 A 依赖于 B。...
Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单...
如果不一致就会出错,这一章主要在上一讲基于接口编程的基础上完成如下事情: 1. 用 mybatis 查询数据,包括列表 2. 用 mybatis 增加数据 3. 用 mybatis 更新数据. 4. 用 mybatis 删除数据. 查询数据,前面已经讲过...
编程模型习语,为 Spring Boot 应用程序提供 OpenFeign 集成。 一、特点 声明式 REST 客户端:Feign 创建了用 JAX-RS 或 Spring MVC 注释修饰的接口的动态实现 2. 建筑 2.1. 基本编译和测试 要构建源代码,您需要...
第三章 Spring AOP(面向切面编程)..........351 第四章 Spring中的数据访问..........353 CVS学习笔记.................355 PL/SQL学习笔记............358 第一章 PL/SQL概述........................358 第二章 ...
开发笔记 1 Java 1.1 Java 关键字解释:▣ ...Spring高级:后处理bean的接口BeanPostProcessor和BeanFactoryPostProcessor SpringMVC基础:SpringMVC入门▣SpringMVC架构▣SpringMVC参数的传递 Spr
到现在,我们已经基本搭建起了项目的框架,但是项目中还存在一个问题,就是尽管层与层之间使用了接口进行隔离,但实例化接口的时候,还是引入了接口... 面向接口编程,Controller应该只依赖于站点业务层的接口,而不能
第三章 Spring AOP(面向切面编程)..........351 第四章 Spring中的数据访问..........353 CVS学习笔记.................355 PL/SQL学习笔记............358 第一章 PL/SQL概述........................358 第二章 PL...
2. SpringCloud技术栈 3. Restful API简介和设计原则 4. Restful API用法 5. 使用Postman测试接口 6. 使用Swagger2生成API文档 7. Eureka注册中心 8. Feign客户端 9. Hystrix断路器 10. Zuul网关 11....
\contentsline {chapter}{Contents}{2}{section*.1} {1}Java基础}{17}{chapter.1} {1.1}基本语法}{17}{section.1.1} {1.2}数字表达方式}{17}{section.1.2} {1.3}补码}{19}{section.1.3} {1.3.1}总结}{23}{...