只读副本和Spring Data第2部分:配置基础项目

在上一篇文章中,我们使用相同的数据设置了多个PostgreSQL实例。
我们的下一步将是使用这两个服务器来配置我们的spring项目。

如前所述,由于我们使用完全相同的数据库,因此我们将使用Spring Boot JPA帖子中的一些代码。

这将是我们的gradle构建文件

 plugins { id 'org.springframework.boot' version '2.1.9.RELEASE' id 'io.spring.dependency-management' version '1.0.8.RELEASE' id 'java'  }  group = 'com.gkatzioura'  version = '0.0.1-SNAPSHOT'  sourceCompatibility = '1.8'  repositories { mavenCentral()  }  dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-web' implementation "org.postgresql:postgresql:42.2.8" testImplementation 'org.springframework.boot:spring-boot-starter-test'  } 

现在,让我们基于上一个博客上创建的表来创建模型。

 package com.gkatzioura.springdatareadreplica.entity;  import javax.persistence.Column;  import javax.persistence.Entity;  import javax.persistence.GeneratedValue;  import javax.persistence.GenerationType;  import javax.persistence.Id;  import javax.persistence.Table;  @Entity  @Table (name = "employee" , catalog= "spring_data_jpa_example" )  public class Employee { @Id @Column (name = "id" ) @GeneratedValue (strategy = GenerationType.IDENTITY) private Long id; @Column (name = "firstname" ) private String firstName; @Column (name = "lastname" ) private String lastname; @Column (name = "email" ) private String email; @Column (name = "age" ) private Integer age; @Column (name = "salary" ) private Integer salary; public Long getId() { return id; } public void setId(Long id) { this .id = id; } public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this .firstName = firstName; } public String getLastname() { return lastname; } public void setLastname(String lastname) { this .lastname = lastname; } public String getEmail() { return email; } public void setEmail(String email) { this .email = email; } public Integer getAge() { return age; } public void setAge(Integer age) { this .age = age; } public Integer getSalary() { return salary; } public void setSalary(Integer salary) { this .salary = salary; }  } 

下一步是创建spring数据存储库。

 package com.gkatzioura.springdatareadreplica.repository;  import org.springframework.data.jpa.repository.JpaRepository;  import com.gkatzioura.springdatareadreplica.entity.Employee;  public interface EmployeeRepository extends JpaRepository<Employee,Long> {  } 

另外,我们将添加一个控制器。

 package com.gkatzioura.springdatareadreplica.controller;  import java.util.List;  import org.springframework.web.bind.annotation.RequestMapping;  import org.springframework.web.bind.annotation.RestController;  import com.gkatzioura.springdatareadreplica.entity.Employee;  import com.gkatzioura.springdatareadreplica.repository.EmployeeRepository;  @RestController  public class EmployeeContoller { private final EmployeeRepository employeeRepository; public EmployeeContoller(EmployeeRepository employeeRepository) { this .employeeRepository = employeeRepository; } @RequestMapping ( "/employee" ) public List<Employee> getEmployees() { return employeeRepository.findAll(); }  } 

它所要做的只是在application.yaml中添加正确的属性。

 spring: datasource: platform: postgres driverClassName: org.postgresql.Driver username: db-user password: your-password url: jdbc:postgresql: //127.0.0.2:5432/postgres url: jdbc:postgresql: //127.0.0.2:5432/postgres url: jdbc:postgresql: 

如今,Spring Boot使得不必理会任何JPA配置。

这是运行该应用程序所需的全部。 一旦您的应用程序运行,只需尝试获取员工。

 curl http: //localhost :8080 /employee 

如您所见,我们没有进行任何JPA配置。 由于Spring Boot 2指定数据库url就足以启动自动配置并为您完成所有此配置。

但是,在我们的情况下,我们希望具有多个数据源和实体管理器配置。 在下一篇文章中,我们将为我们的应用程序配置实体管理器。

翻译自: https://www.javacodegeeks.com/2019/10/read-replicas-and-spring-data-configuring-the-base-project.html

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

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

相关文章

窄带传输与LoRa扩频传输技术应用方案对比

