java 日記本(五)

2021-07-28 11:33:59 字數 2153 閱讀 1777

日誌列表顯示及分頁實現

一.日誌列表

1.在model裡新建乙個diary類,然後在dao裡新建乙個diarydao類,寫乙個簡單的屬性是list<>的方法,diarylist()。

2.new乙個 arraylist<>()的物件diarylist,用stringbuffer獲得sql查詢

**:

stringbuffer sb = new stringbuffer("select * from t_diary t1,t_diarytype t2 where t1.typeid = t2.diarytypeid");

4.使用preparestatement執行,引數為sb.tostring,返回乙個resultset

5.如果resultset裡有值,則往乙個新new的diary裡填充獲得的資料diaryid、title、content。

6.新增乙個stringutil和dateutil。stringutil是用來判斷字串是空或者不是空,dateutil是用******dateformat根據格式化來把日期物件轉化為string物件,把string物件轉化為日期物件。

7.繼續往diary裡填充通過dateutil轉化後的releasedate物件,轉化的格式為「yyyy-mm-dd hh:mm:ss」。

8.將diary放到diarylist裡

9.在mainservlet裡引進dbutil和diarydao,定義乙個connection,連線資料庫,並丟擲異常,呼叫diarylist(),返回乙個list型別的diarylist,將diarylist塞到request裡。

10.修改diarylist.jsp。新增乙個樣式為diary_datas的div標籤,裡面放乙個ul標籤,在ul中進行c:foreach遍歷,放乙個var和items,items是乙個集合(diarylist),var為diary。引入乙個標籤,對頁面進行格式化fmt。

二.分頁

1.在類diarydao寫乙個獲取總記錄數的方法diarycount,需要乙個connection引數

2.用stringbuffer獲得sql查詢

**:

stringbuffer sb = new stringbuffer("select count(*) as total from t_diary t1,t_diarytype t2 where t1.typeid = t2.diarytypeid");

3.使用preparestatement執行,引數為sb.tostring,返回乙個resultset。

4.如果resultset裡有值,返回total值,沒有則返回0。

5.在diarylist.jsp裡新增分頁標籤$,在後台進行分頁,拼一串分頁**。

6.在mainserlvet裡,每次分頁的時候,會傳乙個當前頁到後台,寫乙個string型別的page,獲取當前頁的page值,對page進行stringutil判斷,是空的話,預設page為1,即第一頁。

7.在model包中寫乙個pagebean類,屬性為page(第幾頁)、pagesize(每頁記錄數)、start(起始頁),其中,start是通過(page-1)*pagesize計算而來的。

9.在mainservlet裡new乙個pagebean(),引數為當前頁page和每頁的大小pagesize(在diary.properties配置檔案裡配置)。同時呼叫diarydao裡的

diarycount()

獲取乙個型別為int的總記錄數total。

10.在mainservlet裡寫乙個私有的分頁方法getpagetion,傳入的引數為totalnum,currentpage,pagesize

總頁數totalpage是通過totalnum對pagesize求餘獲取(int totalpage=totalnum%pagesize==0?totalnum/

pagesize:totalnum/pagesize+1).new乙個物件為stringbutffer的pagecode,開始拼接分頁的js**,返回pagecode的tostring。(js**不能顯示)

11.在mainservlet裡呼叫getpagetion方法,返回乙個string型別的pagecode,引數為total、page、pagesize,通過setattribute傳到前台。

java 日記本(二)

登入模組實現 一.開發環境 eclipse mysql 二.bootstrap bootstrap.kinghack.com 是乙個web框架,定義了很多樣式和js效果 container 固定布局 樣式 viewport 響應時開發 在head裡新增乙個mate標籤 元件input 文字框 inp...

java 日記本(六)

日誌歸類顯示 一.按日誌類別顯示 1.在model包裡新建乙個diarytype類,寫三個私有屬性diarytypeid,typename,diarycount。2.在dao包裡新建乙個diarytypedao類,用來查每個型別裡有多少日誌。寫乙個list 屬性的diarytypecountlist...

java 日記本(八)

日誌資訊顯示 一.日誌資訊顯示功能實現 1.在diarydao裡新增乙個新的方法,屬性為diary的diaryshow 引數是con diaryid。2.寫乙個sql語句。sql語句 select from t diary t1 t diarytype t2 where t1.typeid t2.d...