<dependencies> <!-- springmvc等web項目所需依賴 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- mybatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.4</version> </dependency> <!-- mysql驅動 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.48</version> </dependency> <!-- druid鏈接池 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.10</version> </dependency> <!-- thymeleaf --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <!-- 單元測試相關依賴 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies>
# 服務器配置 server: # 配置端口號,默認爲8080,可省略這條配置 port: 8080 # 配置thymeleaf spring: thymeleaf: # 模板文件的前綴,通常爲模板的存放位置,若是存放位置爲classpath:/templates/,則可省略這條配置 prefix: classpath:templates/ # 模板文件的後綴名,可不配置,默認爲.html suffix: .html # 是否啓用緩存,開發環境建議設置爲false,這樣修改前端頁面時不用重啓服務就能看到頁面的變化 cache: false # 配置數據源 datasource: # 數據庫驅動 driver-class-name: com.mysql.jdbc.Driver # 數據庫鏈接URL url: jdbc:mysql://localhost:3306/test?useSSL=false&useUnicode=true&characterEncoding=utf8&serverTimeZone=UTC # 數據庫用戶名 username: root # 數據庫密碼 password: root # 指定數據源類型,若是隻有一個數據源可省略配置,但通常建議配置 type: com.alibaba.druid.pool.DruidDataSource # 配置mybatis mybatis: # 實體類包路徑,若是Mapper.xml中不使用別名,若是使用相似於com.test.pojo.Emp這樣的類全路徑則不須要配置 type-aliases-package: com.demo.pojo # Mapper.xml的存放路徑,若是Mybatis使用純註解方式,則不須要配置 mapper-locations: classpath:/mapper/*Mapper.xml
mybatis: # 配置mybatis配置文件位置 config-location: classpath:/sqlMapConfig.xml
第一種方式,在啓動類上加一個@MapperScan註解掃描Mapper接口,如:@MapperScan(basePackages = "com.demo.mapper"),其中com.test.mapper爲Mapper接口的包路徑。css
@SpringBootApplication @MapperScan(basePackages = "com.demo.mapper") public class SpringBootDemoApplication { ... |
第二種方式,在Mapper接口上加上@Mapper註解(爲了不IDEA中使用@Autowired註解注入Mapper時報紅,能夠選擇在Mapper接口上額外加上@Repository註解)html
@Mapper @Repository public interface EmpMapper { /** * 查詢全部員工信息 */ @Select("select * from emp") List<Emp> empList(); }
mybatis: # 配置Mapper.xml文件存放位置 mapper-locations: classpath:/mapper/*Mapper.xml
SpringBoot項目中不須要額外進行Spring的配置,由於在啓動類上@SpringBootApplication註解包含了@ComponentScan註解,而且默認掃描SpringBoot啓動類當前包及全部子包中的類。前端
SpringBoot項目中若是要配置SpringMVC,可在application.yml中進行配置,若是沒有特殊需求,則通常使用默認的配置(也就是不作任何配置)java
如下配置可根據項目需求進行配置,不作任何配置也能使用:mysql
spring: # 鏈接池配置 druid: # 初始化大小,最小,最大 initial-size: 5 min-idle: 5 max-active: 20 # 配置獲取鏈接等待超時的時間 max-wait: 60000 # 配置間隔多久才進行一次檢測,檢測須要關閉的空閒鏈接,單位毫秒 time-between-eviction-runs-millis: 60000 # 配置一個鏈接在池中最小生存時間 min-evictable-idle-time-millis: 300000 validation-query: SELECT 1 FROM sys_user test-while-idle: true test-on-borrow: false test-on-return: false # 打開 PSCache,而且指定每一個鏈接上 PSCache 的大小 pool-prepared-statements: true max-pool-prepared-statement-per-connection-size: 20 # 配置監控統計攔截的 Filter,去掉後監控界面 SQL 沒法統計,wall 用於防火牆 filters: stat,wall,log4j # 經過 connection-properties 屬性打開 mergeSql 功能;慢 SQL 記錄 connection-properties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000 # 配置 DruidStatFilter web-stat-filter: enabled: true url-pattern: /* exclusions: .js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/* # 配置 DruidStatViewServlet stat-view-servlet: url-pattern: /druid/* # IP 白名單,沒有配置或者爲空,則容許全部訪問 allow: 127.0.0.1 # IP 黑名單,若白名單也存在,則優先使用 deny: 192.168.100.122 # 禁用 HTML 中 Reset All 按鈕 reset-enable: false # 登陸用戶名/密碼 login-username: root login-password: root
如下配置可省略,請根據項目實際狀況進行配置:web
# 配置thymeleaf spring: thymeleaf: # 模板文件的前綴,通常爲模板的存放位置,若是存放位置爲classpath:/templates/,則可省略這條配置 prefix: classpath:templates/ # 模板文件的後綴名,可不配置,默認爲.html suffix: .html # 是否啓用緩存,開發環境建議設置爲false,這樣修改前端頁面時不用重啓服務就能看到頁面的變化 cache: false