面试题。
集合框架了解么?HashMap和Hashtable的区别?
任何集合框架都包含三大块内容:对外的接口、接口的实现和对集合运算的算法。
HashMap实现原理?Hashtable线程安全是怎么现实的?
能讲讲HashMap的put()操作过程么?
Spring中Bean的生命周期
Spring如何管理事务的?
Spring 的事务,可以说是 Spring AOP 的一种实现。
AOP面向切面编程,即在不修改源代码的情况下,对原有功能进行扩展,通过代理类来对具体类进行操作。
spring是一个容器,通过spring这个容器来对对象进行管理,根据配置文件来实现spring对对象的管理。
spring的事务声明有两种方式,编程式和声明式。spring主要是通过“声明式事务”的方式对事务进行管理,即在配置文件中进行声明,通过AOP将事务切面切入程序,最大的好处是大大减少了代码量。
事务有四个特性:ACID
原子性(Atomicity):事务是一个原子操作,由一系列动作组成。事务的原子性确保动作要么全部完成,要么完全不起作用。
一致性(Consistency):一旦事务完成(不管成功还是失败),系统必须确保它所建模的业务处于一致的状态,而不会是部分完成部分失败。在现实中的数据不应该被破坏。
隔离性(Isolation):可能有许多事务会同时处理相同的数据,因此每个事务都应该与其他事务隔离开来,防止数据损坏。
持久性(Durability):一旦事务完成,无论发生什么系统错误,它的结果都不应该受到影响,这样就能从任何系统崩溃中恢复过来。通常情况下,事务的结果被写到持久化存储器中。
Service层是单例还是多例的?是线程安全的么?如果要做成多例的如何实现?
单例在spring中是默认的,我们常用的service和dao层的对象通常都是单例的,
但service或dao并不一定是单例,要产生多例,则在配置文件的bean中添加scope="prototype"
事务的传播性,数据库的隔离级别?
1:Read Uncommitted(读取未提交内容)
2:Read Committed(读取提交内容)
3:Repeatable Read(可重读)
4:Serializable(可串行化)
static可以被继承么?static在哪里地方会用到?
不会的。如果在子类中定义同样的静态变量,这个就是新的和父类没关系(获取不到父类的值的)。
ArrayList和LinkedList的区别,为什么说ArrayList是线程安全的?
如何配置服务器(tomcat)的内存大小?
修改tomcat/bin/catalina.bat文件。
说一说Servlet实现的接口?
servlet有三种实现方式:
1.实现servlet接口
2.继承GenericServlet
3.通过继承HttpServlet开发servlet
项目中常用的设计模式有哪些?写一个单例模式?