Jdbc连接数据库
使用SpringBoot连接mySQL数据库有很多种方式,本文将使用JDBC去实现。
1.首先是属性配置文件
application.yml
spring:
datasource:
url: jdbc:mysql://localhost:3306/girl
username: root
password:
driver-class-name: com.mysql.jdbc.Driver
2.添加pom.xml的依赖
<?xml version="1.0" encoding="UTF-8"?>
<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.springboot</groupId>
<artifactId>study</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>SpringBoot-JDBC</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</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.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
3.代码实例
首先我们先完成Service层的代码,这一部分主要是使用JdbcTemplate来进行数据库操作,下面以查询为例:
package com.springboot.study.service;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Service;
import com.springboot.study.entity.Girl;
@Service
public class GirlService {
@Autowired
private JdbcTemplate jdbcTemplate;
public List<Girl> getGirlList(){
String sql="select *from girl";
return jdbcTemplate.query(sql, new RowMapper<Girl>(){
@Override
public Girl mapRow(ResultSet rs, int rowNum) throws SQLException {
Girl girl=new Girl();
girl.setId(rs.getInt("id"));
girl.setAge(rs.getInt("age"));
girl.setCup_size(rs.getString("cup_size"));
return girl;
}
});
}
}
然后是实体类:
Girl.java
package com.springboot.study.entity;
public class Girl {
private int id;
private int age;
private String cup_size;
public Girl(int id, int age, String cup_size) {
super();
this.id = id;
this.age = age;
this.cup_size = cup_size;
}
public Girl() {
super();
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getCup_size() {
return cup_size;
}
public void setCup_size(String cup_size) {
this.cup_size = cup_size;
}
@Override
public String toString() {
return "Girl [id=" + id + ", age=" + age + ", cup_size=" + cup_size + "]";
}
}
再然后就是Controller的编写
MyController.java
package com.springboot.study.controller;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.springboot.study.entity.Girl;
import com.springboot.study.service.GirlService;
@RestController
public class MyController {
@Autowired
private GirlService girlService;
@RequestMapping("/girls")
public List<Girl> getGirl(){
return girlService.getGirlList();
}
}
点击: http://localhost:8080/girls便可查询到数据
结果如下: