一:整合JDBC
1.新建项目
- 配置数据库连接文件
spring:
datasource:
username: root
password: root
url:jdbc: mysql://localhost:3306/ssm?useSSl=true&userUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT
driver-class-name: com.mysql.jdbc.Driver
server:
port: 8044
3.建立对应的包结构
4.这里可以写一个Controller来测试我们的jdbc
@Controller
@RequestMapping("/user")
public class JdbcController {
@Autowired
JdbcTemplate jdbcTemplate;
//查询数据库信息
@RequestMapping("userList")
@ResponseBody
public List<Map<String,Object>> userList(){
String sql = "select * from ssm.user_table";
List<Map<String, Object>> maps = jdbcTemplate.queryForList(sql);
return maps;
}
}
访问:
二:整合Druid数据源
maven仓库druid:https://mvnrepository.com/artifact/com.alibaba/druid
<!-- https://mvnrepository.com/artifact/com.alibaba/druid -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.22</version>
</dependency>
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
确认已经导入:
修改yaml文件来指定数据源:
type: com.alibaba.druid.pool.DruidDataSource
以及导入druid的配置(参考博客):
initialSize: 5
minIdle: 5
maxActive: 20
maxWait: 60000
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 300000
validationQuery: SELECT1FROMDUAL
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
logSlowSql: true
#配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
filters: stat,wall,log4j
maxPoolPreparedStatementPerConnectionSize: 20
useGlobalDataSourceStat: true
connectionProperties: druid.stat.mergeSql=true;
druid.stat.slowSqlMillis=500
然后在项目路径下创建config文件夹,编写Druid配置文件:
@Configuration
public class DruidConfig {
@Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource dataSource(){
return new DruidDataSource();
}
//后台监控
@Bean
public ServletRegistrationBean statViewServlet(){
ServletRegistrationBean<StatViewServlet> bean = new ServletRegistrationBean<>(new StatViewServlet(), "/druid/*");
//后台需要账号密码
HashMap<String,String> initParameters = new HashMap<>();
initParameters.put("loginUsername","admin");//loginUsername固定
initParameters.put("loginPassword","admin");//loginPassword固定
//允许访问者
initParameters.put("allow","");
//禁止访问者 initParameters.put("jack","192.168.132.115");
bean.setInitParameters(initParameters);//初始化
return bean;
}
}
配置好后重启项目运行,访问本地端口的druid路径,我们配置的用户名和密码可以在这里使用登录。
三:整合MyBatis
整合包:https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter
<!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.2</version>
</dependency>
在reources文件夹下建立mybatis文件夹,在文件夹中建立对应的mapper.xml文件。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.springboot.myweb.Mapper.UserMapper">
<select id="getAllUsers" resultType="com.springboot.myweb.Pojo.Users">
select * from ssm.user_table
</select>
</mapper>
然后在yaml文件中配置mybatis:
#整合mybatis
mybatis:
type-aliases-package: com.spring.myweb.Pojo
mapper-locations: classpath:mybatis/mapper/*.xml
接下来的步骤跟ssm大致一样,只有一个不一样的地方,那就是需要在Mapper接口层上加一个注解@Mapper,当然如果不愿意挨个加注解,也可以在spring-boot的入口程序Application中加上@MapperScan扫描指定包下的所有mapper
方法一:
@Mapper
方法二:
@MapperScan("com.springboot.myweb.Mapper")
然后按照正常ssm的测试方式即可访问到数据
资料参考:
https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html
https://space.bilibili.com/95256449?from=search&seid=4324821317013857560
https://docs.spring.io/spring-boot/docs/2.1.13.RELEASE/reference/html/
http://x.xuebingsi.com/