第九篇:Spring Boot整合Spring Data JPA_入门试炼01

Spring Data JPA:介绍:
Spring Data就是spring提供操作数据库的框架,而Spring Data JPA只是Spring Data框架下的一个基于JPA标准操作数据库的模块。
Spring Data JPA:基于JPA的标准对数据进行操作。简化持久层的代码,只需要写接口。
SpringBoot整合Spring Data JPA
1、添加依赖:

 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.0.9</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency>

2、添加application.yml配置信息:

#mysql数据库驱动 url username  password
#数据库连接池
#正向工程
#控制台输出sql
spring:datasource:driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=trueusername: rootpassword: roottype: com.alibaba.druid.pool.DruidDataSourcejpa:hibernate:ddl-auto: updateshow-sql: true

新建数据库
在这里插入图片描述
3、添加实体类

@Entity
@Table(name = "t_users")
@Data
public class Users {/*** @Id:表明id是主键* @GeneratedValue:生成策略*/@Id@GeneratedValue(strategy = GenerationType.IDENTITY)@Column(name = "id")private Integer id;@Column(name = "name")private String name;@Column(name = "age")private Integer age;@Column(name = "address")private String address;
}

4、添加持久层接口

/*** 参数1:当前将要映射的实体类* 参数2:当前将要映射的实体类中id主键类型*/
public interface UsersRepository  extends JpaRepository<Users,Integer> {
}

5、在pom文件中添加测试启动类的坐标

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope>
</dependency>

6、新建启动类

@SpringBootApplication
public class SpringBootDataJpaApplication {public static void main(String[] args) {SpringApplication.run(SpringBootDataJpaApplication.class, args);}
}

编写测试代码
我们要在test包下,新建com.gblfy.repository包(与上面的java包结构保持一致):
新建测试类UsersRepositoryTest继承Springboot生成的test类,这样做的好处就是:不用每个测试类都在类上添加测试注解,只需要继承共有的测试类即可(和接口实现类原理一样)

@RunWith(SpringRunner.class)
@SpringBootTest
public class UsersRepositoryTest {@Autowiredprivate UsersRepository usersRepository;@Testpublic void saveUser(){Users u = new Users();u.setName("zhangdan");u.setAge(25);u.setAddress("beijing");usersRepository.save(u);}
}

10、运行效果图:
在这里插入图片描述

查看数据库:
1、是否生成t_users表
2、是否将数据成功插入数据库
在这里插入图片描述

本文源码下载:

github地址:
https://github.com/gb-heima/Spring-Boot-Actual-Combat/tree/master/parent/spring-boot-chapter-9

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/524214.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为智能计算发布FusionServer Pro智能服务器

【中国&#xff0c;北京&#xff0c;2019年4月3日】华为智能计算业务部在北京召开了主题为“智能&#xff0c;计算进化”的发布会&#xff0c;正式发布FusionServer Pro智能服务器。将从“智能加速、智能管理、智能数据中心”三个层次助力数据中心智能化升级。 世界正从数字化…

qt场景中视图QGraphicsView的缩放

继承QGraphicsView自定义视图,重写wheelevent&#xff08;)事件&#xff0c;在滚轮事件中实现视图的放大和缩小。 放大缩小的主要代码&#xff1a; void GraphicsView::wheelEvent(QWheelEvent *e) {if(!m_isScroll){return ;}if (e->modifiers() & Qt::ControlModifie…

第九篇:Spring Boot整合Spring Data JPA_入门试炼02

Spring Data JPA 提供的核心接口 1、Repository接口 2、CrudRepository接口 3、PagingAndSortingRepository接口 4、JpaRepository接口 5、JpaSpecificationExecutor接口 Repository接口使用 1、提供了方法名称命名方式 持久层接口编写&#xff1a; /*** Repository接口的方法…

分布式精华问答:分布式环境下如何保持数据一致性的?| 技术头条

分布式开发的时代实际上早已悄悄地成为了时代的主流&#xff0c;今天&#xff0c;我们就来看看关于分布式的精华问答吧&#xff01;1Q&#xff1a;分布式系统中主要是用到了服务化&#xff0c;消息中间件&#xff0c;数据库拆分&#xff0c;便于横向扩展和维护&#xff0c;但分…

Qt中视图的缩放对应缩略图中矩形框的缩放

本文实现的目的是&#xff1a;视图缩放时&#xff0c;缩略图中的矩形框也进行缩放&#xff0c;而缩略图中的矩形区域为视图中的可见区。 获取视图中滚动条的值&#xff0c;将其值与缩略图所在的小窗口对比&#xff0c;可通过绘图求其比例&#xff0c;再按比例缩小。 首先提供主…

OpenGL ES EGL eglChooseConfig

目录 一. EGL 前言二. EGL 绘制流程简介三.eglGetConfigs 函数简介 四.eglGetConfigs 函数使用五.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 特效 零基…

第九篇:Spring Boot整合Spring Data JPA_入门试炼03

