首页
友链
留言
统计
关于
壁纸
动态
工具
推荐
音乐
时光相册
Search
1
前端面试题
4,350 阅读
2
宝塔网站监控报表插件
1,230 阅读
3
最后更新修改时间提示【可配置时间范围】
1,219 阅读
4
QQ空间自动点赞代码
1,219 阅读
5
react面试题
1,156 阅读
代码人生
资源分享
音乐鉴赏
视频美文
网络安全
生活杂记
登录
/
注册
Search
标签搜索
音乐
学测
特效学习
kali
宝塔
阿里云盘
网络基础
css
奇淫技巧
centos
悬浮播放器
攻防
跨年
魔改
一周年
广告弹窗
翻墙
赚钱
短信轰炸
Spring
森屿暖树
累计撰写
156
篇文章
累计收到
99
条评论
首页
栏目
代码人生
资源分享
音乐鉴赏
视频美文
网络安全
生活杂记
页面
友链
留言
统计
关于
壁纸
动态
工具
推荐
音乐
时光相册
搜索到
1
篇与
Spring
的结果
2021-02-24
Spring面试题
{callout color="#f0ad4e"}什么是Spring框架?{/callout}Spring框架是一个为Java应用程序的开发提供了综合、广泛的基础性支持的Java平台。Spring帮助开发者解决了开发中基础性的问题,使得开发人员可以专注于应用程序的开发。Spring框架本身亦是按照设计模式精心打造,这使得我们可以在开发环境中安心的集成Spring框架,不必担心Spring是如何在后台进行工作的。{callout color="#f0ad4e"}使用Spring框架能带来哪些好处?{/callout}Dependency Injection(DI) 方法使得构造器和JavaBean properties文件中的依赖关系一目了然。与EJB容器相比较,IoC容器更加趋向于轻量级。这样一来IoC容器在有限的内存和CPU资源的情况下进行应用程序的开发和发布就变得十分有利Spring并没有闭⻔造⻋,Spring利用了已有的技术比如ORM框架、logging框架、J2EE、Quartz和JDK Timer,以及其他视图技术Spring框架是按照模块的形式来组织的。由包和类的编号就可以看出其所属的模块,开发者仅仅需要选用他们需要的模块即可要测试一项用Spring开发的应用程序十分简单,因为测试相关的环境代码都已经囊括在框架中了。更加简单的是,利用JavaBean形式的POJO类,可以很方便的利用依赖注入来写入测试数据Spring的Web框架亦是一个精心设计的WebMVC框架,为开发者们在web框架的选择上提供了一个除了主流框架比如Struts、过度设计的、不流行web框架的以外的有力选项Spring提供了一个便捷的事务管理接口,适用于小型的本地事物处理(比如在单DB的环境下)和复杂的共同事物处理(比如利用JTA的复杂DB环境){callout color="#f0ad4e"}什么是控制反转(IOC)?什么是依赖注入(DI)?{/callout}Inversion Of Control ——控制反转,是一种设计思想,程序中需要某个对象时,由原来的new的过程,变成了由容器来创建、管理和维护组件之间的关系。 这样做的好处是 可以大大降低组件之间的耦合度。Dependence Injection 依赖注入(依赖注射)。在Java中依然注入有以下三种实现方式:构造器注入Setter方法注入接口注入{callout color="#f0ad4e"}IOC的优点是什么?{/callout}IOC 或 依赖注入把应用的代码量降到最低。它使应用容易测试,单元测试不再需要单例和JNDI查找机制。最小的代价和最小的侵入性使松散耦合得以实现。IOC容器支持加载服务时的饿汉式初始化和懒加载。{callout color="#f0ad4e"}BeanFactory和ApplicationContext有什么区别?{/callout}BeanFactory 可以理解为含有bean集合的工厂类。BeanFactory 包含了种bean的定义,以便在接收到客户端请求时将对应的bean实例化。BeanFactory还能在实例化对象的时生成协作类之间的关系。此举将bean自身与bean客户端的配置中解放出来。BeanFactory还包含了bean生命周期的控制,调用客户端的初始化方法(initialization methods)和销毁方法(destruction methods)。从表面上看,application context如同beanfactory一样具有bean定义、bean关联关系的设置,根据请求分发bean的功能。但applicationcontext在此基础上还提供了其他的功能。提供了支持国际化的文本消息统一的资源文件读取方式已在监听器中注册的bean的事件{callout color="#f0ad4e"}Spring有几种配置方式?{/callout}将Spring配置到应用开发中有以下三种方式:基于XML的配置基于注解的配置基于Java的配置{callout color="#f0ad4e"}Spring Bean的作用域之间有什么区别?{/callout}Spring容器中的bean可以分为5个范围。所有范围的名称都是自说明的,但是为了避免混淆,还是让我们来解释一下:singleton:这种bean范围是默认的,这种范围确保不管接受到多少个请求,每个容器中只有一个bean的实例,单例的模式由bean factory自身来维护。prototype:原形范围与单例范围相反,为每一个bean请求提供一个实例。request:在请求bean范围内会每一个来自客户端的网络请求创建一个实例,在请求完成以后,bean会失效并被垃圾回收器回收。Session:与请求范围类似,确保每个session中有一个bean的实例,在session过期后,bean会随之失效。global-session:global-session和Portlet应用相关。当你的应用部署在Portlet容器中工作时,它包含很多portlet。如果你想要声明让所有的portlet共用全局的存储变量的话,那么这全局变量需要存储在global-session中。 全局作用域与Servlet中的session作用域效果相同。{callout color="#f0ad4e"}什么是AOP?{/callout}Aspect Oriented Programming 面向切面编程 它可以在不修改原代码的情况下 增加新的功能 或者扩展原有的功能,AOP 关注的重点在切面上,可以通过配置手段将切面切入到对应的位置。这样组件和组件之间的耦合度会降低 并且可以提供组件的复用度,提高程序的灵活性。 AOP 中涉及到的概念Aspect(切面):切面是用来封装共通业务逻辑的JoinPoint(连接点):代表切入的位置 一般代表一个方法信息 Pointcut(切点):用来管理连接点的 代表一堆连接点 ,可以看成连接点的集合 (会使用表达式表达 简称切点表达式)Target(目标):将被切入共通业务逻辑的组件叫 目标对象 Proxy(代理 ):被增强之后的目标组件 叫代理 (代理的生成技术有JDK代理 和CGLIB ) Advice9(通知):代表一种时机(方法之前、方法执行后、方法执行前后出现异常,最终要执行核心:切面 —– 通知 —– 切点{callout color="#f0ad4e"}Spring主要使用了什么模式?{/callout}工厂模式:每个Bean的创建通过方法单例模式:默认的每个Bean的作用域都是单例代理模式:关于Aop的实现通过代理模式{callout color="#f0ad4e"}Spring 支持的事务管理类型有哪些?{/callout}Spring 支持编程式事务管理和声明式事务管理。许多 Spring 框架的用户选择声明式事务管理,因为这种方式和应用程序的关联较少,因此更加符合轻量级容器的概念。声明式事务管理要优于编程式事务管理,尽管在灵活性方面它弱于编程式事务管理,因为编程式事务允许你通过代码控制业务。声明式事务又分为两种:基于XML的声明式事务基于注解的声明式事务。{callout color="#f0ad4e"}解释WEB 模块{/callout}Spring的WEB模块是构建在application context模块基础之上,提供一个适合web应用的上下文。这个模块也包括支持多种面向web的任务,如透明地处理多个文件上传请求和程序级请求参数的绑定到你的业务对象。它也有对Jakarta Struts的支持。{callout color="#f0ad4e"}ApplicationContext通常的实现是什么?{/callout}FileSystemXmlApplicationContext :此容器从一个XML文件中加载beans的定义,XML Bean配置文件的全路径名必须提供给它的构造函数。ClassPathXmlApplicationContext:此容器也从一个XML文件中加载beans的定义,这里,你需要正确设置classpath因为这个容器将在classpath里找bean配置。WebXmlApplicationContext:此容器加载一个XML文件,此文件定义了一个WEB应用的所有bean。
2021年02月24日
121 阅读
0 评论
0 点赞
欢迎光临
请问是否开启音乐
一边浏览一边听呢?
播放
暂停