您的位置:首页 > 编程语言 > Java开发

spring,hibernate—java与物联网方向

2014-06-29 22:02 337 查看
很久没写博客了,其实spring,hibernate学了有很久了,今天就一起整理了。
spring篇:
spring是一个非常流行的开源框架,spring的底层就是IoC(Inversion
of Control)和AOP(Aspect Oriented Programming)。
其中IoC即控制反转,也就是通常所说的依赖注入,可以理解为如下:不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器
(在 Spring 框架中是 IOC 容器) 负责将这些联系在一起。 下一个最高级抽象是 BeanFactory 接口,它是工厂设计模式的实现,允许通过名称创建和检索对象。BeanFactory 也可以管理对象之间的关系。

BeanFactory 支持两个对象模型:
单态 模型提供了具有特定名称的对象的共享实例,可以在查询时对其进行检索。Singleton 是默认的也是最常用的对象模型。对于无状态服务对象很理想。
原型 模型确保每次检索都会创建单独的对象。在每个用户都需要自己的对象时,原型模型最适合。

     bean 工厂的概念是 Spring 作为 IoC 容器的基础。IoC 将处理事情的责任从应用程序代码转移到框架。Spring 框架使用 JavaBean 属性和配置数据来指出必须设置的依赖关系。

而AOP即面向切面编程,它是一种编程技术,AOP 的核心构造是方面,它将那些影响多个类的行为封装到可重用的模块中。在 AOP 方式中,可以将日志服务,事务处理,权限管理模块化,并以声明的方式将它们应用到需要日志、事务、权限的组件上。当然,优势就是
Java 类不需要知道日志、事务、权限服务的存在,也不需要考虑相关的代码。所以,用 Spring AOP 编写的应用程序代码是松散耦合的。AOP的各个增强模块是通过动态代理织入的(关于织入有三种:编译期织入,类装载期织入,动态代理织入)其中动态代理又有两种:jdk动态代理、cglib动态代理。jdk代理必须为被代理类抽取一个接口(因为创建代理类的时候必须传入一个接口)。但是简单的业务表的操作也要抽取各种接口?jdk代理显然黔驴技穷,cglib作为替代者就填补了这个空缺。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hibernate spring
相关文章推荐