本文目录
- java三大框架面试题
- 前端面试题分享之什么是Spring
- 开发中主要使用spring的什么技术 面试题
- Java面试题:Spring中的自动装配有哪些限制
- 真实版Spring面试题,欢迎作答!
java三大框架面试题
SSH:
spring 初始化组件----分层理念(就类似与中央管理省,省管理市等等)里,你想用下一层某个类的实例,但又不想自己new,好了,spring做的就是这个工作----初始化你需要的实例对象(通常是在xml文件中进行配置,希望简化配置可以用注解)。(再通俗点说,某个省的代表在驻京办,这时中央如果想了解某个省的情况的话,就直接问驻京办的该省代表,而不用再派专人到该省询问了。此时,可以近似理解为,中央为一个类,该省为一个类,驻京办为spring容器,该省代表为该省的一个实例(但未初始化,因为不在驻京办他的价值也就没了),如果他在驻京办而且告诉驻京办他是该省的代表,那就代表中央可以使用他了---此时可以说,驻京办实例化了该省类的对象。)
struts 控制跳转-----比如说,你用SSH写了一个登陆的逻辑,如果输入信息正确跳转到成功界面,如果不正确就跳转到错误提示界面,那跳转的方向由谁指定呢,对就是struts.xml文件(里面对应的跳转逻辑名)。
hibernate 将对象型的数据类型保存到关系型数据库中的工具。比如说,Java是面向对象的开发语言,而现在的数据库(Oracle、MySQL、sqlserver等等)基本上都是关系型的,如何把面向对象的数据类型保存在关系型的数据库中呢?hibernate就是干这行的。
前端面试题分享之什么是Spring
Spring是一个轻量级控制反转(IOC)和面向切面(AOP)的容器框架,
它主要是为了解决企业应用开发的复杂性而诞生的:
目的:解决企业级应用开发的复杂性。
功能:使用基本的JavaBean代替EJB。
范围:任何Java应用。
Spring的存在是因为它自身的得天独厚的优势:
它定位的领域是许多其他流行的framework没有的。
Spring是全面的和模块化的。
它的设计从底部帮助你编写易于测试的代码。
Spring是潜在一站式解决方案。
Spring天生就存在如下的有点:
低侵入式设计,代码污染极低。
Write Once,Run Anywhere
DI有效的降低了耦合度。
AOP提供了通用的任务的集中管理。
ORM和DAO简化了对数据库的访问。
高度开放性,并不强制(贯穿于变现层,业务层,持久层)
Spring的优点给开发带来的好处:
可以有效组织中间层对象。
使用同一的配置文件。
促进良好的编程习惯,减少编程代价。
易于单元测试。(一Spring基本组就是JavaBean,二提供了对Juit的支持)
使EJB成为一种备选。
为数据存取提供了一致性的框架。
开发中主要使用spring的什么技术 面试题
1. 什么是spring? Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。
Java面试题:Spring中的自动装配有哪些限制
1、如果使用了构造器注入或者setter注入,那么将覆盖自动装配的依赖关系。
2、基本数据类型的值、字符串字面量、类字面量无法使用自动装配来注入。
3、优先考虑使用显式的装配来进行更精确的依赖注入而不是使用自动装配。
真实版Spring面试题,欢迎作答!
1.ApplicationContext提供了BeanFactory所能提供的功能管理,包括bean的加载,实例化,维护bean之间的依赖关系,负责bean的声明周期之外,还提供了更完整的框架功能:
a. 国际化支持
通过配置org.springframework.context.support.ResourceBundleMessageSource
b. 资源访问:Resource rs = ctx. getResource(“classpath:config.properties”), file:c:/config.properties”
c. 事件传递:通过实现ApplicationContextAware接口
2. 默认scope是singleton,另外几个范围是 prototype
区别是singleton 只在初始化时候创建一个对象
prototype 在每次访问都会创建一个对象
3.根据输入的参数创建实例对象
一种为setter
定义property name 在class里面使用setter方法定义对象
一种为constractor
定义constructor-arg
4.没有
5. Log
定义促销活动日志
@Aspect
public class logpromotion{
@Before(“execution(* com.herb.aop.PromotionOwner.*(..))“)
public void before(JoinPoint joinPoint){
System.out.println(“Logging before “ + joinPoint.getSignature().getName());
}
}
public class PromotionOwner.BuyXgetYfree{
....
}
6.Before Advice 方法执行前
Around Advice 方法执行时
After Advice 方法执行后
Throw Advice 方法出现异常