成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

JSP設計模式淺析

開發(fā) 后端
本文簡要介紹了JSP設計模式的思路以及在JSP設計模式中的一些實例應用,包括MVC、設計思路、Bean的設計等。

JSP設計模式介紹

記得初學JSP的時候,總喜歡把他和ASP,PHP去比較,也習慣于使用Asp的開發(fā)模式去寫JSP后來才發(fā)現(xiàn)這真是很傻的做法,其實JSP一出了來就已經(jīng)用MVC模式了。下面我就簡要說說JSP設計使用MVC來設計。

JSP設計模式中MVC介紹

MVC其實是模、視圖、控制的縮寫,也就是說在使用JSP時,有相應的文件去實現(xiàn)相應的操作

通常JSP只負責view也就是只負責顯示頁面。業(yè)務邏輯等有bean(ejb)去實現(xiàn)。下面討論的是不使用ejb的情況下實現(xiàn)。如果使用ejb,ejb負責M.C通常會由servlet去實現(xiàn)?;蛘呤褂胹truts。

JSP設計模式的設計思路

當你構建一個Application時。你必須考慮界面的問題,而界面修改是非常平常的。如果你在Jsp中實現(xiàn)所有的操作,一旦修改界面你麻煩大了。美工不懂JSP的,你必須自己去修改無數(shù)個文件,頭不要太大,而此時一般時間都很緊,使用MVC則可以減少你的一些麻煩。在設計時候Jsp只負責顯示頁面,也就是說Jsp調用Bean(Struts,servlet)傳過來的數(shù)據(jù)然后顯示而Bean(Struts,servlet)負責收集JSP需要的數(shù)據(jù),用ArrayList(Arttibute)傳給JSP。假如需要提交表單,一般也直接提交給Struts,servlet,處理后以后再返回處理信息。而其中相應的業(yè)務邏輯由Bean去實現(xiàn)。

JSP設計模式中Bean的設計

在我使用時候Bean通常有三類,分別在manager,entry,database目錄下面。

manager下面的bean做商業(yè)邏輯

entry下的bean就是封裝數(shù)據(jù),其實就是每個數(shù)據(jù)庫表對應會有一個bean。Jsp得到的也全部是類。

database下的bean就是操作數(shù)據(jù)庫,執(zhí)行如insert,update,delete,load(查詢一條記錄),batchload(查詢多條記錄)。

他們之間的關系是entry負責封裝數(shù)據(jù),作為database的調用參數(shù),返回結果。   

manager調用database處理的結果。manager和Jsp通信。JSP得到的結果從manager來, JSP需要做操作調用manager,即使是一個insert 在database存在這樣的方法但在manager中你還是需要再封裝一次。這樣做的目的是使結構盡量簡單。database只負責操作數(shù)據(jù)庫。manager只做邏輯(取相應的數(shù)據(jù))處理相應的邏輯,而entry則只把database取到的數(shù)據(jù)封裝,或則把頁面得到的參數(shù)封裝,做為參數(shù)傳給相應的Bean.

JSP設計模式的設計實例

下面我把留言板作為實例來討論:

  1. entry/Guestbook.java(留言板對象)  
  2.  
  3. database/GuestbookMap.java(更新,刪除,修改留言板)  
  4.  
  5. manager/GuestbookManager.java(處理所有的事務)  
  6.  
  7. 數(shù)據(jù)表結構(postgresql)  
  8.  
  9. create sequence seq_guestbook increment 1 ;  
  10. /**序列號生成器**/ 
  11. create table guestbook(  
  12. id int8 default nextval('seq_guestbook'), /**主鍵**/ 
  13. title varchar(64),/**主題**/ 
  14. body text,/**內容**/ 
  15. sayid int8,/**發(fā)言人**/ 
  16. toid int8,/**接受人**/ 
  17. saytime datetime default now(),/**留言時間**/ 
  18. newflg smallint default 1/**是否查看過**/ 
  19. );  
  20. Guestbook.java  
  21. =======================  
  22. import java.util.*;  
  23. public class Guestbook(){  
  24. private int id;  
  25. private String title;  
  26. private body title;  
  27. private int sayid;  
  28. private int sayid;  
  29. private Date saytime;  
  30. private short newflg;  
  31. public Guestbook(){  
  32. }  
  33. public int getId(){  
  34. return this.id;  
  35. }  
  36. public void setId(int _id){  
  37. this.id=_id;  
  38. }  
  39. ........  
  40. (全是get/set方法)  
  41. }  
  42. GuestbookMap.java  
  43. ==============================  
  44. import Guestbook;  
  45. public class GuestbookMap(){  
  46. public GuestbookMap(){  
  47. }  
  48. public Guestbook load(int id){  
  49. file://取到一條guestbook  
  50. }  
  51. file://sqlstr 查詢條件  
  52. file://orderstr 排序條件  
  53. file://rcdbegin 記錄開始  
  54. file://rcdend 記錄結束  
  55. //  
  56. public ArrayList batchLoad(String sqlstr,String orderstr,int rcdbegin,int rcdend){  
  57. file://ArrayList 里面封裝了Guestbook  
  58. }  
  59. public void insert(Guestbook info){  
  60. }  
  61. public void update(Guestbook info){  
  62. }  
  63. public void delete(int id){  
  64. file://取到一條guestbook  
  65. }  
  66. public int getRcdNums(String sqlstr){  
  67. file://取記錄條數(shù)  
  68. }  
  69. }  
  70. GuestbookManager.java  

