IntelliJ IDEA基于SpringBoot如何搭建SSM開發環境的步驟詳解
之前給大家在博文中講過如何通過eclipse快速搭建SSM開發環境,但相對而言還是有些麻煩的,今天玄武老師給大家介紹下如何使用IntelliJ IDEA基于SpringBoot來更快速地搭建SSM開發環境,相比于傳統搭建方式,極少的配置文件和配置信息會讓你徹底愛上它。
環境搭建步驟詳解
第1步:創建Spring Initializr項目
在IntelliJ IDEA中新建項目,選擇Spring Initializr,JDK版本選擇自己安裝的版本(首次使用可能顯示沒有,那么就點擊New去按照步驟創建),下面的選擇Deafult即可,然后點擊Next。
第2步:填寫項目信息
項目信息根據自己的需求與習慣去填寫,但注意Type要選擇Maven,這樣所有的相關框架的jar包都不需要我們手工下載和添加,idea會自動幫我們添加好,非常的方便。
第3步:選擇項目依賴
這里的項目依賴我們主要包括Spring Web Starter 、MySQL和MyBatis,如果你有其他的擴展需求也可以自行添加,這里我們只選這3個就夠用了,然后點擊Next。
第4步:填寫項目名稱和項目保存目錄
一般情況下默認為之前的項目名和工作空間即可,也可以自行選擇項目保存目錄,然后直接finish。
第5步:必要的配置
雖然SpringBoot減少了大量的xml配置,但是一些關鍵的配置還是不能少的。比如數據庫、SpringMVC視圖解析器、Mybatis的SQL文件在哪,以及Log4J日志級別(可選)。SpringBoot中一般有兩種格式的配置文件:.properties或者.yml格式,二選一即可。SpringBoot會默認在srcmainresources目錄下創建名為application.properties配置文件,我們新增配置如下:
注意:這里面的數據庫配置和mapper映射類所在的包都需要改成自己的
#tomcat端口配置server.port=8080#日志級別配置,為了避免運行日志過多,SSM三個框架包日志需詳細記錄,設為debuglogging.level.org.springframework=debuglogging.level.org.mybatis=debuglogging.level.org.apache.ibatis=debug #數據庫連接配置spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/ssm?characterEncoding=utf-8&serverTimezone=UTCspring.datasource.username=rootspring.datasource.password=123456 #springMVC的視圖解析器相關配置spring.mvc.view.prefix=/WEB-INF/views/spring.mvc.view.suffix=.jsp #mybatis#配置映射類所在的包mybatis.type-aliases-package=com.panziye.ssmdemo.model
如果使用yaml方式配置如下,新建名為application.yml文件(注意要在右下角將其設置為UTF-8編碼),代碼如下:
注意:yml使用縮進代表層級關系,縮進只能使用空格,不能使用tab鍵,不要求空格個數,只需要相同層級左對齊(一般2或4個空格),配置格式為key:> value,冒號后要有一個空格
#tomcat端口配置server: port: 8080#日志級別配置,為了避免運行日志過多,SSM三個框架包日志需詳細記錄,設為debuglogging: level: org: springframework: debug mybatis: debug apache: ibatis: debug#spring配置spring: #數據庫連接配置 datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/ssm?characterEncoding=utf-8&serverTimezone=UTC username: root password: 123456 #springMVC的視圖解析器相關配置 mvc: view: prefix: /WEB-INF/views/ suffix: .jsp#mybatis 配置映射類所在的包mybatis: type-aliases-package: com.panziye.ssmdemo.model
第6步:配置jsp支持
SpringBoot默認不支持JSP。為了支持JSP、EL表達式、熱部署、監控等功能,找到pom.xml文件,手動添加如下依賴:
<!-- 支持jsp--><dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId></dependency><!-- 支持jstl--><dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId></dependency><!-- 支持熱部署,修改代碼不需要重啟 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional></dependency>
第7步:配置對xml的支持
maven默認是不編譯xml文件的,所以要加上,否則Mapper.xml會報錯 ,所以要在pom.xml的build標簽中添加對xml的支持,代碼如下:
<resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> <filtering>true</filtering> </resource></resources>
第8步:補充-創建webapp目錄
由于IDEA新建的此web項目沒有webapp目錄,如果你想寫jsp文件就會很蒙,不知道放哪,那么我們需要手工創建webapp目錄,操作如下:在File->Project Structure中,選擇Modules->Web,點擊加號創建如圖文件及目錄(需要分別指定部署描述符web.xml的位置,以及web資源根目錄),然后點擊OK,這時你在項目中就能找到webapp目錄了。
第9步:測試項目
測試項目在此就不多贅述了,自己可以在java目錄下寫java代碼,在webapp下寫jsp(寫法和普通搭建的方式都一樣),但記得運行的時候得運行對應Application文件,我這里是運行SsmDemoApplication文件。
注意:如果你不在Dao層代碼上加@Mapper注解和application.properties中配置mybatis.mapper-locations=classpath*:com/panziye/ssmdemo/dao/*.xml時,就需要在SsmDemoApplication上加上@MapperScan(“com.panziye.ssmdemo.dao”)注解來指定dao層掃描,否則會出現找不大Dao實例的錯誤
注意:如果啟動報錯如下:url’ attribute is not specified and no embedded datasource could be configured,則需要在啟動類的@EnableAutoConfiguration或@SpringBootApplication中添加exclude= {DataSourceAutoConfiguration.class},排除此類的autoconfig。即如下注解@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})
總結
基于IntelliJ IDEA工具使用SpringBoot搭建SSM開發環境,相比傳統方式是不是簡單的太多,既不需要關心那么多的jar包,也不需要關心復雜的xml配置文件,如果有同學問那么eclispe可否也用SpringBoot來這樣快速搭建呢?答案是可以,不過不推薦,因為使用eclipse創建SpringBoot項目需要安裝一個sts(Spring tool suit)插件,也比較麻煩,還是使用IDEA最方便。
到此這篇關于IntelliJ IDEA基于SpringBoot如何搭建SSM開發環境的步驟詳解的文章就介紹到這了,更多相關idea搭建SSM開發環境內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
1. Java8內存模型PermGen Metaspace實例解析2. 利用單元測試對PHP代碼進行檢查3. python如何實現word批量轉HTML4. python excel和yaml文件的讀取封裝5. python3實現往mysql中插入datetime類型的數據6. moment轉化時間戳出現Invalid Date的問題及解決7. python爬蟲實戰之制作屬于自己的一個IP代理模塊8. python操作數據庫獲取結果之fetchone和fetchall的區別說明9. Django 權限管理(permissions)與用戶組(group)詳解10. App啟動優化-Android性能優化
