Spring_boot搭配Spring Data JPA簡單操做數據庫java
spring boot 配置文件能夠使用yml文件,默認spring boot 會加載resources目錄的下的application.yml文件,yml文件嚴格使用tab縮進。mysql
pom.xmlweb
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>1.5.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> <version>1.5.7.RELEASE</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.6</version> </dependency> <dependency> <groupId>javax.persistence</groupId> <artifactId>persistence-api</artifactId> <version>1.0</version> </dependency> <dependency> <artifactId>slf4j-api</artifactId> <groupId>org.slf4j</groupId> <version>1.7.10</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> <exclusions> <exclusion> <artifactId>slf4j-api</artifactId> <groupId>org.slf4j</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> <version>1.2.3</version> </dependency> </dependencies>
application.yml 配置文件 連接數據庫spring
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/njy
username: root
password: root
jpa:
hibernate:
ddl-auto: update #create刪除表再建立 update 保存原來數據
show-sql: true
對於數據庫的操做有點相似mabatis的mapper接口代理,須要自定義一個接口繼承JpaRepositorysql
package ni.jun.yang; import ni.jun.yang.bean.Girl; import org.springframework.data.jpa.repository.JpaRepository; public interface GirlRepository extends JpaRepository<Girl, Integer>{ }
Contrller中實現邏輯數據庫
package ni.jun.yang; import ni.jun.yang.bean.Girl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.List; @RestController public class GirlController { @Autowired private GirlRepository girlRepository; @GetMapping(value = "/girls") public List<Girl> selectAll(){ return girlRepository.findAll(); } @GetMapping(value = "/addGirls") public Girl selectAll(@RequestParam String name, @RequestParam Integer age){ Girl girl = new Girl(); girl.setAge(age); girl.setName(name); return girlRepository.save(girl); } }
啓動服務以後發送http://localhost:8080/addGirls?name=aaa&age=18請求會發現數據插入一條數據,http://localhost:8080/girls會將數據庫中數據查詢出來,修改也是調用save方法,刪除delete方法,查詢一個findOne。經過其餘字段查詢須要去自定義接口添加抽象方法findByxxx,xxx爲字段名字。複雜查詢百度api
查找maven依賴:http://mvnrepository.com/ 儘可能使用發佈時間相近的包,避免不兼容問題app