一、窄带传输与lora模块扩频传输技术对比 上图为成都亿佰特电子科技有限公司基于AX5043https://www.ebyte.com/product-class.aspx?cid1和SX1278https://www.ebyte.com/product-class.aspx?cid1&pid182两款芯片方案研发的极具有特色的E31系列窄带无线传输模块和E32扩频无…

[渝粤教育] 新乡医学院三全学院 人体解剖学 参考 资料

教育 -人体解剖学-章节资料考试资料-新乡医学院三全学院【】 绪论单元测试 1、【单选题】下述哪一项不符合解剖学姿势 A、身体直立 B、两眼向前平视 C、上肢垂于躯干两侧 D、手掌向内侧 E、两足并立、足尖向前 参考资料【 】 2、【单选题】关于方位术语的正确描述是 A、人体仰卧…

工业以太网交换机选机攻略

工业以太网交换机是专门为满足灵活多变的工业应用需求而设计&#xff0c;提供一种高性价比工业以太网通讯解决方案。那么我们在选购工业交换机的时候该注意哪些问题呢&#xff1f;工业以太网交换机有哪些选购标准呢&#xff1f;接下来就跟随飞畅科技的小编一起来详细了解下吧&a…

物联网助力智慧农业,农民也能成为科技工作者

北京时间8月24日&#xff0c;新电商拼多多发布了2021年第二季度财报。财报显示&#xff0c;截至2021年6月30日&#xff0c;拼多多年度活跃买家数达到8.499亿&#xff0c;作为国内最大的农产品上行平台之一&#xff0c;拼多多同时宣布将专门设立100亿元农业科技专项。 “百亿农…

您是否尝试过MicroProfile Starter?

https://start.spring.io的SPRING INITIALIZR已经存在了一段时间&#xff0c;并且是引导新的Spring Boot应用程序的最佳方法。 到目前为止&#xff0c;即使不同的供应商为其实施提供了启动器&#xff0c;也没有类似的方式来引导新的MicroProfile项目。 但是等待已经结束&#…

物联网智能垃圾管理技术中传感器与数传电台的作用

全球变暖导致气候变化&#xff0c;这促使各国政府根据联合国2030年可持续发展目标减少碳排放足迹。迫使市政当局转向智能垃圾管理技术&#xff0c;以改善垃圾回收和收集。 智能垃圾管理技术&#xff0c;这个词看起来怪怪的&#xff0c;垃圾管理如何配得上智能管理这么高大上的…

工业以太网与现场总线技术各自优缺点和应用

现如今&#xff0c;随着“工业4.0”战略的展开&#xff0c;计算机技术、通讯技术、IT技术的发展已经渗入到工控领域&#xff0c;其中最主要的表现就是工业现场总线技术和工业以太网技术。其中工业现场总线技术&#xff0c;特别是以太网技术的广泛使用&#xff0c;为自动化技术带…

[渝粤教育] 江西财经大学 大学体育与健康生活 参考 资料

教育 -大学体育与健康生活-章节资料考试资料-江西财经大学【】 第一章 健康理念伴一生 1、【单选题】健康乃事一种在身体上&#xff0c;心理上和社会上的&#xff08;&#xff09;&#xff0c;而不仅仅是没有疾病和虚弱的状态。 A、完满状态 B、兴奋状态 C、激动状态 D、积极状…

无线唤醒在灌溉系统上的应用

农业是一个国家的经济命脉&#xff0c;国家的发展离不开农业的发展。我国作为农业大国之一&#xff0c;随着农业的发展&#xff0c;农业用水占比也越来越高。并且我国目前农业上的灌溉主要还是以传统的人工灌溉为主。传统的人工灌溉主要有3大缺点&#xff1a; 灌溉人工成本高&a…

工业以太网在工业控制中的运用

在工业生产中&#xff0c;随着生产规模的扩大和复杂程度的提高&#xff0c;实际应用对控制系统的要求越来越高。那么&#xff0c;工业以太网交换机在工业控制中的应用有哪些&#xff1f;接下来我们就跟随飞畅科技的小编一起来了解下吧&#xff01; 在20世纪50&#xff5e;60年…

