1荚坞、Spring MVC工作原理
a.客戶端請(qǐng)求提交到前端控制器DispatcherServlet
b.由DispatcherServlet查詢HandlerMapping 通過HandlerMapping找到處理請(qǐng)求的二級(jí)控制器Controller
c.DispatcherServlet將請(qǐng)求提交到Controller
d.Controller調(diào)用業(yè)務(wù)邏輯處理后 返回ModelAndView
e.DispatcherServlet查詢ViewResoler視圖解析器 找到ModelAndView指定的視圖
f.視圖負(fù)責(zé)將結(jié)果顯示到客戶端
2、jQuery可以對(duì)表單進(jìn)行哪些操作
a.獲取值
文本框、密碼框屠列、textarea
checkbox radio select
b.控制表單元素
text textarea 清空內(nèi)容 填充內(nèi)容
checkbox 設(shè)置打勾
radio 設(shè)置默認(rèn)選項(xiàng)
select 添加option 清空option
c.觸發(fā)事件
submit blur change
3禽笑、SQL分頁(yè)查詢
注意事項(xiàng):
a.使用ROWNUM編號(hào)時(shí) 不要使用ROWNUM做>1以上的數(shù)字的判斷 否則該結(jié)果集將得不到記錄
b.在分頁(yè)中有排序需求時(shí) 先排序再編號(hào) 再根據(jù)編號(hào)取范圍
工資按照由高到低排序后取6-10名
排序 select name,sal,job,deptno from emp order by sal desc
編號(hào) select rownum rn,t.* from (select name,sal,job,deptno from emp order by sal desc) t
取范圍 select * from (select rownum rn,t.* from (select name,sal,job,deptno from emp order by sal desc) t) where rn between 6 and 10
4暇藏、SQL函數(shù)
字符串函數(shù):
CONCAT ||
LENGTH
UPPER LOWER INITCAP
TRIM LTRIM RTRIM
LPAD RPAD
SUBSTR
INSTR
數(shù)值函數(shù):
ROUND
TRUNC
MOD
CEIL FLOOR
日期轉(zhuǎn)換函數(shù):
TO_DATE
TO_CHAR
日期常用函數(shù):
LAST_DAY
ADD_MONTHS
MONTHS_BETWEEN
NEXT_DAY
LEAST GREATEST
EXTRACT
空值函數(shù):
NVL NVL2
聚合函數(shù):
MAX MIN
AVG SUM
COUNT
SQL左右外連接
左外連接以左表中的數(shù)據(jù)為基準(zhǔn) 若左表有數(shù)據(jù)右表沒有數(shù)據(jù) 則顯示左表中的數(shù)據(jù) 右表中的數(shù)據(jù)顯示為空 右外連接反之
5、JSP九大內(nèi)置對(duì)象
application
session
request
page
pageContext
config
response
out
exception
6屈梁、數(shù)據(jù)庫(kù)優(yōu)化:
a嗤练、建立有效的索引
b、sql語句優(yōu)化 where條件靠前 縮小子查詢的結(jié)果集 in exist
c俘闯、表結(jié)構(gòu)優(yōu)化潭苞,大表分割。
7真朗、數(shù)據(jù)庫(kù)緩存
提高訪問性能此疹,避免重復(fù)訪問,執(zhí)行同一個(gè)sql訪問的是緩存的數(shù)據(jù)
8遮婶、高并發(fā)優(yōu)化
a蝗碎、數(shù)據(jù)庫(kù)優(yōu)化
b、代碼優(yōu)化 算法優(yōu)化
c旗扑、服務(wù)器優(yōu)化 分布式部署
d蹦骑、jvm調(diào)優(yōu)
e、頁(yè)面優(yōu)化 簡(jiǎn)潔 減少頁(yè)面尺寸
9臀防、使用jquery獲取表格某行某列的值
.children().eq(3).children().eq(3).val()
get() eq()的區(qū)別 都是jquery提供的方法 get()返回DOM對(duì)象 eq()返回jquery對(duì)象
10眠菇、sleep wait的區(qū)別
sleep是Thread類的方法 wait是Object類中定義的方法
sleep()不釋放同步鎖 wait()釋放同步鎖 notify() synchronized
11、servlet生命周期
a.初始化階段 調(diào)用init()方法
b.響應(yīng)客戶請(qǐng)求階段 調(diào)用service()方法
c.終止階段 調(diào)用destroy()方法
12袱衷、數(shù)組排序 集合排序
Arrays.sort() Collections.sort()自定義排序規(guī)則 重寫Comparator接口 sort()方法里第二個(gè)參數(shù)new Comparator(){}
13捎废、HashMap Hashtable區(qū)別
都實(shí)現(xiàn)Map接口 HashMap是線程不安全 性能更高
Map底層是散列表 即數(shù)組和鏈表的結(jié)合體
HashMap可以通過下面的語句進(jìn)行同步
Map m = Collections.synchronizeMap(hashMap);
14、List Set
都實(shí)現(xiàn)Collection接口
ArrayLIst??? 數(shù)組 隨機(jī)訪問 異步 線程不安全
LinkedList? 鏈表 插入刪除 異步 線程不安全
Vector? ????? 數(shù)組 ?? ? ? ??????? 同步 線程安全
Set 不可重復(fù)集
15致燥、String常量池
final 修飾 String類型是不可變的 因而String類是線程安全的
每當(dāng)代碼創(chuàng)建字符串常量時(shí) JVM會(huì)首先檢查字符串常量池 如果字符串已經(jīng)存在池中 就返回池中的實(shí)例引用 如果字符串不在池中 就會(huì)實(shí)例化一個(gè)字符串并放到池中
StringBuilder StringBuffer
StringBuilder線程不安全 性能高于StringBuffer 建議使用StringBuiler
16登疗、解釋內(nèi)存中的棧(stack)、堆(heap)和靜態(tài)區(qū)(static area)的用法
棧:基本數(shù)據(jù)類型的變量 對(duì)象的引用 函數(shù)調(diào)用的現(xiàn)場(chǎng)保存
堆:對(duì)象
靜態(tài)區(qū):字面量 常量