這幾天閉關修煉了一陣子,就是學習這個springboot框架,固然也只是剛剛入門,這個框架是以springMVC爲基礎的,必須對springMVC有必定的瞭解纔可以瞭解掌握springboot,那麼咱們話很少說,直接進入正題。html
直接new 一個Maven工程(固然這個的前提是在你的計算機裏的maven環境以及maven庫都已經準備就緒的狀況,(maven庫本身測試通常都是本地,公司開發的話通常都是在私服裏面))java
點擊nextgit
仍是點擊nextgithub
咱們創建web項目,因此選擇web項目點擊next。(我上面是由於沒有選中web,選中便可點擊next)web
這裏面的值按照實際狀況填入,就是maven項目裏幾個屬性的值(這裏我就以springboot爲例),填寫完成以後點擊finish這樣項目就建立成功了!spring
到這樣項目報錯,這裏報錯是很正常的,由於咱們沒有引入頁面的jar包,那麼咱們如今去解決這個報錯,以前咱們在理論上都知道springboot是經過pom.xml這個文件來引入jar包的,那還等什麼呢,來吧!sql
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.springboot</groupId> <artifactId>springbootdemo</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>springbootdemo</name> <description>springbootdemo</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> <relativePath/> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.7</java.version> </properties> <dependencies> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.2.0</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency> <!-- Start: log4j2 --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jul-to-slf4j</artifactId> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> </dependency> <!-- End: log4j2 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.3</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.5</version> </dependency> <!--mybatis分頁插件--> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.1.0</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.18</version> </dependency> <!--過濾emoji字符--> <dependency> <groupId>com.vdurmont</groupId> <artifactId>emoji-java</artifactId> <version>3.2.0</version> </dependency> <!-- https://mvnrepository.com/artifact/com.google.code.gson/gson --> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.0</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> <dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> </dependency> <!-- start 使用Jetty做爲容器運行 --> <!-- <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jetty</artifactId> <scope>provided</scope> </dependency> --> <!-- end 使用Jetty做爲容器運行 --> </dependencies> <!-- 普通的maven打包方式 --> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> <!-- 普通的maven打包方式 --> </project>
而後跟新項目一下便可(右擊項目>選中maven>點擊updateProject>選中正在操做的項目>點擊ok便可)數據庫
注意:這時候的Java Resources 只有一個文件夾,因此咱們須要再建一個文件夾apache
創建文件夾後如圖所示api
咱們首先在java文件夾下建包,而且書寫啓動類以及控制層等等
如此咱們的層數都分好了,
注意:這裏的啓動的所在層級必定要是他們其餘所在的父級數,由於註解是從上往下自動掃描的,
這裏還有咱們的mapper文件沒有配,配置mapper文件書寫sql語句對數據庫進行操做,那麼必須有的一點就是首先得讓程序鏈接上數據庫;
在resources文件夾下建application.properties文件,注意:這裏的文件名必定得是application.properties
在application.properties文件裏配置數據庫的相關信息
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:orcl
spring.datasource.username=scott
spring.datasource.password=tiger
spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
而且同時在resources文件下新建一個文件夾用於存放mapper文件(這裏就建一個叫mapper的文件夾)
此外,爲了後面作準備,咱們再新建兩個文件夾分別叫static和templates用於存放頁面和js等一些文件;
在application.properties配置頁面路徑以及mapper文件的路徑
# thymeleaf spring.thymeleaf.prefix=classpath:/templates/ spring.thymeleaf.check-template-location=true spring.thymeleaf.suffix=.html spring.thymeleaf.encoding=UTF-8 spring.thymeleaf.content-type=text/html spring.thymeleaf.mode=HTML5 spring.thymeleaf.cache=false mybatis.mapper-locations=classpath:mapper/*Mapper.xml mybatis.type-aliases-package=com.springboot.dao
下面作一個簡單的列子,從數據庫中拿一張表,並將表中的信息顯示的頁面上
前臺頁面代碼
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"></meta> <title>Insert title here</title> </head> <body> <a th:href="@{'/test/selectEmp'}">查詢emp</a>
</body> </html>
//注意:這是使用的thymeleaf模板,因此th:href="@{'/test/selectEmp'}"是服務器路徑的寫法
form表單中的action路徑寫法是:th:action="@{'/test/selectEmp'}"
控制層代碼
@Controller @RequestMapping("/test") public class UploadAndDownloadController { @RequestMapping("/selectEmp") public String selectEmp(){ ... ... ... return ""; } }
中間層省略,和springMVC同樣調用service的接口方法便可,同理,service層和dao的接口,model層以及mapper配置文件省略,同springMVC;