lucene索引_在崩溃或断电后测试Lucene的索引耐久性

lucene索引Lucene有用的事务功能之一是索引持久性 &#xff0c;它可以确保一旦成功调用IndexWriter.commit &#xff0c;即使操作系统或JVM崩溃或断电&#xff0c;或者您杀死-KILL JVM进程&#xff0c;重启后索引也将保持完整&#xff08;未损坏&#xff09;&#xff0c;并将反…

不缠电线不剥线皮接灯泡的方法

教你个好方法&#xff0c;不缠电线不剥线皮&#xff0c;带电接灯泡 需要准备快速接头&#xff0c;一边用来压接负载线&#xff0c;一边用来带电接火线或零线。 先一个接头卡住火线线压紧&#xff0c;同样的方法压接零线&#xff1b;另一边用另一种接头压紧电线&#xff0c;再…

工业以太网在工业领域的应用特点详解

工业以太网交换机专门为满足灵活多变的工业应用需求而设计&#xff0c;提供一种高性价比工业以太网通讯解决方案。那么&#xff0c;工业以太网在工业领域的应用特点有哪些呢&#xff1f;接下来我们就跟随飞畅科技的小编一起来详细了解下吧&#xff01; 一、工业以太网技术的概…

如何通过Java单次查找链表的中间元素

您如何一次找到LinkedList的中间元素&#xff0c;这是电话采访中经常问到的Java和非Java程序员的编程问题。 这个问题类似于检查回文或 计算阶乘 &#xff0c;有时Interviewer还会要求编写代码。 为了回答这个问题&#xff0c;候选人必须熟悉LinkedList的数据结构&#xff0c;…

工业POE交换机使用中的常见问题汇总

我们在使用工业POE交换机的过程中&#xff0c;不可避免的会遇到一些问题&#xff0c;我们只有对这些问题有了详细的了解认识之后&#xff0c;才能更好的使用操作工业交换机&#xff0c;在这里&#xff0c;杭州飞畅科技的小编为此专门为大家整理了在使用工业POE交换机过程中的一…

什么是管理型工业以太网交换机?

众所周知&#xff0c;以太网连接设备发展的下一代产品是管理型交换机&#xff0c;相对于集线器和非管理型交换机&#xff0c;管理型交换机拥有更多更复杂的功能&#xff0c;价格也高出许多&#xff0d;通常是一台非管理型交换机的3&#xff5e;4倍。管理型交换机提供了更多的功…

使用Hibernate和Spring构建Java Web应用程序

这篇文章将展示如何在Spring环境中使用带有Hibernate ORM的MYSQL DB创建学生注册应用程序。 这是一个简单的应用程序&#xff0c;旨在在注册过程中从用户收集输入详细信息&#xff0c;将这些详细信息保存在MYSQL DB中&#xff0c;并在登录期间对其进行身份验证。 1.使用Maven模…

光纤交换机常见硬件、软件故障问题介绍

现如今&#xff0c;交换机已经普及到了各办公场所&#xff0c;商场&#xff0c;学校&#xff0c;医院等等几乎所有的需求上网的地方&#xff0c;各大光纤交换机厂商也加大了研发速度&#xff0c;使得现今的设备在性能上更加优越&#xff0c;价格更加合理&#xff0c;也促使了交…

将Amazon Cognito与单页面应用程序(Vue.js)集成

在本文中&#xff0c;我们将研究使用OAuth协议通过Amazon Cognito对单页应用程序&#xff08;使用Vue.js构建&#xff09;进行身份验证。 在上一篇文章中&#xff0c;我们将服务器端应用程序与Amazon Cognito集成在一起。 搭建单页应用程序 我们将使用vue-cli创建一个空的Vuej…

光纤交换机使用方法及应用方案详解

光纤交换机是一种高速的网络传输中继设备&#xff0c;又叫做光纤通道交换机、SAN交换机&#xff0c;它较普通交换机而言&#xff0c;采用了光纤电缆作为传输介质&#xff0c;光纤传输的优点是速度快、抗干扰能力强。那么&#xff0c;光纤交换机该如何使用呢&#xff1f;接下来我…