背 不普通

https://i.cnblogs.com/EditPosts.aspx?postid=8985328&update=1  高并发处理

https://i.cnblogs.com/EditPosts.aspx?postid=8992288&update=1  手写单例模式  https://i.cnblogs.com/EditPosts.aspx?postid=8999399&update=1

https://i.cnblogs.com/EditPosts.aspx?postid=8992359&update=1   排序

https://i.cnblogs.com/EditPosts.aspx?postid=8995636&update=1  Springmvc的工作流程

https://i.cnblogs.com/EditPosts.aspx?postid=8999622&update=1  面试题:MySQL性能调优——索引详解与索引的优化

 https://i.cnblogs.com/EditPosts.aspx?postid=9001113&update=1   面试题:缓存Redis与Memcached的比较

servlet  生命周期

四、Servlet生命周期
1、初始化阶段
(1)将编译后的servlet字节码文件读入内存
(2)Servlet容器创建ServletConfig,并与ServletContext对象建立关联关系,即调用ServletConfig的getServletContext()方法会获取到ServletContext对象
(3)创建Servlet对象。
(4)调用GenericServlet的init(ServletConfig config)方法,建立Servlet对象与ServletConfig对象的关联。
初始化时机:
(1)未配置<load-on-startup>属性的Servlet被客户端首次访问时才会被初始化。
(2)配置<load-on-startup>属性的Servlet在web容器启动时就会按配置的数值按顺序被初始化。
 
2、运行时阶段,调用Servlet类的Service()方法。当Servlet将响应返回后,Servlet容器会销毁HttpServletRequest对象与HttpServletResponse对象。
 
3、销毁阶段,在web容器终止时,会先调用所有Servlet的destroy()方法
 
数据库三范式

◆ 第一范式(1NF):强调的是列的原子性,即列不能够再分成其他几列

◆ 第二范式(2NF):首先是 1NF,另外包含两部分内容,一是表必须有一个主键;二是没有包含在主键中的列必须完全依赖于主键,而不能只依赖于主键的一部分。

◆ 第三范式(3NF):首先是 2NF,另外非主键列必须直接依赖于主键,不能存在传递依赖。即不能存在:非主键列 A 依赖于非主键列 B,非主键列 B 依赖于主键的情况。

第二范式(2NF)和第三范式(3NF)的概念很容易混淆,区分它们的关键点在于,2NF:非主键列是否完全依赖于主键,还是依赖于主键的一部分;3NF:非主键列是直接依赖于主键,还是直接依赖于非主键列。

 

2、生产者消费者模型的作用是什么

这个问题很理论,但是很重要:

(1)通过平衡生产者的生产能力和消费者的消费能力来提升整个系统的运行效率,这是生产者消费者模型最重要的作用

(2)解耦,这是生产者消费者模型附带的作用,解耦意味着生产者和消费者之间的联系少,联系越少越可以独自发展而不需要收到相互的制约

13、ThreadLocal有什么用

简单说ThreadLocal就是一种以空间换时间的做法,在每个Thread里面维护了一个以开地址法实现的ThreadLocal.ThreadLocalMap,把数据进行隔离,数据不共享,自然就没有线程安全方面的问题了

 

16、为什么要使用线程池

避免频繁地创建和销毁线程,达到线程对象的重用。另外,使用线程池还可以根据项目灵活地控制并发的数目。

posted @ 2018-05-28 08:53  阿善9  阅读(136)  评论(0编辑  收藏  举报