首先是我的项目目录结构pom文件
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.0</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.38</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
然后是配置文件,此处使用的是application.yml
server:
port: 10000
spring:
thymeleaf:
prefix: classpath:/templates/
#检查模板位置是否存在
check-template-location: true
#给URL后面后缀
suffix: .html
servlet:
content-type: text/html
#模板模式
mode: HTML5
#开发时设为false 部署改为true
cache: false
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://101.132.242.30:3306/wechat_map?characterEncoding=utf-8
username: root
password: Ww1016400304.
type: com.alibaba.druid.pool.DruidDataSource
# 初始连接数
initialSize: 50
# 最大连接数
maxActive: 200
# 最长等待时间
maxWait: 60000
# 定义最小空闲
minIdle: 20
# 每隔60秒运行一次空闲连接回收器
timeBetweenEvictionRunsMillis: 60000
# 连接池中的空闲连接5分钟后被回收
minEvictableIdleTimeMillis: 300000
# 验证使用的sql语句
validationQuery: SELECT 1 FROM DUAL
# 如果连接被空闲连接回收器进行检验,如果检验失败,连接则被从池中去除
testWhileIdle: true
# 借出连接时不测试 true为测试(据百度说法影响性能)
testOnBorrow: false
# 猜测大概是是否返回测试结果或者重复测试等(为了性能不开启)
testOnReturn: false
# 缓存游标,优化查询效率
poolPreparedStatements: true
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
# 属性类型是字符串,通过别名的方式配置扩展插件,常用的插件有:
# 监控统计用的filter:stat日志用的filter:log4j防御sql注入的filter:wall
filters: stat,wall,log4j
# 当大于0时,poolPreparedStatements自动触发修改为true。
# 在Druid中,不会存在Oracle下PSCache占用内存过多的问题,可以把这个数值配置大一些,比如说100
maxPoolPreparedStatementPerConnectionSize: 20
# 合并多个DruidDataSource的监控数据
useGlobalDataSourceStat: true
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
# 根据与源表联接的结果,对目标表执行插入、更新或删除操作。例如,根据在另一个表中找到的差异在一个表中插入、更新或删除行,
# 可以对两个表进行同步。”,通过这个描述,我们可以看出Merge是关于对于两个表之间的数据进行操作的
# (我理解为主外键表之间的数据同步)
connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
mybatis:
mapper-locations: classpath:mapper/*.xml
# 自动开启驼峰转换
configuration:
map-underscore-to-camel-case: true
注意:主要是controller跳前端页面的基本写法,dao、services、bean的写法略过不写,如有需要者可自行翻看我的其他博客或其他博客
以下为controller层
package com.example.wechatservice.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @author wj
* @version 1.0
* @className testcontroller
* @description 测试前端界面
* @date 2019/8/19 8:51
*/
@Controller
public class testcontroller {
@RequestMapping("/")
public String gettest(){
return "test";
}
}
前端界面放在resources目录下的templates即可,
如需要更改可自行在配置文件的
spring:
thymeleaf:
prefix: classpath:/templates/ 此处改为你的路径即可