問(wèn):Spring的原理是什么?
答:容器、IOC、AOP....
需要更具體的問(wèn)題而不是這種很寬泛的問(wèn)題。
Spring
飯前甜點(diǎn)
- 什么是Spring?
企業(yè)級(jí)應(yīng)用的開(kāi)源開(kāi)發(fā)框架;針對(duì)Java,有些擴(kuò)展針對(duì)Web應(yīng)用;簡(jiǎn)化Java開(kāi)發(fā)。 - Spring優(yōu)點(diǎn)?
輕量;控制反轉(zhuǎn)IOC;面向切面編程 AOP;容器;MVC;事務(wù)管理;異常處理... - Spring核心容器模塊?常用的實(shí)例?
BeanFactory;XmlBeanFactory。 - Spring IOC作用是什么?
創(chuàng)建對(duì)象,管理對(duì)象,管理對(duì)象生命周期。 - IOC優(yōu)點(diǎn)?
降低應(yīng)用代碼量,使應(yīng)用容易測(cè)試;已最小的代價(jià)和侵入性實(shí)現(xiàn)松散耦合。
正菜
- Spring由哪些模塊組成?
Module:Core;Bean;Context;JDBC;ORM;OXM;JMS;Transaction;web-servlet... - ApplicationContext通常實(shí)現(xiàn)?
ClassPathXmlApplicationContext;AnnotationConfigApplicationContext - BeanFactory和ApplicationContext區(qū)別是?
BeanFactory對(duì)象實(shí)例化;ApplicationContext除了實(shí)例化之外,BeanPostProcessor、BeanFactoryPostProcessor注冊(cè),發(fā)布事件,MessageSource本地化消息。 - Spring有哪幾種作用域?
singleton:bean在每個(gè)Spring IOC容器中只有一個(gè)實(shí)例。 -- 默認(rèn)
prototype:一個(gè)bean的定義可以有多個(gè)實(shí)例。
request:每次http請(qǐng)求都會(huì)創(chuàng)建一個(gè)bean,該作用域僅在基于web的Spring ApplicationContext情形下有效。
session:在一個(gè)HTTP Session中,一個(gè)bean定義對(duì)應(yīng)一個(gè)實(shí)例。該作用域僅在基于web的Spring ApplicationContext情形下有效。 - Spring框架中單例是線程安全的嗎?如果不安全如何來(lái)解決這個(gè)問(wèn)題呢?
不是線程安全;對(duì)象是無(wú)狀態(tài)的。 - 有哪些bean的生命周期方法?
init-method @PostConstruct;destroy-method @PreDestroy
MySql
- MySql如何選擇主鍵?是選擇自帶的自增主鍵,還是使用UUID這種自定義主鍵?
- 如果給某列建立索引,該列是長(zhǎng)度越長(zhǎng)越好,還是?為什么?
- 如何來(lái)進(jìn)行查詢性能優(yōu)化?
查詢優(yōu)化、索引優(yōu)化、庫(kù)表結(jié)構(gòu)優(yōu)化。