摘要:最近在做某在線教育平臺(tái)網(wǎng)站的開(kāi)發(fā),按師兄的建議要用來(lái)搞。現(xiàn)在把開(kāi)發(fā)過(guò)程中的一些相關(guān)經(jīng)驗(yàn)貼出來(lái)。事先聲明,請(qǐng)確保和都已經(jīng)安裝好。對(duì)于不使用的開(kāi)發(fā)者,可以直接建一個(gè)簡(jiǎn)單的項(xiàng)目。使用的話,請(qǐng)按照?qǐng)D進(jìn)行操作。
訪問(wèn)GitHub下載最新源碼:https://github.com/gaussic/Sp...
文章已針對(duì)IDEA 2016做了一定的更新,部分更新較為重要,請(qǐng)重新閱讀文章并下載最新源碼。
另外:文中的附圖部分仍然為舊版本,請(qǐng)參照自身版本進(jìn)行配置。
前言
由于近期一直在做學(xué)術(shù)方面的工作,項(xiàng)目開(kāi)發(fā)相關(guān)工作并沒(méi)有花太多的時(shí)間,導(dǎo)致這篇文章的更新停步了很長(zhǎng)一段時(shí)間?,F(xiàn)在應(yīng)大家的要求,補(bǔ)上剩余部分,望能給大家?guī)?lái)一些幫助。由于時(shí)間的原因,在開(kāi)發(fā)環(huán)境上面有了一定的更新,但是并不造成太大的影響。
最近在做某在線教育平臺(tái)網(wǎng)站的開(kāi)發(fā),按師兄的建議要用SpringMVC來(lái)搞。之前對(duì)SpringMVC的認(rèn)知度為0,網(wǎng)上查閱各種資料,發(fā)現(xiàn)五花八門的配置都有,文章寫(xiě)的那叫一個(gè)亂啊,我覺(jué)得有些文章還是不要發(fā)出來(lái)的比較好,簡(jiǎn)直誤人子弟耽誤時(shí)間。最近借著師兄網(wǎng)上搜集的一些開(kāi)發(fā)經(jīng)驗(yàn),找到了IntelliJ網(wǎng)站上的這篇文章《Getting Started with SpringMVC, Hibernate and JSON》(該鏈接已失效,內(nèi)容會(huì)在文中體現(xiàn)),外加看了孔老師的《SpringMVC視頻教程》,著實(shí)有一種醍醐灌頂?shù)母杏X(jué),整個(gè)路子瞬間通了,開(kāi)發(fā)速度指數(shù)型上漲?,F(xiàn)在把開(kāi)發(fā)過(guò)程中的一些相關(guān)經(jīng)驗(yàn)貼出來(lái)。
一、相關(guān)環(huán)境
- Intellij IDEA 2016.2 Ultimate - Tomcat 8.0.35 - JDK 1.8.0_92 - Spring 4.2.6 - MySql 5.7 - Maven 3.3.9 - Bootstrap 3.3.5
以上是我要做的這個(gè)demo所需要的東西,當(dāng)然有些是可選的,版本也是可控的。比如說(shuō)如果你用不慣Maven的話可以自行去官網(wǎng)下載jar包然后導(dǎo)入自己的工程中,如果想要學(xué)習(xí)下Maven可以看看《Maven視頻教程》(偶然找到,這個(gè)老師做的視頻都挺好,推薦以下),不用完全的去學(xué)習(xí)Maven,懂大概意思后再去找找IntelliJ IDEA如何配置maven的相關(guān)文章就足夠了。
還有Bootstrap,純粹是個(gè)人潔癖,不需要這可以去之。
事先聲明,請(qǐng)確保IntelliJ IDEA、Tomcat、MySql和JDK都已經(jīng)安裝好。Maven和Bootstrap的話能有則有。前者為了讓導(dǎo)包更容易,后者為了讓頁(yè)面更美觀。此外,由于jdk以及mysql的安裝網(wǎng)上已經(jīng)有了很多教程,在此為節(jié)省篇幅不做介紹。廢話不多說(shuō),正式開(kāi)始。
二、本地Maven與Tomcat的安裝
注:如果使用IntelliJ IDEA集成的maven 3.0.5的話,可以忽略此步安裝。
1、下載并安裝本地maven
點(diǎn)擊“Apache-Maven官方網(wǎng)站”進(jìn)入官網(wǎng),點(diǎn)擊左側(cè)Download選項(xiàng):
進(jìn)入了下載頁(yè)面,往下拉可發(fā)現(xiàn)當(dāng)前版本是3.3.3,點(diǎn)擊下面紅框中的apache-maven-3.3.9-bin.zip就可下載,下載后解壓縮到相應(yīng)目錄下:
新增系統(tǒng)變量MAVEN_HOME:即MAVEN安裝目錄:
在Path中加入:%MAVEN_HOME%bin;
在cmd中輸入mvn -v,若顯示如下,則說(shuō)明本地maven配置完成:
2、下載并安裝本地Tomcat
進(jìn)入Tomcat官網(wǎng),點(diǎn)擊左側(cè)Download的Tomcat8.0,進(jìn)入Tomcat的下載頁(yè)面:
64位Windows版本下載64-bit Windows zip (pgp, md5, sha1),解壓到所需目錄下:
解壓后到bin目錄下運(yùn)行startup.bat,如圖下所示,如果出現(xiàn)Server startup in xxxx ms說(shuō)明Tomcat安裝成功。
三、創(chuàng)建Maven Web項(xiàng)目
前面說(shuō)了這么多,差不多基本的東西都保障了(前提保證你已經(jīng)安裝了jdk)?,F(xiàn)在進(jìn)入正題,如何來(lái)創(chuàng)建一個(gè)Web項(xiàng)目。對(duì)于不使用Maven的開(kāi)發(fā)者,可以直接建一個(gè)簡(jiǎn)單的Web項(xiàng)目。使用Maven的話,請(qǐng)按照?qǐng)D進(jìn)行操作。
菜單File->New Project可進(jìn)入上圖界面,首先選擇左邊欄Maven,再配置JDK(一般如果之前添加了JDK的話會(huì)自動(dòng)填充,如未添加的話點(diǎn)擊旁邊的New將JDK目錄導(dǎo)入即可)。勾選“Create from archetype“,然后選中4處藍(lán)色位置webapp,點(diǎn)Next,:
這里需要填寫(xiě)GroupId和ArtifactId還有Version,這三個(gè)屬性目的是標(biāo)識(shí)你的項(xiàng)目的唯一性,比如Tomcat的GroupId是org.apache,即它是apache組織的項(xiàng)目,ArtifactId是tomcat,項(xiàng)目名為tomcat,而我當(dāng)前使用的Version是7.0.68。這些只在發(fā)布時(shí)有用,在此可以隨便填寫(xiě),填好后點(diǎn)Next。
打開(kāi)Maven home directory,可以發(fā)現(xiàn)IntelliJ IDEA已經(jīng)集成了Maven 2和Maven 3兩個(gè)版本,如果使用默認(rèn)集成的maven的話,選擇Buldled(Maven 3),直接點(diǎn)擊Next。
我們也可以導(dǎo)入本地新安裝的較新的Maven版本,點(diǎn)擊藍(lán)色箭頭右邊的 ... 按鈕將Maven路徑導(dǎo)入即可,點(diǎn)擊Next:
填寫(xiě)項(xiàng)目名,選擇項(xiàng)目保存路徑,點(diǎn)擊Finish:
maven會(huì)在后臺(tái)生成web項(xiàng)目,這需要等待一定的時(shí)間,視網(wǎng)絡(luò)環(huán)境而定,經(jīng)驗(yàn)發(fā)現(xiàn)用較新版本的maven項(xiàng)目生成更快,使用IDEA集成的maven可能會(huì)等待很長(zhǎng)一段實(shí)踐。
左邊紅框中展示了該項(xiàng)目的文件結(jié)構(gòu)??梢园l(fā)現(xiàn),它在src/main下創(chuàng)建了一個(gè)recources文件夾,該文件夾一般用來(lái)存放一些資源文件,還有一個(gè)webapp文件夾,用來(lái)存放web配置文件以及jsp頁(yè)面等,這已經(jīng)組成了一個(gè)原始的web應(yīng)用。選擇右邊紅框的Enable-Auto-Import,可以在每次修改pom.xml后,自動(dòng)的下載并導(dǎo)入jar包,這一點(diǎn)在后面詳述。
注:如果這一步生成實(shí)在太慢的話,建議看一下以下兩篇(感謝26樓 wintersun2 同學(xué)的提出):
文章1: http://www.cnblogs.com/beiyer...
文章2:http://blog.csdn.net/cleverlz...
四、Maven自動(dòng)導(dǎo)入jar包
既然我們要用SpringMVC開(kāi)發(fā),那肯定少不了SpringMVC的相關(guān)jar包。如果不使用Maven的話,那就需要去官網(wǎng)下載相關(guān)的jar包,然后導(dǎo)入到項(xiàng)目中?,F(xiàn)在使用maven的話,就不需要上網(wǎng)找jar包了。具體容我一一道來(lái)。
Maven所做的工作其實(shí)很簡(jiǎn)單,就是自動(dòng)把你需要的jar包下載到本地,然后關(guān)聯(lián)到項(xiàng)目中來(lái)。maven的所有jar包都是保存在幾個(gè)中央倉(cāng)庫(kù)里面的,其中一個(gè)最常用的是Maven Repository,即,你需要什么jar包,它就會(huì)從倉(cāng)庫(kù)中拿給你。那么如何告訴maven需要什么jar包呢?我們看看工程目錄,能找到一個(gè)pom.xml文件(這個(gè)文件在剛創(chuàng)建好項(xiàng)目時(shí)就已經(jīng)展現(xiàn)在了大家面前),maven就是靠它來(lái)定義需求的,代碼如下:
4.0.0 com.gaussic springmvcdemo war 1.0-SNAPSHOT springmvcdemo Maven Webapp http://maven.apache.org junit junit 3.8.1 test springmvcdemo
我們可以看到這個(gè)文件包含了我們之前定義的本項(xiàng)目的gropId等信息,這些信息是該項(xiàng)目的標(biāo)識(shí),我們不要去改動(dòng)它們。重點(diǎn)看
junit junit 3.8.1 test
這是單元測(cè)試包,提供了三個(gè)基本信息,第4個(gè)scope對(duì)其他包來(lái)說(shuō)是非必需的。所有jar包的引入都要滿足這個(gè)格式。那么如何查看這些jar包的3個(gè)信息呢,可能剛接觸是開(kāi)發(fā)者還不是很熟悉,這個(gè)時(shí)候就需要查閱倉(cāng)庫(kù)了。比如我們需要引入Spring核心jar包spring-core,打開(kāi)Maven Repository,搜索spring-core,進(jìn)入如下界面:
點(diǎn)擊進(jìn)入紅框選中的Spring Core,如下所示,可以看到各版本的使用情況:
選擇最新版本4.2.5.RELEASE,可以看到其dependency寫(xiě)法如下紅框所示:
我們將其復(fù)制到pom.xml中的
這樣,Maven就會(huì)開(kāi)始自動(dòng)下載jar包到本地倉(cāng)庫(kù),然后關(guān)聯(lián)到你的項(xiàng)目中,下載完成后,我們展開(kāi)工程目錄中External Libraries:
可以發(fā)現(xiàn),雖然我們只寫(xiě)了一個(gè)依賴,但是它導(dǎo)入了兩個(gè)jar包,也就是說(shuō),導(dǎo)入某個(gè)jar包時(shí),與它密切相關(guān)的jar包也會(huì)同時(shí)被導(dǎo)入進(jìn)來(lái)。
除了spring-core,我還要spring-context,復(fù)制spring-core的
org.springframework spring-context 4.2.5.RELEASE
下載完成后,查看External Libraries,會(huì)不會(huì)發(fā)現(xiàn),瞬間導(dǎo)入了好多jar包(當(dāng)然不是瞬間,這得看你的網(wǎng)速了)呢:
這就是Maven的強(qiáng)大之處,如果你需要使用SpringMVC開(kāi)發(fā)網(wǎng)站的話,只需記住幾個(gè)重要的包的名字,就可以輕松將所有包導(dǎo)入項(xiàng)目中。
長(zhǎng)話短說(shuō),現(xiàn)在我們要進(jìn)行SpringMVC的開(kāi)發(fā),請(qǐng)把你的pom.xml變成下面的樣子,當(dāng)然不要改你的grupId等信息(從modelVersion到url都不要?jiǎng)樱?/p>
4.2.6.RELEASE 5.1.0.Final
請(qǐng)?jiān)?dependencies>中加入以下依賴:
org.springframework spring-webmvc ${spring.version} org.springframework.data spring-data-jpa 1.10.1.RELEASE org.hibernate hibernate-entitymanager ${hibernate.version} org.hibernate hibernate-c3p0 ${hibernate.version} com.mchange c3p0 0.9.5.2 javax.servlet jstl 1.2 mysql mysql-connector-java 5.1.39
將
springmvcdemo org.apache.maven.plugins maven-compiler-plugin 1.8 1.8
我們可以發(fā)現(xiàn),除了導(dǎo)入了spring相關(guān)jar包,還有一些其他的包,這些包都是有作用的,我們后面慢慢說(shuō)。如果不使用Maven請(qǐng)自行下載spring、hibernate、mysql、jstl等相關(guān)jar包然后導(dǎo)入到工程中。至此,jar包的導(dǎo)入就完成了,我們按 ctrl+alt+shift+s,或者File->Project Structure查看一下項(xiàng)目結(jié)構(gòu),看看有什么問(wèn)題:
由于之后我們要開(kāi)始寫(xiě)代碼了,先做一些配置,選擇Modules,在SpringMVCDemo的srcmain文件夾中新建一個(gè)文件夾,取名為java:
選中java文件夾,點(diǎn)擊上面的Make as:Sources,該文件夾就會(huì)變成藍(lán)色,用以保存java代碼,按OK,結(jié)束配置。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/73281.html
摘要:為了能夠處理中文的請(qǐng)求,再配置一個(gè),以避免請(qǐng)求中文出現(xiàn)亂碼情況至此,配置完畢。一般為一些基本的,用于進(jìn)行相應(yīng)的頁(yè)面顯示,用于處理網(wǎng)站的請(qǐng)求?,F(xiàn)在,需要配置來(lái)運(yùn)行該項(xiàng)目。 摘要講解如何配置SpringMVC框架xml,以及如何在Tomcat中運(yùn)行轉(zhuǎn)載請(qǐng)注明出處:Gaussic(一個(gè)致力于AI研究卻不得不兼顧項(xiàng)目的研究生)。 注:此文承接上一文:使用IntelliJ IDEA開(kāi)發(fā)Sprin...
摘要:數(shù)據(jù)綁定入門學(xué)習(xí)總結(jié)時(shí)間年月日星期日說(shuō)明本文部分內(nèi)容均來(lái)自慕課網(wǎng)。慕課網(wǎng)教學(xué)示例源碼個(gè)人學(xué)習(xí)源碼第一章課程介紹數(shù)據(jù)綁定入門概述數(shù)據(jù)綁定概念來(lái)自百度百科簡(jiǎn)單綁定是將一個(gè)用戶界面元素控件的屬性綁定到一個(gè)類型對(duì)象實(shí)例上的某個(gè)屬性的方法。 《SpringMVC數(shù)據(jù)綁定入門》學(xué)習(xí)總結(jié) 時(shí)間:2017年2月19日星期日說(shuō)明:本文部分內(nèi)容均來(lái)自慕課網(wǎng)。@慕課網(wǎng):http://www.imooc.co...
摘要:今天我們說(shuō)說(shuō)怎么搭建環(huán)境自己寫(xiě)一個(gè)插件。插件工程目錄結(jié)構(gòu)一個(gè)典型的插件目錄結(jié)構(gòu)就像下圖。如果成功那么在工程目錄就會(huì)生成一個(gè)同名的文件。 PyCharm 是很多 Python 開(kāi)發(fā)者優(yōu)先選擇的 IDE,功能強(qiáng)大,跨平臺(tái),提供免費(fèi)社區(qū)版,非常良心。如果你想自己給PyCharm添加一些功能怎么辦呢?有兩個(gè)辦法: 通過(guò)提需求實(shí)現(xiàn),到 JetBrains 的 github 去提issue或者自...
摘要:地址不使用,創(chuàng)建的方法新建選擇和需要選擇,下載相關(guān)的會(huì)在下新建配置文件應(yīng)用服務(wù),配置需選擇,下載下載,請(qǐng)稍等目錄結(jié)構(gòu)配置配置在下,新建目錄變更配置如果在中有標(biāo)的數(shù)字,請(qǐng)點(diǎn)擊,選擇配置模塊配置選擇目錄下的文件夾添加目錄結(jié)構(gòu)配置文件修改 github地址:https://github.com/rongyaya10... 不使用Maven,創(chuàng)建SSH(Spring+SpringMVC+Hib...
閱讀 2038·2021-11-11 16:55
閱讀 1535·2019-08-30 15:54
閱讀 838·2019-08-29 15:34
閱讀 2344·2019-08-29 13:11
閱讀 2969·2019-08-26 13:28
閱讀 1960·2019-08-26 10:49
閱讀 1059·2019-08-26 10:40
閱讀 2638·2019-08-23 18:21