对象的创建
了解Spring必须得了解一下对象的工厂模式.
Model:
public interface Fruit {
public void eat();
}
public class Apple implements Fruit{
public void eat(){
System.out.println("吃苹果");
}
}
public class Orange implements Fruit{
public void eat(){
System.out.println("吃桔子");
}
}
直接创建对象方式:
Fruit fruit = new Orange();
fruit.eat();
此方式代码耦合度较高,需要解耦合
工厂方式创建对象
public class FruitFactory {
public static Fruit getInstance(int type){
if(type == 1){
return new Apple();
}else if(type == 2){
return new Orange();
}
return null;
}
}
public class Test{
public static void main(String[] args) {
Fruit fruit = FruitFactory.getInstance(2);
fruit.eat();
}
}
此方式在一定程序上起到了解耦合的作用,但是还未完全解耦合.
此方式会造成工厂过多的问题出现.
利用Spring完全解耦合
<?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:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="fruit" class="chapter1.model.Orange"/>
</beans>
public class Test{
public static void main(String[] args) {
ApplicationContext act = new ClassPathXmlApplicationContext(
"applicationContext.xml");
Fruit fruit = (Fruit)act.getBean("fruit");
fruit.eat();
}
}
Spring的出现
Spring涉及到很多领域,请看下图:
我们需要掌握Spring中的技术
AOP:可以给服务层的方法进行拦截
Core:Ioc,控制反转,依赖注入
事务的配置
Spring是一个超级工厂,能够创建你系统中所需要用到的所有的对象,我们要用对象,需要向Spring这个工厂去索取.
环境的搭建:
用到哪些功能就加载哪些包,比如我现在只用到核心功能IOC这一块,就只需要导入下列包即可.(可以通过MyEclipse自动加载Spring支持的方式加入此包.)
以下为Core功能所需要的几个包
再看一下配置文件的编写
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:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
</beans>
bean的配置:
<bean id="fruit" class="chapter1.model.Orange" />
<bean name="/fruit" class="chapter1.model.Orange" />
id一般用来配置服务层或Dao层
name用来配置Action层,因为需要将导航地址配置在name属性中,name属性允许特殊符号的出现,如”/”
- 大小: 52.6 KB
- 大小: 9.1 KB
分享到:
相关推荐
Spring第一章Spring第一章Spring第一章Spring第一章Spring第一章Spring第一章Spring第一章Spring第一章
第一章 SpringCloud概要.pdf
NULL 博文链接:https://coderdream.iteye.com/blog/252275
NULL 博文链接:https://1151461406.iteye.com/blog/2389888
SCCE Spring 第一章
第2章 Spring简介 2.1 Spring Framework 2.1.1 Spring的模块介绍 2.1.2 Spring的发布版本 2.1.3 Spring的项目 2.2 安装Spring Framework 2.2.1 问题描述 2.2.2 解决...
第2章 Spring简介 2.1 Spring Framework 2.1.1 Spring的模块介绍 2.1.2 Spring的发布版本 2.1.3 Spring的项目 2.2 安装Spring Framework 2.2.1 问题描述 2.2.2 解决...
第2章 Spring简介 2.1 Spring Framework 2.1.1 Spring的模块介绍 2.1.2 Spring的发布版本 2.1.3 Spring的项目 2.2 安装Spring Framework 2.2.1 问题描述 2.2.2 解决方案 ...
Spring实战第一章无错源码
第一章 SpringData概述 1.持久层开发的问题 2.SpringData简介 第二章 JPA回顾 1.JPA基础 2.JPA实战 3.JPA的重要API介绍 第三章 SpringData JPA基础 1.SpringData JPA简介 2.SpringData JPA快速入门 3.SpringData Jpa...
第2章Spring入门 第3章Bean、消息、事件 第4章SpringAOP 第5章JDBC、事务支持 第6章Hibernate与Spring 第7章SpringWebMVC框架 第8章View层方案、Web框架整合 第9章API封装 第10章项目:Spring在线书签 ...
书中第一部分展示了Spring框架的两个核心特性:依赖注入和面向切面编程。第二部分以第一部分介绍的DI和AOP特性为基础,叙述了如何将这两个概念应用到应用程序的数据和业务层中。第三部分介绍了Spring构建 Web应用...
NULL 博文链接:https://1151461406.iteye.com/blog/2390667
图书简介 本书分为6大部分,其中第一部分为Spring概述性知识;第二部分讲解了Spring框架核心技术的内容;第三部分涵盖了在Spring中使用各种数据访问技术的内容;第四部分讲解业务层各种技术的知识;第五部分是...
根据项目要求,配置对用户名、密码、验证码的判断,和验证成功之后,在session中保存用户信息的处理。
书中第一部分展示了Spring框架的两个核心特性:依赖注入和面向切面编程。第二部分以第一部分介绍的DI和AOP特性为基础,叙述了如何将这两个概念应用到应用程序的数据和业务层中。第三部分介绍了Spring构建 Web应用...
图书简介 本书分为6大部分,其中第一部分为Spring概述性知识;第二部分讲解了Spring框架核心技术的内容;第三部分涵盖了在Spring中使用各种数据访问技术的内容;第四部分讲解业务层各种技术的知识;第五部分是...
北大青鸟spring最后一本书的 第五章,青鸟(国际)器材销售系统网站--(struts+Hibernate+Spring+Ajax版)【外加自己写的一个简单的,包括数据库】 我把jar包删了 !你需要自己加,就能运行!
spring in action 第三版只有英文版,通过阅读后剪切出比较重要的内容,方便大家学习。 本文档是第一章的内容。
第二章 使用SpringCloud框架实现一个微服务.pdf