Spring boot操作mysql数据库
2017-09-10 21:06
519 查看
软硬件环境
macOS Sierrajava 1.8.0_65
maven 3.5.0
idea 2017.1.5
前言
前面一篇<>已经搭建好了spring boot的开发环境并且完成了第一个Hello world程序,本文紧接着上篇的内容,开始数据库相关的知识点。工程相关配置
pom.xml在dependencies标签下增加依赖,一个是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>
application.properties
在这个配置文件中需要写上mysql的驱动、服务器地址、端口、数据库名称、用户名、密码等信息。
spring.datasource.dbcp2.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://127.0.0.1:3306/dbvcms spring.datasource.username=root spring.datasource.password=djstava spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true
其中spring.jpa.hibernate.ddl-auto=update表示操作数据库时,所有的操作都是更新操作,这里还可以取值create、create-drop等值
spring data jpa
spring data jpa操作mysql数据库非常简单,简单到什么程度?根本不需要你创建任何表以及表的各个字段。这个有点像ORM(对象关系映射)。眼见为实,下面就看看具体实现步骤。创建实体类
这里的实体类是指欲操作对象,包含它的各种属性,对应到数据中的各个字段。
LiveChannel.java
package com.xugaoxiang; import org.springframework.beans.factory.annotation.Autowired; import javax.persistence.Entity; import javax.persistence.Id; /** * Created by djstava on 10/09/2017. */ @Entity public class LiveChannel { @Id @Autowired private Integer id; // 频道名称中文 private String name_chn; // 频道名称英文 private String name_eng; // 频道url private String url; // 频道是否需要播放广告 private Boolean hasAds; public String getName_chn() { return name_chn; } public void setName_chn(String name_chn) { this.name_chn = name_chn; } public String getName_eng() { return name_eng; } public void setName_eng(String name_eng) { this.name_eng = name_eng; } public String getUrl() { return url; } public void setUrl(String url) { this.url = url; } public Boolean getHasAds() { return hasAds; } public void setHasAds(Boolean hasAds) { this.hasAds = hasAds; } }
上面实体类包含直播频道的一些信息。
接口实现
创建LiveChannelRepository.java,继承自JpaRepository,其中的Interger表示的是id的数据类型
package com.xugaoxiang; import org.springframework.data.jpa.repository.JpaRepository; /** * Created by djstava on 10/09/2017. */ public interface LiveChannelRepository extends JpaRepository<LiveChannel,Integer> { }
操作数据库
创建LiveController,这里设计了一个RestfulAPI,/live,返回的是数据库中所以的直播列表。
package com.xugaoxiang; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; /** * Created by djstava on 10/09/2017. */ @RestController public class LiveController { public LiveController() { } @Autowired private LiveChannelRepository liveChannelRepository; @GetMapping(value = "/live") public List<LiveChannel> getLiveChannel() { return liveChannelRepository.findAll(); } }
创建数据库
如上配置信息所示,创建数据库dbvcms这里我们是没有去创建表结构的,启动工程的话,jpa会自动帮你把表创建好,各个字段的信息就来自于文件LiveChannel.java
为了方便查询,我们添加2条记录,如下所示
测试
一切准备就绪,启动项目,在浏览器中输入http://localhost:8080/live
相关文章推荐
- Spring Boot项目中使用jdbctemplate 操作MYSQL数据库
- Java框架spring Boot学习笔记(四):Spring Boot操作MySQL数据库
- SpringBoot中连接MYSQL数据库,并使用JPA进行数据库的相关操作
- SpringBoot操作MySQL数据库
- Java框架spring Boot学习笔记(五):Spring Boot操作MySQL数据库增、删、改、查
- SpringBoot中连接MYSQL数据库,并使用JPA进行数据库的相关操作
- springboot学习-springboot使用spring-data-jpa操作MySQL数据库
- Spring boot结合Spring-Data-JPA操作MySQL数据库
- Spring Boot中使用jdbctemplate 操作MYSQL数据库实例
- springboot使用spring-data-jpa操作MySQL数据库
- Spring Boot系列(六)Spring Boot 连接MySql数据库
- Spring Boot 与 Kotlin 使用JdbcTemplate连接MySQL数据库的方法
- 1 springboot操作redis list集合
- Spring BOOT 集成 RabbitMq 实战操作(一)
- spring配置mysql数据库及对数据库的操作
- 番外 02: Spring 之使用 JAVA 操作Mysql数据库(为何要用ORM)Spring整合 Mybatis前基础
- [置顶] 在Springboot上使用jedis来操作缓存redis --jedis的配置
- [置顶] spring boot项目实战-集合操作
- spring开发_JDBC操作MySQL数据库
- SpringBoot操作之Spring-Data-Jpa(一)