{eval=Array;=+count(Array);}

国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

問答專欄Q & A COLUMN

初學java的小白接到了項目:JSP頁面與MySQL數據庫連接、MVC模式等。怎么做才能體現項目需求呢?

nodejhnodejh 回答0 收藏2
問題描述:本人初學java一年。現在到了做項目了。項目需求:JSP頁面與MySQL數據庫連接、MVC模式等。現在很迷茫。不知道要做啥項目才能體現需求
收藏問題

10條回答

xorpay

xorpay

回答于2022-06-28 15:38

謝謝邀請!

JSP是Java Web開發的傳統技術之一,雖然弊端比較多,比如業務邏輯與顯示邏輯耦合、無法分別部署、開發角色分工不清等問題,但是JSP對于初學者來說還是有一定的學習必要性,有不少遺留項目依然需要采用JSP技術。

MySQL數據庫是目前使用比較多的數據庫之一,尤其在Web開發領域。MySQL數據庫簡單易學且功能強大,Java程序員往往都對MySQL數據庫比較熟悉。雖然通過JSP直接連接MySQL數據庫是可以做到的,但是這種做法顯然是有很多問題的,恰好通過MVC結構是可以基本解決這些問題的。

MVC是一個軟件開發領域的經典結構,采用MVC進行Web開發也就是所謂的Model2開發方式,這種開發方式用JavaBean來描述M(模型),采用JSP來描述V(視圖),采用Servlet來描述C(控制器)。MVC最大的好處是實現了不同部分的解耦,提升了Web程序的模塊化程度,使得多角色協作開發有了重要的基礎,也為日后的優化打下來基礎。

要想利用MVC結構完成一個傳統Java Web開發,需要綜合使用Servlet、JSP、JavaBean、JDBC、MVC、DAO等一系列傳統技術,而通過一個模擬銀行“存取轉”業務的Web應用是一個不錯的選擇。

存取轉業務的基礎是賬戶,所以可以先寫一個Account類作為M部分,然后為M定義一個映射表格。以DAO的方式完成數據庫與Account類的映射,需要定義接口、實現類和工廠類。接著定義控制器Servlet,在Servlet中完成用戶請求的各種“導航”,最終通過JSP完成呈現。

這個過程只是一個基本的模擬,而且并沒有采用任何開源框架,對于Java學習者來說,學習開源框架是必要的。在掌握了MVC和DAO之后,再學習SpringMVC和Mybatis會更容易理解。

作者簡介:中國科學院大學計算機專業研究生導師,從事IT行業多年,研究方向包括動態軟件體系結構、大數據、人工智能相關領域,有多年的一線研發經驗。

歡迎關注作者,歡迎咨詢計算機相關問題。

評論0 贊同0
  •  加載中...
henry14

henry14

回答于2022-06-28 15:38

謝邀~

針對這個問題,具體的怎么連接數據庫,怎么增刪查改,這些代碼自己用google一下就可以得到答案,這里就不細說;初學者寫代碼經常會有個問題:把所有代碼都寫在“一層”里,甚至是一個類、一個方法里。

下面我談談自己的建議,如果意見不同,請留言討論。


什么是MVC

MVC是Model—View—Controler的簡稱;即模型—視圖—控制;MVC是一種設計模式,它強制性的把應用程序的輸入、處理和輸出分開。

  • 視圖: 視圖是用戶看到并與之交互的界面;視圖向用戶顯示相關的數據,并接受用戶的輸入;視圖不進行任何業務邏輯處理。

  • 模型: 模型表示業務數據和業務處理;相當于JavaBean;一個模型能為多個視圖提供數據。這提高了應用程序的重用性

  • 控制器: 當用戶單擊Web頁面中的提交按鈕時,控制器接受請求并調用相應的模型去處理請求;然后根據處理的結果調用相應的視圖來顯示處理的結果。

  • MVC的處理過程:首先控制器接受用戶的請求,調用相應的模型來進行業務處理,并返回數據給控制器。控制器調用相應的視圖來顯示處理的結果。并通過視圖呈現給用戶。

代碼如何分層

