Spring基础学习-(1)Spring基础知识
来源:互联网 发布:玄幻小说网络作家 编辑:程序博客网 时间:2024/04/29 19:14
提到Spring,根据自我理解跟各种资料先提到的就是IOC与AOP,即控制反转与面向切面,提供MVC及JDBC以及事务管理的技术,并容易与其他的框架整合。
一、Spring的优点
1、方便解耦,简化开发。通过Spring提供的IOC容器,可以将对象之间的依赖关系交由Spring进行控制,避免代码造成的过度耦合。
2、AOP编程的支持。通过Spring的AOP功能,方便进行面向切面编程。
3、声明式事物支持。通过声明方式进行事物管理,提高开发效率和质量。
4、方便程序的测试。可以用非容器依赖的编程方式进行几乎所有的测试工作。
5、方便集成各种优秀框架。Spring提供对各种框架的直接支持。
6、降低JavaEE API的使用难度。
7、Java源码是经典的学习范例。
二、Spring的体系结构
1、IOC
将类与类的关系从代码中脱离出来,用配置的方式进行依赖关系描述。BeanFactory接口是Sping框架的核心接口,实现容器的核心功能。Context模块构建于核心模块之上,扩展BeanFactory的功能。ApplicationContext接口是Context模块的核心接口。
2、AOP模块
3、数据访问和集成
4、Web及远程操作
该模块建立在Application Context模块之上,提供Web应用的各种工具类。
5、Web及远程访问
提供一个完成的类似Struts的MVC框架。
三、IOC
给出IOC三种注入的类型。
首先的有接口,然后有类继承接口。
public interface Person { void sayHello();}
public class Chinese implements Person{public void sayHello() {System.out.println("你好");} }
public class America implements Person{public void sayHello() {System.out.println("How do you do");}}
构造函数:
public class User { private Person p; public User(Person p){ this.p = p; } public void function(){ this.p.sayHello(); }}
public class Container {public static User getBean(){ Person p = new Chinese(); User user = new User(p); return user;}}
属性注入
public class User { private Person p; public void setPerson(Person p){ this.p = p; } public void function(){ this.p.sayHello(); }}
public class Container {public static User getBean(){ Person p = new Chinese(); User user = new User(); user.setPerson(p); return user;}}
接口注入
public interface UserIn { void inject(Person p);}
public class User1 implements UserIn{ private Person p; public void function(){ this.p.sayHello(); }public void inject(Person p) {this.p = p;}}
public class Container {public static User1 getBean(){// TODO Auto-generated method stub Person p = new Chinese(); User1 user = new User1(); user.inject(p); return user;}}
然后最后调用模块的函数
public class Test { public static void main(String[] args){ User user = Container.getBean(); user.function(); }}
基本上就是这样,代码的实例很简单,然后就是如何结合到Spring中,在这之前首先补充反射的知识。
三、Spring简单的持久层
1、领域对象
即称为实体类,也就是Bean对象。属于业务层,但是贯穿在展现层,业务层以及持久层。主要工作是从数据库表中加载数据并实例化领域对象,或者将领域对象持久化到数据库中
- Spring基础学习-(1)Spring基础知识
- Spring基础知识(1)
- Spring框架学习【基础知识】
- Spring框架学习【基础知识】
- Spring基础知识学习
- Spring学习笔记-基础知识
- Spring学习基础知识
- Spring 基础知识学习
- Spring学习之基础知识
- Spring学习笔记---1-Spring基础介绍
- Spring AOP学习笔记(1):AOP基础知识
- Spring学习笔记1——基础知识
- Spring学习笔记1——基础知识 .
- Spring学习笔记1——基础知识
- Spring学习笔记1——基础知识
- Spring学习笔记1——基础知识
- Spring学习笔记1——基础知识
- Spring学习笔记1——基础知识
- 求fibonacci数列第100项的值(Java实现)
- 云享-企业免费安装 www.cloudsharebox.com
- Java系统程序员修炼之道
- java语言标识符和保留字
- 初学FreeBSD
- Spring基础学习-(1)Spring基础知识
- 九月小结
- 经典排序算法 - 快速排序Quick sort
- java接口(interface)与抽象类(abstract class)的区别
- 经典排序算法 - 桶排序Bucket sort
- 我们是码农?还是手工艺人?
- java数据类型划分和常量与变量定义
- 内联函数---Inline Function
- java简单数据类型