对公司内部的部门,所以没有算法题,全是应用题,并且hibernate的题很多,估计应用肯定是hibernate了
简答题
1 spring ioc、aop 的原理
IOC:控制反转也叫依赖注入。利用了工厂模式
将对象交给容器管理,你只需要在spring配置文件总配置相应的bean,以及设置相关的属性,让spring容器来生成类的实例对象以及管理对象。在spring容器启动的时候,spring会把你在配置文件中配置的bean都初始化好,然后在你需要调用的时候,就把它已经初始化好的那些bean分配给你需要调用这些bean的类(假设这个类名是A),分配的方法就是调用A的setter方法来注入,而不需要你在A里面new这些bean了。
注意:面试的时候,如果有条件,画图,这样更加显得你懂了
AOP:面向切面编程。(Aspect-Oriented Programming)
AOP可以说是对OOP的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从左到右的关系。例如日志功能。日志代码往往水平地散布在所有对象层次中,而与它所散布到的对象的核心功能毫无关系。在OOP设计中,它导致了大量代码的重复,而不利于各个模块的重用。
将程序中的交叉业务逻辑(比如安全,日志,事务等),封装成一个切面,然后注入到目标对象(具体业务逻辑)中去。
实现AOP的技术,主要分为两大类:一是采用动态代理技术,利用截取消息的方式,对该消息进行装饰,以取代原有对象行为的执行;二是采用静态织入的方式,引入特定的语法创建“方面”,从而使得编译器可以在编译期间织入有关“方面”的代码
简单点解释,比方说你想在你的biz层所有类中都加上一个打印‘你好’的功能这你经可以用aop思想来做,你先写个类写个方法,方法经实现打印‘你好’让后你Ioc这个类 ref=“biz.*”让每个类都注入。
2 hibernate 延迟加载原理
通过一个中间代理对象,Hibernate实现了实体的延迟加载,只有当用户真正发起获得实体对象属性的动作时,才真正会发起数据库查询操作。所以实体的延迟加载是用通过中间代理类完成的,所以只有session.load()方法才会利用实体延迟加载,因为只有session.load()方法才会返回实体类的代理类对象。
3 事务隔离级别 什么情况下用低的或者用高的
了解事务的几种传播特性
1. PROPAGATION_REQUIRED: 如果存在一个事务,则支持当前事务。如果没有事务则开启
2. PROPAGATION_SUPPORTS: 如果存在一个事务,支持当前事务。如果没有事务,则非事务的执行
3. PROPAGATION_MANDATORY: 如果已经存在一个事务,支持当前事务。如果没有一个活动的事务,则抛出异常。
4. PROPAGATION_REQUIRES_NEW: 总是开启一个新的事务。如果一个事务已经存在,则将这个存在的事务挂起。
5. PROPAGATION_NOT_SUPPORTED: 总是非事务地执行,并挂起任何存在的事务。
6. PROPAGATION_NEVER: 总是非事务地执行,如果存在一个活动事务,则抛出异常
7. PROPAGATION_NESTED:如果一个活动的事务存在,则运行在一个嵌套的事务中. 如果没有活动事务,
则按TransactionDefinition.PROPAGATION_REQUIRED 属性执行
Spring事务的隔离级别
1. ISOLATION_DEFAULT: 这是一个PlatfromTransactionManager默认的隔离级别,使用数据库默认的事务隔离级别.
另外四个与JDBC的隔离级别相对应
2. ISOLATION_READ_UNCOMMITTED: 这是事务最低的隔离级别,它充许令外一个事务可以看到这个事务未提交的数据。
这种隔离级别会产生脏读,不可重复读和幻像读。
3. ISOLATION_READ_COMMITTED: 保证一个事务修改的数据提交后才能被另外一个事务读取。另外一个事务不能读取该事务未提交的数据
4. ISOLATION_REPEATABLE_READ: 这种事务隔离级别可以防止脏读,不可重复读。但是可能出现幻像读。
它除了保证一个事务不能读取另一个事务未提交的数据外,还保证了避免下面的情况产生(不可重复读)。
5. ISOLATION_SERIALIZABLE 这是花费最高代价但是最可靠的事务隔离级别。事务被处理为顺序执行。
除了防止脏读,不可重复读外,还避免了幻像读。
4 事务传播方式哪几种
5 ajax 跨域如何实现
6 MQ是否应该保持顺序 保持是否的优劣
7 乐观锁与悲观锁,举例场景
8 cookie 与session 区别和联系,http 协议是无状态的,怎么区分不同登录用户
9 阐述opensessionview一下, 用和不用 数据库连接、transaction session 之间 开启和关闭顺序
大题
1.设计一个权限系统 ,要求若干(我就阐述了一下rbac的原则,简单说了一下设计的表和思路)
2.设计 一个b/s结构 mvc框架,要求若干(我着重说明了一下控制转发这块的设计思路)
还有几道题 忘记了,大家参考一下,各抒己见吧。(只针对技术讨论,别说乱七八糟的)
分享到:
相关推荐
在准备百度面试的过程中,了解面试流程和常见问题至关重要。这篇面试经历分享了电话面试的一些环节,包括技术问题、概率问题以及项目经验的介绍,从中我们可以提取出一些关键的知识点。 首先,电话面试通常是对候选...
"百度面试题总结"这个资料包很可能包含了百度在招聘过程中对C++程序员的考察点,帮助应聘者更好地准备面试。 C++的基础知识点包括: 1. **基本语法**:C++的基础始于了解变量、数据类型、运算符、流程控制(如if...
【百度面试题大全】涵盖了多个IT领域的知识点,包括数据结构、算法、数据库理论以及市场营销策略。以下是这些知识点的详细说明: 1. **堆和栈的区别**:堆和栈是计算机内存管理的两种基本数据结构。栈是后进先出...
【标题】:“百度面试题”通常指的是百度公司在招聘过程中可能会问到的问题集合,这些题目涵盖了技术、产品、设计、运营等多个领域,旨在测试应聘者的专业技能、思维逻辑以及问题解决能力。百度作为中国互联网巨头之...
《百度面试题第三题及答案解析》 面试是求职过程中至关重要的一环,尤其对于IT行业的面试,往往涉及到具体的技术问题和解决方案。本题主要关注的是数据库设计与优化,以及系统设计策略,这些问题在实际工作中具有很...
"百度面试软件测试题" 标题解读 "百度面试软件测试题"是指百度公司在面试软件测试工程师时所使用的面试题库。这份文件包含了面试官在面试过程中所需的题目和答案,涵盖了软件测试的各个方面,旨在评估面试者的技术...
百度面试经验,第一大题 简答 1. extern “C”{}癿吨丿?作用? 2. 至少写出两种讱计模弅,说明使用场景,最好有伪代码。 3. TCP连接中time_wait是什举状忞?意丿?好处坏处? 第事大题 算法秳序 1. 呾2010年校招童...
【标题】:“百度面试.rar”这个压缩包文件很可能包含了与百度公司招聘面试相关的一系列资料,包括但不限于面试题目、面试技巧、面试流程等信息。百度作为中国知名的互联网巨头,其面试过程对求职者来说具有很高的...
java 百度面试题
百度的面试攻略,包括百度简介、笔试资料、面试资料、求职综合经验等
### 百度面试题解析 #### 一、捣乱分子对问题 **题目描述:** 在给定的一个整型序列中,如果前面的人比后面的人高(两人身高相同被认为是合适的),那么这一对人就被视为“捣乱分子”。例如,对于序列`176, 178, ...
在准备百度面试的过程中,了解和掌握算法是至关重要的一步,因为算法能力是衡量一个程序员技术功底的关键指标。本资源“百度面试算法题汇总”旨在为面试者提供一系列的算法题目和解决方案,帮助他们提升在面试中的...
【C++百度面试题】涉及的知识点主要包括C++语言特性、操作系统原理以及算法设计。 1. **数据库死锁原理及避免策略**: - 死锁是由于资源竞争导致的两个或更多进程无法继续执行的现象。产生死锁的必要条件包括互斥...
在准备百度面试,尤其是针对数据结构的环节时,你需要对一系列关键概念有深入的理解。数据结构是计算机科学的基础,它涉及到如何有效地存储和组织数据,以便进行高效的访问和操作。以下是一些重要的数据结构及其应用...
【标题】:“百度面试、笔试题全集”涵盖了百度公司在招聘过程中可能会遇到的各种技术与非技术类题目,旨在帮助应聘者全面了解并准备百度的面试和笔试环节。这个资源集合了众多历年的真实试题,是求职者提升自我能力...
这份“百度面试经验包”无疑为准备面试的朋友们提供了一份宝贵的参考资料。以下是对标题和描述中涉及的知识点的详细解释: 1. **面试流程**:百度作为一家知名的技术驱动型企业,其面试流程通常包括在线测试、电话...
### 百度面试题汇总(Java) #### 一、Java基础知识 1. **自我介绍**:面试官希望从自我介绍中获取应聘者的基本背景信息,包括但不限于教育经历、工作经验等,以便于后续针对这些背景提出具体问题。 2. **项目...
### 百度面试题解析:求最短操作路径 #### 题目背景 题目来源于一份整理的百度面试题集,该题集被认为是一个很好的资源,对于正在寻找工作的求职者来说具有较高的参考价值。 #### 题目描述 题目要求实现一个函数,...
标题与描述均提到了“2011百度面试题总结”,这意味着内容主要聚焦于2011年百度在招聘过程中使用的面试题目,尤其是针对数据挖掘研发工程师实习生的岗位。这样的总结对于准备进入IT行业,尤其是对百度或类似企业感...