大概知道什么是MVC了吧,其實就是:對代碼分層,各司其職。

現在看看題主的代碼怎么寫,我就按照我的習慣進行一下分層:

  • JSP能直接訪問數據庫么?技術上是沒問題的,但是我們通常不會這么做。和數據庫完成交互的,一般代碼里面會有兩層:Model和Dao。Model相當于JavaBean,是對數據庫表中數據的承載,Dao就是對數據庫表的操作。這里可以是JDBC,也可以使用ORM框架。

  • 再往上,我一般會設置多帶帶的Service層,Service會有業務邏輯,可能會調用其他的Service,也可能會調用Dao層中的方法,也可能是調用其他系統的接口。

  • Service上面,再是Controller層,主要用于接受客戶端的數據,并對數據進行簡單的校驗。(我這樣的寫法,Service層+Controller層 = MVC中的C)

  • 瀏覽器(客戶端)與C層的交互,會使用的View。

  • 當然,靜態變量、配置、工具類等,都會有多帶帶的包,不在這里討論。

具體的流程

所以具體的一個流程是這樣的?例如頁面輸入用戶身份證號,查詢用戶詳細信息:

  • JSP中輸入身份證號;

  • Controller層拿到View,對于代碼來說就是個Java對象,這一層可以增加驗證,比如不能輸入空、null或是身份證號規則驗證;

  • 傳到Service層,這一層這個場景下,沒有什么特殊處理;

  • 傳到Dao層,查詢數據庫,返回客戶信息:客戶姓名-張三,客戶性別-M;開始返回;

  • 傳回Service層,把M轉成“男”(不過經常是在SQL中直接關聯字典表了);

  • 傳回Controller層,再傳回JSP展示。

我將持續分享Java開發、架構設計、程序員職業發展等方面的見解,希望能得到你的關注。

評論0 贊同0
  •  加載中...
張遷

張遷

回答于2022-06-28 15:38

首先謝謝你的邀請,因為你的最后一句話,讓我對你的提問理解有點模糊,不過你前面說的項目需求,SpringMVC和JSP、MySQL,你可以做個簡單的登錄就能實現你這三個條件了,用MVC框架來搭建項目,數據庫連接有很多種,你可以百度搜一下,建一個登錄用戶的實體,然后就可以了。

評論0 贊同0
  •  加載中...
BWrong

BWrong

回答于2022-06-28 15:38

jsp做頁面連接mysql數據庫,建立mvc框架

評論0 贊同0
  •  加載中...
qieangel2013

qieangel2013

回答于2022-06-28 15:38

1. 首先從問題中得知你可能需要用到的技術jsp,mysql

2. jsp是前端顯示技術,mysql是后臺數據庫,mvc只是一種模式,把model數據,view界面,controller業務邏輯分離開來

3. 可以做一些圖書管理系統,學生管理系統,可以上網搜教程,也可以私聊我,免費指導

評論0 贊同0
  •  加載中...
U2FsdGVkX1x

U2FsdGVkX1x

回答于2022-06-28 15:38

做一個xx管理系統,就明白bean,servlet,dao怎么寫了

評論0 贊同0
  •  加載中...
rose

rose

回答于2022-06-28 15:38

初學者可以寫個自定義mvc,有助于了解mvc模式。

評論0 贊同0
  •  加載中...
kaka

kaka

回答于2022-06-28 15:38

把你這里說的內容,做成一個簡單應用吧!最后一句:你有什么建議?在這里告送我吧!

評論0 贊同0
  •  加載中...
馬永翠

馬永翠

回答于2022-06-28 15:38

需求不清晰噢⊙_⊙

評論0 贊同0
  •  加載中...
JouyPub

JouyPub

回答于2022-06-28 15:38

jsp可以直接寫java代碼,但是我不明白什么奇葩項目要在jsp上直接連接MySQL?

評論0 贊同0
  •  加載中...

最新活動

您已邀請0人回答 查看邀請

我的邀請列表

  • 擅長該話題
  • 回答過該話題
  • 我關注的人
向幫助了您的網友說句感謝的話吧!
付費偷看金額在0.1-10元之間
<