根據(jù)需要封裝需要的方法,這部分才是你要寫的

上面的方式entry,database的文件可以自動生成。需要寫的就是GuestbookManager里面的方法,你也許會覺得工作量比你所有的操作都在JSP中大,但是這樣結構非常清晰。還需要的就是寫一個數(shù)據(jù)庫連接池,所有的數(shù)據(jù)庫操作都從一個地方取,每一次都去連接數(shù)據(jù)庫開銷很大的。

【編輯推薦】

  1. 對JSP中的內置對象簡單概述
  2. JSP和Servlet中的幾個編碼的作用及原理
  3. 使用JSP include機制改進外觀
  4. JSP編程應注意的六個常見問題
  5. JSP標簽庫解析
責任編輯:仲衡 來源: 編程入門網(wǎng)
相關推薦

2009-07-07 16:39:40

JDK Observe

2009-07-06 13:52:56

編寫JSP Tag

2024-01-09 09:06:13

2009-07-02 11:34:42

JSP指令JSP開發(fā)

2009-07-14 10:47:47

MyEclipse J

2010-07-14 09:01:07

架構設計

2009-04-29 09:06:18

C#設計模式Adapter

2009-07-03 09:08:23

JSP標記學習筆記

2009-07-03 09:08:23

JSP標記學習筆記

2009-07-06 14:05:11

JSP服務器

2009-06-29 18:11:40

JSP設計模式

2009-07-03 17:48:34

JSP頁面翻譯

2009-07-01 18:20:29

JSP的優(yōu)勢

2009-07-02 10:51:21

腳本編程JSP開發(fā)

2009-07-06 12:49:33

JSP編譯器

2009-07-06 17:11:38

Servlet文件上傳

2009-06-16 15:20:48

ApplicationJSP程序

2009-03-17 16:18:51

JspActionStruts

2009-07-14 15:42:38

MyEclipse開發(fā)

2009-07-03 14:41:03

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: jizz在线免费观看 | 精品国产一区二区三区久久影院 | 国产日韩精品久久 | 羞羞视频免费观 | 欧美亚洲国产日韩 | 国产精品综合 | 国产专区在线 | 精品久久香蕉国产线看观看亚洲 | www.精品国产| 自拍视频在线观看 | 日日操夜夜操天天操 | 欧美一级做a爰片免费视频 国产美女特级嫩嫩嫩bbb片 | 本道综合精品 | 亚洲高清av在线 | 米奇成人网 | 中文字幕观看 | 黄色大片免费播放 | 中文字幕一区二区三区精彩视频 | 久久国产一区二区三区 | 伊人中文字幕 | 懂色中文一区二区在线播放 | 亚洲欧美综合 | 欧美一区二区视频 | 99热精品在线观看 | 国产精品美女视频 | 欧美啪啪 | 国产精品国产精品国产专区不卡 | 天天天插| 久久免费精彩视频 | 国产伦精品一区二区三区照片91 | 国产一级片一区二区 | 久久专区 | 欧美精品一区二区三区四区 在线 | 在线成人av | 亚洲精品1 | 中文字幕免费 | 美女一级毛片 | 亚洲成人福利在线观看 | 男女一区二区三区 | 精品国产99 | 先锋影音资源网站 |