標籤:sre 分組 img 出現 中間 時間 練習 mysq 執行個體
恩。。。這幾天做的一個階段性的個人項目,因為個人原因導致時間不夠,項目時間有點緊,做的不怎麼好。下面說說在這個項目中遇到的一些問題
1. 執行個體化的問題,注意類的執行個體化以及傳值的問題,不然容易出現null 指標異常。
2. 資料庫的欄位名問題,在進行操作時最好直接複製資料庫中的欄位名,否則可能因為欄位名不同出現問題
3. jdbc中資料庫動作陳述式在換行時記得加上"," ,然後在語句前面加上空格
4. 在javabean中,如果一個A類中包含多個B類對象就有一個B類集合屬性,如果A類只有一個B類,那麼在Javabean中有一個B類對象作為A類屬性
5. 注意使用物件導向的思維,善於使用封裝。
基本上記得的就是這些,等以後想到了在補充。
接下來是前面上課的時候的一些知識
1. 結合項目練習資料庫
a. 時間類型的小問題(對時間要求不太精確可以在實體類中用string類型 精確的話就用date類型)
b. com.biz包(bussiness的簡寫)或者是service;商務邏輯層也是放的介面,com.biz.impl商務邏輯包的實作類別包,在這裡調用dao包進行實現,或者商務邏輯,傳入前段,前段就不用dao包,用的是biz寫的東西,起到資料庫以及前段中間的斜街作用
c. ConnectionManager類放在com.util包中
d. 在url後寫上?Unicode=true&CharacterEncoding=UTF-8然後每次串連資料庫取出時都是對應的字元編碼
e. ‘’ or 1=1 -- sql小漏洞 只能在statement使用這個漏洞 引出preparedstatement 預先處理塊
f. Sql語句中的小細節:在where判斷後欄位名 = 值,也可以欄位名 > 值等等
運算子(算術,邏輯,比較)
And 多個條件都需要滿足
Or多個條件一個條件滿足就可以
g. 注意sql語句的正確性
h. 分頁寫法:select * from 表名 limit 0,5(從0開始顯示5條資料 0是從多少開始顯示 5是顯示多少條)
i. Select * from 表名 order by id desc (根據id降序排列)
j. 彙總函式(count sum avg maxmin)
k. 在count(*) as c (說明下面調用時用c把count(*)代替了)
l. 分頁涉及到商務邏輯了 放在biz包
m. Sql分組查詢:group by分組之後select語句可以跟的列名只有彙總函式和group by分組後的欄位名
select count(*) asrenshu , 欄位名 from 表名 group by 欄位名
返回的就是根據欄位名分組的行數一一對應
n. 分組之後再過濾 having 關鍵字
select count(*) asrenshu , 欄位名 from 表名 group by 欄位名having renshu > =10
返回的是分組之後再進行renshu>=10的資料
o. 模糊字查詢:like關鍵字加上%
Select * from 表名 where 欄位名 like 張% (查詢表名中欄位中以張開頭的所有行)
Select * from 表名 where 欄位名 like %張% (查詢表名中欄位中有張這個字的所有行)
p . 多條件查詢拼接字串,見下面 ,用if、判斷語句
jdbc,mysql結合練習