## 需求
对本地mysql数据库进行访问:
方式1, 用JdbcTemplate相关配置;
方式2, 集成Mybatis相关配置
一, 用JdbcTemplate相关配置
1, pom.xml配置依赖
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.test</groupId>
<artifactId>a-sptingboot-test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.4.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 热部署 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<!-- 连接mysql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- 方法1, 用JdbcTemplate相关配置 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- 方法2, 集成Mybatis相关配置 -->
<!-- <dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.2.0</version>
</dependency> -->
</dependencies>
</project>
2, spring-mvc.xml配置
<!-- 1.配置组件扫描 -->
<context:component-scan
base-package="com.test.controller"/>
<!-- 2.启动mvc注解驱动 -->
<mvc:annotation-driven/>
3, 数据库连接参数配置(根据实际参数自定义)
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test
spring.datasource.username=root
spring.datasource.password=123456aa
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.max-idle=10
spring.datasource.max-wait=10000
spring.datasource.min-idle=5
spring.datasource.initial-size=5
#server.port=8011
server.session.timeout=10
server.tomcat.uri-encoding=UTF-8
# mybatis.config= classpath:mybatis-config.xml
# mybatis.mapperLocations=classpath:mappers/*.xml
4, 新建测试Controller
/**
* 用JdbcTemplate访问数据库
* @author admin
*/
@RestController
@RequestMapping("/mydb")
public class StudentController {
@Autowired
private JdbcTemplate jdbcTemplate;
@RequestMapping("/getStudent")
public List<Map<String, Object>> getStudent(){
String sql = "select * from student";
List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
return list;
}
}
## 其中的student表需要自己新增
(简易测试表student)
5, 启动Demo.java进行测试 (端口是自定义的)
Demo.java同上一篇:《springboot学习笔记 01》
http://localhost:8081/mydb/getStudent
访问测试, 成功打印出student数据即ok
二, 集成Mybatis相关配置
1, pom.xml配置依赖
同上, 打开方法2, 注释方法1
2, spring-mvc.xml配置
同上
3, 数据库连接参数配置(根据实际参数自定义)
同上, 打开mybatis.mapperLocations的注释
4, 新增studentMapper.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.test.dao.StudentDao" >
<resultMap id="BaseResultMap" type="com.test.entity.Student" >
<id column="id" property="id" jdbcType="VARCHAR" />
<result column="name" property="name" jdbcType="VARCHAR" />
</resultMap>
<select id="getStudent" resultMap="BaseResultMap">
select * from student
</select>
</mapper>
5, 新建测试Controller-Service-Dao
/**
* 集成Mybatis访问数据库
* @author admin
*
*/
@RestController
@RequestMapping("/mydb2")
public class StudentController2 {
@Autowired
private StudentService service;
@RequestMapping("/getStudent")
public List<Student> getThreeForMessage(){
List<Student> list = service.getStudent();
return list;
}
}
public interface StudentService {
List<Student> getStudent();
}
@Service
public class StudentServiceImpl implements StudentService {
@Autowired
private StudentDao studentDao;
@Override
public List<Student> getStudent() {
List<Student> list = new ArrayList<Student>();
return studentDao.getStudent();
}
}
//@Mapper
public interface StudentDao {
List<Student> getStudent();
}
6, 修改启动类Demo.java
@SpringBootApplication(scanBasePackages={"com.test.controller", "com.test.service", "com.test.dao"})
@MapperScan("com.test.dao")
public class Demo implements EmbeddedServletContainerCustomizer{
public static void main(String[] args) {
SpringApplication.run(Demo.class, args);
}
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
container.setPort(8081);
}
}
7, 测试访问
http://localhost:8081/mydb2/getStudent
访问测试, 成功打印出student数据即ok
至此, springboot访问数据测试算是走通了, 至于oracle数据库修改下配置参数就该就ok了