(一)通过Spring-Data-Jpa来配置数据源。
(1)加入maven依赖,加入spring-Data-Jpa依赖和mysql数据库依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
(2)在application.yml中配置mysql数据源和jpa,需要注意的是根节点是spring,切记不要
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/dbgirl?characterEncoding=utf-8
username: root
password: root
jpa:
hibernate:
ddl-auto: create
show-sql: true
在对jpa的配置中,ddl-auto属性表示系统启动时自动创建表结构,create每次都现将原表删除在新建表,update则是没有表时新建,有相应的表且表中有数据,则只会修改表的字段,不会删除表数据。
(二)通过sping-data-jpa来操作数据库
Dao层继承JpaRepository<T,ID>接口
package com.zky;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* Created by Administrator on 2018/6/30 0030.
*/
public interface GirlDao extends JpaRepository<Girl,Integer> {
/**
* 通过年龄查询女生(根据非主键字段查询,方法名必须按照findBy+字段名的格式,不然无法查询到想要到数据,需要自己写方法的实现)
* @param age
* @return
*/
List<Girl> findByAge(Integer age);
}
增删查改方法实现
package com.zky.controller;
import com.zky.Girl;
import com.zky.GirlDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Optional;
/**
* Created by Administrator on 2018/6/30 0030.
*/
@RestController
public class GirlController {
@Autowired
private GirlDao girlDao;
/**
* 查询所有女生
*/
@GetMapping("allGirl")
public List<Girl> findAllGirl(){
return girlDao.findAll();
}
/**
* 根据女生id查询
*/
@GetMapping("findGirl/{id}")
public Girl findGrilById(@PathVariable("id") Integer id){
Optional<Girl> girl = girlDao.findById(id);
return girl.get();
}
/**
* 添加女生
*/
@GetMapping("addGirl/{cupSize}/{age}")
public String addGirl(@PathVariable(value = "cupSize") String cupSize,@PathVariable(value = "age") Integer age){
Girl girl = new Girl();
girl.setCupSize(cupSize);
girl.setAge(age);
girlDao.save(girl);
return "add success";
}
/**
* 通过女生id进行删除操作
*/
@GetMapping("deleteGirl/{id}")
public String deleteGirl(@PathVariable(value = "id") Integer id){
girlDao.deleteById(id);
return "delete success";
}
/**
* 修改女生信息
*/
@GetMapping("updateGirl/{id}/{cupSize}/{age}")
public String updateGirl(@PathVariable(value = "id") Integer id,@PathVariable(value = "cupSize") String cupSize,@PathVariable(value = "age") Integer age){
Girl girl = new Girl();
girl.setId(id);
girl.setAge(age);
girl.setCupSize(cupSize);
girl = girlDao.save(girl);
return "update success";
}
/**
* 根据年龄查询女生
*/
@GetMapping("findGirlByAge/{age}")
public List<Girl> findGirlByAge(@PathVariable(value = "age") Integer age){
return girlDao.findByAge(age);
}
}
转载自原文链接, 如需删除请联系管理员。
原文链接:SpringBoot配置数据库以及CDSU操作,转载请注明来源!