CrudRepository接口的使用 CrudRepository接口&#xff0c;主要完成一些增删改查的操作。 注意&#xff1a;CrudRepository接口继承Repository接口 1、持久层接口&#xff1a; package com.gblfy.repository;import com.gblfy.pojo.Users; import org.springframework.data.r…

第九篇:Spring Boot整合Spring Data JPA_入门试炼04

六、PagingAndSortingRepository接口 前言&#xff1a;该接口提供了分页与排序的操作&#xff0c;该接口继承了CrudRepository 1、持久层接口&#xff1a; public interface UserRepositoryPagingAndSorting extends PagingAndSortingRepository<Users,Integer> { }测试…

qt创建图形项,添加自定义窗口

创建场景&#xff0c;视图和图形项之后&#xff0c;在图形项中添加自定义窗口。主要代码如下&#xff1a; scene new QGraphicsScene(0,0,1855,578,ui->insideWidget);//在开发中QGraphicsScene::sceneRect最好小于等于QGraphicsView::sceneRect大小&#xff0c;以保证在缩…

成立一周?谷歌人工智能道德委员会解散了?近日,金山云和小米刚签订了不超过9000万的硬件产品供应协议,闹哪样? | 极客头条...

关注并标星星CSDN云计算极客头条&#xff1a;速递、最新、绝对有料。这里有企业新动、这里有业界要闻&#xff0c;打起十二分精神&#xff0c;紧跟fashion你可以的&#xff01;每周三次&#xff0c;打卡即read更快、更全了解泛云圈精彩newsgo go go 亚马逊推Alexa无线耳机&…

java.sql.SQLException: validateConnection false

解决方案&#xff1a; 将mysql-connector-java版本修改为下面版本&#xff1a; <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.0.2</version> </dependency>

第九篇:Spring Boot整合Spring Data JPA_入门试炼05

JpaRepository接口 前言&#xff1a;该接口继承了PagingAndSortingRepository接口。对继承的父接口中方法的返回值进行适配。 例如&#xff1a;父接口中的方法的返回值是是迭代器&#xff0c;而在子类(JpaRepository)返回值是Lis集合。 1、持久层接口&#xff1a; public inte…

2019年技术盘点微服务篇(二):青云直上云霄 | 程序员硬核评测

戳蓝字“CSDN云计算”关注我们哦&#xff01;程序员硬核评测&#xff1a;客观、高效、不说软话。无论是技术质量、性能水平&#xff0c;还是工具筛选&#xff0c;一测便知&#xff01;作者&#xff1a;孙浩峰过去几年来&#xff0c;“微服务架构”方兴未艾&#xff0c;尽管这种…

第九篇:Spring Boot整合Spring Data JPA_入门试炼06

八、JpaSpecificationExecutor接口 前言&#xff1a;该接口主要提供了多条件查询的支持&#xff0c;并且可以在查询中添加分页和排序。 注意&#xff1a;JpaSpecificationExecutor接口是独立存在的。完全独立。 1、持久层接口&#xff1a; public interface UsersRepositoryS…

Qt场景中图形项的删除

场景中图形项删除的时候调用系统函数removeItem()删除该图形项&#xff0c;但还需将图形项delete掉&#xff0c;并置为空&#xff0c;主要代码如下&#xff1a; void chunzhongForm::deleteItem(QGraphicsItem *item) {scene->removeItem(item);if(item ! NULL){delete ite…

第十篇:Spring Boot整合mybatis+逆向工程(Mysql+Oracle) 入门试炼01

1、添加pom依赖 <dependencies><!--springboot web 启动器--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--thymeleaf 启动器--><d…

Qt中QMap删除元素的简单使用

QMap基本上qt中的使用和C中QMap的使用一样&#xff0c;下面先附上一段代码&#xff1a; void chunzhongForm::deleteScrGroupItem(int screenGroup) {QMap<findInfo,QGraphicsRectItem*>::iterator it;for(it itemMap.begin();it!itemMap.end();){if(it.key().sid scr…

Docker简介与简单使用 | 技术头条

戳蓝字“CSDN云计算”关注我们哦&#xff01;技术头条&#xff1a;干货、简洁、多维全面。更多云计算精华知识尽在眼前&#xff0c;get要点、solve难题&#xff0c;统统不在话下&#xff01;作者&#xff1a;常仕禄转自&#xff1a;Docker前一段花了一段时间研究Log4j2的源码&a…

OpenGL ES EGL eglSwapBuffer

目录 一. EGL 前言二. EGL 绘制流程简介三.eglSwapBuffer 函数简介 四.关于多个 EGLContext五.共享 EGLContext六.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> Open…

第十篇:Spring Boot整合mybatis+Mysql 入门试炼02

前言&#xff1a; 1、(SprigBoot整合SpringMVCMybatis) 2、以thymeleaf作为视图层技术整合 3、springboot版本2.0.5.RELEASE 创建项目 1、添加依赖及启动器 <dependencies><!--springboot web 启动器--><dependency><groupId>org.springframework.boo…