寫在前面的話:項目copy下來後,直接用idea導入應該是沒有問題的(項目的文件夾和包結構要正確),根據你的需要修改pom中的mysql驅動和數據庫資源文件後就可以部署到tomcat運行了!
學生信息管理系統( layUI + servlet + jdbc )
使用原生servlet作為後端進行開發
- 後端採用純servlet進行開發,同時搭配原生的jdbc,整個架構沒有使用任何框架,可以說是非常原始了;
- 驗證碼工具類可以返回驗證碼圖片和驗證碼內容,數據庫連接工具類可以返回一個數據庫連接和關閉數據庫連接的方法(但是封裝和設計模式不好,雖然線程安全,但使用會頻繁創建數據庫連接,開銷很大),還有一個工具類借助gson將request的數據轉換為json串;
- Dao層都是單表的CURD,沒有復雜的業務所以也就沒有添加事務的處理;
- 這裡的業務層和控制層幾乎耦合在了一起,一個業務一個servlet的方式造成了嚴重的代碼冗餘和資源浪費,在一個servlet里分別使用路徑匹配和if-else方法匹配才是正確方法;
- 典型的前後端不分離項目,前端集成了layui和jquery實現了非常精美和賞心悅目的效果,特別是登錄模塊和整個後台模塊都比較精美,但是在開發過程中可以明顯感到前端的開發難於後端!
- 這裡同時使用了util.date和sql.date,可以說是一大敗筆,造成了很多地方的格式轉換出現了問題(覺得彆扭的小伙伴可以都換成util.date,然後用@JsonFormat與@DateTimeFormat註解就行,數據庫字段可以使用datetime),後者是前者的子類,
- 這是我大三上學期的企業課大作業,整個項目皆為原創,如你所見除了前端稍微好看點外並沒有任何優點,就連代碼量最大的CURD在框架盛行的現在用個mybatis逆向工程或者MP都可以快速實現,所以任課老師也對該項目的評價很低(但是他教的就是servlet和jsp啊,早說用spring啥的可以加分,我一開始就去學框架了,氣!開個玩笑哈!)。當時的我簡直是著了魔的拼命做前端,甚至忘了自己應該專注於後端,複雜的業務(那種多表聯查)也沒怎麼做,看著其他同學那時候就開始用spring和mybatis了,對比之下我這就太low了!哈哈,不過我也不後悔,畢竟servlet比springmvc偏向底層,作為入門學習,整個項目使用servlet也能為後面的框架學習打下基礎嘛,然而花大量時間在前端還是不合適的,雖然前端也學到了很多,但你始終要為後端服務的。努力很重要,選擇更重要!
注:mysql5到mysql8還是做了很多改進的,不僅僅是安裝和配置,就連它們的連接驅動包很多地方都做了改動。




