Spring 应用框架技术.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《Spring 应用框架技术.docx》由会员分享,可在线阅读,更多相关《Spring 应用框架技术.docx(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、9 Spring应用框架技术1、Spring 和 Struts 的区别?strusts:是一种基于MVC模式的web层的处理。Spring:提供了通用的服务,ioc/di aop,关心的不仅仅web层,应当j2ee整体的一个服务, 可以很容易融合不同的技术 struts hibernate ibatis ejb remote springJDBC springMVC2、什么是aop, aop的作用是什么?Oop:纵向的业务Aop: oop的一个横向的服务,是对oop进一步的补充,提供平安、事务、日志 等的集中式处理,相关的装备before、around after exception3、aop
2、中的关键名词有些那些,相互关系是什么?拦截器:代理装备(advice)目标对象关切点:条件连接点:方法、属性4、依赖注入的方式有几种,各是什么?SetterInterfaceconstructor5、spring中的核心类有那些,各有什么作用?BeanFactory:产生一个新的实例,可以实现单例模式BeanWrapper:提供统一的get及set方法ApplicationContext:提供框架的实现,包括BeanFactory的所有功能6、ApplicationContext 的作用beanFactory国际化(getMesage)BeanFactory支持两个对象模型。单态 模型提供了具
3、有特定名称的对象的共享实例,可以在查询时对其进行检索。 Singleton是默认的也是最常用的对象模型。对于无状态服务对象很理想。原型模型确保每次检索都会创立单独的对象。在每个用户都需要自己的对象时,原型模 型最适合。bean工厂的概念是Spring作为IOC容器的基础。IOC将处理事情的责任从应用程序代码 转移到框架。正如我将在下一个例如中演示的那样,Spring框架使用JavaBean属性和配置 数据来指出必须设置的依赖关系。BeanFactory 接口因为是一个简单接口,所以可以针对各种底 层存储方法实现。最常用的BeanFactory定义是XmlBeanFactory,它根据XML文件
4、中的 定义装入bean,如清单1所示。清单 1. XmlBeanFactoryBeanFactory factory = new XMLBeanFactory(new FileInputSteam(nmybean.xmr,);在XML文件中定义的Bean是被消极加载的,这意味在需要bean之前,bean本身不会 被初始化。要从BeanFactory检索bean,只需调用getBean()方法,传入将要检索的bean 的名称即可,如清单2所示。清单 2. getBean()MyBean mybean = (MyBean) factory. getB ean(1 my bean1);每个bean的
5、定义都可以是POJO (用类名和JavaBean初始化属性定义) 或 FactoryBeano FactoryBean接口为使用Spring框架构建的应用程序添加了一个间接的级别。IOC例如理解控制反转最简单的方式就是看它的实际应用。在对由三局部组成的Spring系列的第 1局部进行总结时,我使用了一个例如,演示了如何通过Spring IOC容器注入应用程序的 依赖关系(而不是将它们构建进来)。我用开启在线信用帐户的用例作为起点。对于该实现,开启信用帐户要求用户与以下服务进 行交互: 信用级别评定服务,查询用户的信用历史信息。远程信息链接服务,插入客户信息,将客户信息与信用卡和银行信息连接起来
6、,以进行 自动借记(如果需要的话)。电子邮件服务,向用户发送有关信用卡状态的电子邮件。三个接口对于这个例如,我假设服务已经存在,理想的情况是用松散耦合的方式把它们集成在一起。 以下清单显示了三个服务的应用程序接口。清单 3. CreditRatinglnterfacepublic interface CreditRatinglnterface public boolean getUserCreditHistoryInformation(ICustomer iCustomer); )清单3所示的信用级别评定接口提供了信用历史信息。它需要一个包含客户信息的 Customer对象。该接口的实现是由C
7、reditRating类提供的。清单 4. CreditLinkinglnterfacepublic interface CreditLinkinglnterface public String getUrl();public void setUrl(String url);public void linkCreditBankAccount() throws Exception ;)信用链接接口将信用历史信息与银行信息(如果需要的话)连接在一起,并插入用户的信用 卡信息。信用链接接口是一个远程服务,它的查询是通过getUrl()方法进行的。URL由 Spring框架的bean配置机制设置,我稍
8、后会讨论它。该接口的实现是由CreditLinking类 提供的。1 .简述spring的事务传播行为和隔离级别spring的事务传播行为:Spring在TransactionDefinition接口中规定了 7种类型的事务传播行为, 它们规定了事务方法和事务方法发生嵌套调用时事务如何进行传播:PROPAGATION_REQUIRED:如果当前没有事务,就新建一个事务,如果已经存在一个事务中,加入到这 个事务中。这是最常见的选择。PROPAGAT1ON_SUPPORTS:支持当前事务,如果当前没有事务,就以非事务方式执行。PROPAGATIONMANDATORY:使用当前的事务,如果当前没有事
9、务,就抛出异常。PROPAGATION_REQUIRES_NEW:新建事务,如果当前存在事务,把当前事务挂起。PROPAGATION_NOT_SUPPORTED:以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。PROPAGATION NEVER:以非事务方式执行,如果当前存在事务,那么抛出异常。PROPAGATION_NESTED:如果当前存在事务,那么在嵌套事务内执行。如果当前没有事务,那么执行与 PROPAGATION.REQUIRED 类似的操作。Spring的隔离级别1、Serializable:最严格的级别,事务串行执行,资源消耗最大;2、REPEATABLE READ:保
10、证了一个事务不会修改已经由另一个事务读取但未提交(回滚)的数据。避 免了 “脏读取”和“不可重复读取”的情况,但是带来了更多的性能损失。3、READ COMMITTED:大多数主流数据库的默认事务等级,保证了一个事务不会读到另一个并行事务已 修改但未提交的数据,防止了 “脏读取”。该级别适用于大多数系统。4、Read Uncommitted:保证了读取过程中不会读取到非法数据。资源管理:可以直接读取一个文件的内容(getResource) 加入web框架中(加入一个servlet或监听器) 事件处理7、如何实现资源管理使用applicationContext. getResource( cla
11、sspath:文件名“):在 src 根目录下, 在类路径下applicationContext. getResource( classpath:/chap01/文件名): 以 src 根目录下的基准往下走。applicationContext. getResource( ufile:c:/a. properties): 在系统文件目 录下。8、如何实现加入web框架中在web. xml中加入如下同容,在启动web服务器时加载 /WEB-INF/applicationContext. xml 中的内容。contextorg. springframework, web. context. Con
12、textLoaderServletl通过如下类得到ApplicationContext实例WebApplicationContextUtiIs. getWebApplicationContext9、如何实现事件处理事件Extends ApplicationEvent监听器Implements ApplicationListener事件源Implements ApplicationContextAware在applicationContext. xml中配置事件源、监听器先得到事件源,调用事件源的方法,通知监听器。10、spring的ioc及di代表什么意思?loc:程序在运行过程中,根据配置文
13、件动态加载所依赖的配置类、如何在spring中实现国际化?在 applicationContext. xml 力口载个 beanproperty name二basename”message在src目录下建多个properties文件对于非英文的要用native2ascii -encoding gb2312源 目转化文件相关内 容其命名格式是message.语言国家。页面中的中显示提示信息,键名取键值。当给定国家,系统会自动加载对应的国家的properties信息。通过 applictionContext. getMessage(“键名,参数,区域”)取出相关 的信息。12、spring的配置的
14、主要标签是什么?有什么作用?propertyproperty name=13、spring与ejb2Q的事务管理比拟的优缺点?测试:Spring:pojoEjb:二个接口一个类,一堆配置文件 事务类型Spring:jdbc jta hibernateEjb:jta本钱Spring:普通容器(tomcat jboss)Ejb:weblogic jboss 开发的周期:Spring 远比 ejb 快.14、spring的jdbc与传统的jdbc有什么区别,其核心类有那些?Spring的jdbc:节省代码,不管连接(Connection),不管事务、不管异常、不管 关I田(con close ()
15、ps. close )JdbcTemplate(dataSource) 删、改、查TransactionTemplate (transactionManager):进行事务处理15、在spring中有几种事务管理,分别是什么?代码管理的事务处理TransactonTemplate 的 execute 方法中的内部类 TransactionCallback 中的 doInTransaction 方法中使用。public void make()(TransactionTemplatejtm=newTransactionTemplate(this. getTransactionManager();j
16、tm. execute(new myClassl();public class myClassl implements TransactionCallbackpublic Object doInTransaction(TransactionStatus trans) JdbcTemplate jdbc=new JdbcTemplate(dataSource);jdbc. execute (/zinsertintocustomer (customerName)values ( b) );jdbc. execute(insertintocustomer(customerName)values (
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Spring 应用框架技术 应用 框架 技术
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内