1. Oracle SQL分區(qū)(partition by)與分組(group by)有什么區(qū)別?
分區(qū):將原始數(shù)據(jù)進(jìn)行順序排列(記錄數(shù)不變)
分組:對(duì)原始數(shù)據(jù)進(jìn)行聚合統(tǒng)計(jì)(記錄數(shù)變少,每組返回一個(gè)結(jié)果)
2. Java 只有值傳遞
只不過值傳遞分為:內(nèi)存中數(shù)值的值傳遞 以及 內(nèi)存地址數(shù)值的值傳遞
Java中基本數(shù)據(jù)類型是以值傳遞的方式進(jìn)行傳參;
對(duì)象類型是以引用傳遞的方式進(jìn)行傳參;String類型不屬于基本數(shù)據(jù)類型,
但是以值傳遞的方式進(jìn)行傳參;
3. Integer
Integer.png

Integer.png
4.@Configuration標(biāo)注的類中 @Resource問題
@Configuration標(biāo)注的類中 @Resource無法注入dao等,需要SpringContextUtil.getBean("xxxDao");
5.SQL not in
使用not in 的時(shí)候,如果not in后面的選項(xiàng)中有null,
不會(huì)被查詢出來。sql語句本身直接返回false,
所以使用not in的時(shí)候,要保證in中的條件不會(huì)出現(xiàn)null的情況
6.mybatis 千萬不要使用 where 1=1
2.垃圾條件,沒必要加
where 元素只會(huì)在子元素返回任何內(nèi)容的情況下才插入 “WHERE” 子句。
而且,若子句的開頭為 “AND” 或 “OR”,where 元素也會(huì)將它們?nèi)コ?
7.(String)、toString、String.valueOf的區(qū)別
(String)
這是標(biāo)準(zhǔn)的類型轉(zhuǎn)換,將object轉(zhuǎn)成String類型的值。使用這種方法時(shí),需要注意的是類型必須能轉(zhuǎn)成String類型。
因此最好用instanceof做個(gè)類型檢查,以判斷是否可以轉(zhuǎn)換。否則容易拋出CalssCastException異常。
toString
在這種使用方法中,因?yàn)閖ava.lang.Object類里已有public方法.toString(),所以對(duì)任何嚴(yán)格意義上的java對(duì)象都可以調(diào)用此方法。
但在使用時(shí)要注意,必須保證object不是null值,否則將拋出NullPointerException異常
String.valueOf
這個(gè)方法是靜態(tài)的,直接通過String調(diào)用,可以說是完美,只是平時(shí)不習(xí)慣這樣寫而已,這樣的實(shí)現(xiàn)避免了前面兩個(gè)的不足和缺點(diǎn)。
內(nèi)部的實(shí)現(xiàn)機(jī)制:
public static String valueOf(Object obj){
return (obj==null) ? "null" : obj.toString()
};
8.### 在mybatis中 if test 的判斷
<if test="formNumber != null and formNumber != ''">
而判斷等于是
<if test='flag != null and flag == "3"'>
8.
8.
8.
8.