首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏graphql

    GraphQL实践3——Spring-Graphql集成Mybatis Plus

    介绍考虑到国内大部分场景对接的是Mybatis或者Mybatis Plus生态,而不是JPA,同时Graphql版本也进一步迭代,故计划使用Mybatis Plus对接Graphql集成过程引入依赖由于 目前最新的LTS为17,我所在的公司也将生产升级到了JDK 17,未来更多新应用会直接基于17构建,故此处直接基于JDK17对接SpringBoot版本为2.7.1,目前已知3.0.0 RC1还不兼容第三方graphql 此处不使用spring官方的starter,改为使用graphql-java-kickstart的starter,编写更加简单 <dependencies> <dependency> -- graphql-spring-boot-starter --> <dependency> <groupId>com.graphql-java-kickstart </groupId> <artifactId>graphql-spring-boot-starter</artifactId> <version>12.0.0

    1.2K30编辑于 2022-10-28
  • 来自专栏饭勺oO的技术博客

    造轮子之集成GraphQL

    GraphQL:客户端可以使用GraphQL查询语言来精确指定需要的数据。客户端发送一个GraphQL查询请求,服务器根据查询的结构和字段来返回相应的数据。 在这种情况下,使用GraphQL就可以有较好的体验。 那么,在我们现有写好的Service中,如何快速集成GraphQL又无需复杂编码工作呢。这就是我们接下来要实现的了。 nuget,在Program中添加代码 builder.Services.AddGraphQLServer() app.MapGraphQL(); 这样就完成一个GraphQLServer的集成 启动程序,访问https://localhost:7080/graphql/ 可以看到集成的界面。可以使用这个界面操作测试我们的graphql查询。 集成现有Service 改造一下SampleQuery [ExtendObjectType(typeof(IQuery))] public class SampleQuery : IQueryExtendObjectType

    60910编辑于 2023-10-18
  • 来自专栏graphql

    GraphQL实践4——Netflix Dgs Graphql集成Mybatis Plus

    介绍通过JPA或者Mybatis Plus集成Graphql框架已经很简便,但其实使用graphql-java集成过于底层,很多扩展内容实现并不方便,例如:分页查询资源懒加载N+1问题Netflix 基于长期的 Graphql实践,2020年开源了DGS Framework,让解决上述问题更加简单,大量开源系统集成Graphql也是通过集成DGS组件The DGS framework project started :   schema-locations:     - classpath*:graphql/*.graphqls由于DGS默认扫描路径为classpath*:schema/**/*.graphql lastUpdate: String}此处集成graphql-java-kickstart类似,也是十分简便,不指定别名默认将方法名映射到文件方法名测试访问http://localhost:8080/ graphiql即可看到在线查询页面图片总结此处还看不出DGS与其他graphql-java组件的区别,都是集成简便,可以和任何数据源、ORM框架集成,后续将会逐步实践DGS特性,包括懒加载、N+1问题

    1.4K31编辑于 2022-10-28
  • 来自专栏graphql

    GraphQL实践2——Spring-GraphQL集成JPA与MySQL

    介绍上一篇介绍到用第三方库集成GraphQL,目前spring-graphql项目已经出到1.0.0-M3版本,属于内部预览版,此处尝鲜验证GraphQL实践1——集成JPA与MySQL - F嘉阳 博客 (fjy8018.top)集成过程引入依赖由于SpringBoot 2.6.0还未发布,因此需要引入较多依赖<dependencies> <dependency> <groupId : path: /graphql schema: locations: classpath:graphql/ fileExtensions: .graphqls, .gqls 默认不包含可视化界面,此处使用postman进行测试唯一查询图片列表查询图片总结使用Spring官方组件好处在于和Spring生态集成度很高,如果本身就采用Jpa方式进行业务开发,迁移更加方便,需要开发的代码也很少 样例源码地址FJiayang/graphql-demo at spring-graphql (github.com)

    1.7K20编辑于 2022-10-28
  • 来自专栏JAVA杂谈

    SpringBoot开发秘籍 - 集成Graphql Query

    --graphql start--> <dependency> <groupId>com.graphql-java</groupId> <artifactId>graphql-spring-boot-starter ","Graphql初体验1","日记"); Post post2 = new Post(2,"Hello,Graphql2","Graphql初体验2","日记"); 配置Graphql 端点 server.port = 8080 graphql.servlet.corsEnabled=true # 配置端点 graphql.servlet.mapping=/graphql graphql.servlet.enabled=true 配置完端口和端点后我们就可以对我们编写的Graphql接口进行测试了。 希望此文能让大家对Graphql有一个整体的了解,如果大家对Graphql感兴趣后面还会更新此系列文章,完成对其他数据操作的整合。 以上,希望对你有所帮助! End

    1.7K40发布于 2021-04-23
  • 来自专栏graphql

    GraphQL实践1——集成JPA与MySQL

    主页地址介绍官方定义:GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时。 中文官网:https://graphql.cn/集成方案选择GraphQL经过近几年的发展,SpringBoot官方、第三方都提供了starterSpringBoot官方提供的starter:https ://spring.io/projects/spring-graphql/第三方提供的starter:https://github.com/graphql-java-kickstart/graphql-spring-boot 两者活跃度都还不错,但考虑到SpringBoot官方的依赖库还未GA,而且使用起来与Spring家族耦合过大,最终决定采用第三方的starter集成过程数据库配置此处采用MySQL数据库,数据内容采用MySQL -- https://mvnrepository.com/artifact/com.graphql-java-kickstart/graphql-spring-boot-starter --> <

    1.7K50编辑于 2022-10-28
  • 来自专栏开发运维工程师

    开发实践|SpringBoot集成API新宠GraphQL实践

    引言 上一篇熟悉了API架构风格GraphQL API和RESTful API,这一篇结合Spring集成GraphQL来实践下,深度剖析下。 创建GraphQL集成环境 而我本人更建议学习GraphQL的可以从 Spring Initializr 方式自己创建并下载源代码,下面从 9个步骤 来创建一个GraphQL集成程序。 3 Spring 支持的GraphQL插件 GraphQL代码示例 1 拷贝官网提供的代码 当前为了方便演示,直接从官网下载代码。 下面再展示几个: 2 Postman请求信息 由于GraphQL都是使用HTTP的Post方式请求的,所以在Postman中输入地址,然后选择GraphQL方式,按照GraphQL参数方式输入,然后点击 总结 本文主要是从官方案例中使用Spring集成GraphQL,从代码上、代码编写上、启动、测试等,浅谈下GraphQL的运用,不过个人感觉有点一反常态,写习惯了RESTful之后,再来学习GraphQL

    1.3K20编辑于 2024-11-18
  • 来自专栏后端

    GraphQL 与 ASP.NET Core 集成:从入门到精通

    本文将详细介绍如何在ASP.NET Core中集成GraphQL,包括常见问题、易错点以及如何避免这些问题。什么是GraphQL? 在ASP.NET Core中集成GraphQL安装必要的NuGet包首先,我们需要安装一些必要的NuGet包来支持GraphQL。 的集成过程。 总结通过本文,我们了解了如何在ASP.NET Core中集成GraphQL,并探讨了一些常见的问题和解决方法。 集成的详细介绍。

    50110编辑于 2024-12-04
  • 来自专栏大数据

    GraphQL 与 ASP.NET Core 集成:从入门到精通

    本文将详细介绍如何在ASP.NET Core中集成GraphQL,包括常见问题、易错点以及如何避免这些问题。 什么是GraphQL? 在ASP.NET Core中集成GraphQL 安装必要的NuGet包 首先,我们需要安装一些必要的NuGet包来支持GraphQLGraphQL集成过程。 总结 通过本文,我们了解了如何在ASP.NET Core中集成GraphQL,并探讨了一些常见的问题和解决方法。 GraphQL提供了一种强大的方式来构建灵活且高效的API,但是也需要开发者注意一些潜在的问题。希望本文能够帮助你在ASP.NET Core项目中成功集成GraphQL

    54110编辑于 2024-12-05
  • 来自专栏区块链入门

    GraphQL(一):GraphQL介绍

    GraphQL是什么 GraphQL是facebook开源的一套数据交互方案,它并非某种具体的语言或者框架,它只是提供了一套解决方案,这套解决方案通过GraphQL规范进行定义,不同语言可以有自己的GraphQL 实现,目前已经有很多语言完成了GraphQL的实现,可以在这里查看。 怎么使用GraphQL GraphQL致力于提供一种直观的弹性语法系统,用以描述客户端程序设计时的数据需求以及数据交互行为。 要使得客户端可以使用GraphQL的方式请求数据,首先需要在服务端提供GraphQL服务,这里可以查看现有的实现了GraphQL的平台,关于如何搭建GraphQL的服务,请查看GraphQL(二):GraphQL GraphQL中采用的方式截然不同,GraphQL的API通常只暴露一个接口,而不是返回固定数据结构的多个接口。

    1.7K20发布于 2021-11-24
  • 来自专栏江涛的博客

    GraphQL -- GraphQL基础实践

    基础篇 理论知识 graphQL介绍 GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时。它由Facebook开发和开源,强烈地表达了代码即文档的期望。 graphQL的优点 可定制程度化高 所见即所得,各种不同的前端框架平台可以指定自己需要的字段。 代码即文档 GraphQL 会把schema 定义和相关的注释生成可视化的文档。 参数类型强校验 GraphQL 提供了强类型的schema 机制,从而天然确保了参数类型的合法性。 好的,至此我们已完成一个简单的基于graphQL的例子,然后运行node app.js ,我们打开浏览器访问:http://localhost:3000/graphql来看一下吧。 :https://graphql.cn

    1.3K30发布于 2020-06-19
  • 来自专栏前端Q

    GraphQL -- GraphQL基础实践

    基础篇 理论知识 graphQL介绍 GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时。它由Facebook开发和开源,强烈地表达了代码即文档的期望。 graphQL的优点 可定制程度化高 所见即所得,各种不同的前端框架平台可以指定自己需要的字段。 代码即文档 GraphQL 会把schema 定义和相关的注释生成可视化的文档。 参数类型强校验 GraphQL 提供了强类型的schema 机制,从而天然确保了参数类型的合法性。 好的,至此我们已完成一个简单的基于graphQL的例子,然后运行node app.js ,我们打开浏览器访问:http://localhost:3000/graphql来看一下吧。 ? :https://graphql.cn

    1.1K10发布于 2020-03-02
  • 来自专栏区块链入门

    GraphQL(二):GraphQL服务搭建

    GraphQL(一):GraphQL介绍中讲到目前已经有很多平台完成了GraphQL实现,这里以Java平台为例,介绍GraphQL服务的搭建。 graphql-java + graphql-java-spring graphql-java是GraphQL的Java实现,它实现了GraphQL的执行,但是没有任何关于HTTP或者JSON的处理,因此在接入 + graphql-java-tools 搭建GraphQL的方案。 graphql-spring-boot-starter + graphql-java-tools graphql-java-tools graphql-java-tools 能够从GraphQL的模式定义 graphql-spring-boot-starter graphql-spring-boot-starter是辅助SpringBoot接入GraphQL的库,它本身依赖graphql-java和graphql-java-servlet

    1.6K30发布于 2021-11-24
  • 来自专栏若尘的技术专栏

    GraphQL

    GraphQL 思考模式 使用GraphQL接口设计获取数据需要三步: GraphQL获取数据三步骤 首先要设计数据模型,用来描述数据对象,它的作用可以看做是VO,用于告知GraphQL如何来描述定义的数据 了解清楚后我全面拥抱GraphQL GraphQL执行逻辑 有人会问: 使用了GraphQL就要完全抛弃REST了吗? GraphQL需要直接对接数据库吗? GraphQL应用的基本架构 下图是一个 GraphQL 应用的基本架构,其中客户端只和 GraphQL 层进行 API 交互,而 GraphQL 层再往后接入各种数据源。 直连数据库的接入 集成现有服务的GraphQL层:这种配置适合于旧服务的改造,尤其是在涉及第三方服务时、依然可以通过原有接口进行交互。 集成现有服务的GraphQL层 直连数据库和集成服务的混合模式:前两种方式的混合。 混合接入方式 可以说是非常灵活了!你都不用担心会给你带来任何的麻烦。

    3.2K65发布于 2021-11-25
  • 来自专栏大前端(横向跨端 & 纵向全栈)

    GraphQL学习第六篇 -Vue中集成Vue-apollo

    为了获取服务端GraphQl接口的数据,客户端需要使用apollo这个插件,三大前端框架均可以将apollo集成,下面以vue为例来说明在客户端如何集成vue-apollo这个插件。 1. apollo-boost --save 或者 yarn add vue-apollo graphql apollo-boost 3. import ApolloClient from 'apollo-boost' const apolloClient = new ApolloClient({ // 服务器的地址,注意后台添加graphql 这个路由 uri: 'http://118.123.14.36:3002/graphql' }) 4. $mount('#app') 以上是vue中集成vue-apollo的基本步骤,下面是代码实例。 import Vue from 'vue' import App from '.

    83510发布于 2020-11-26
  • 来自专栏快乐阿超

    GraphQL

    可怕的不是外貌的丑陋,而是无法与人亲近的内心空虚——科恩 官网:https://graphql.org/ graphql是一个API的查询语言,可以理解为一个规范 正如它官方文档宣传的那样: 定义你的数据规范 String tagline: String contributors: [User] } 描述你想干什么(查询) Ask for what you want { project(name: "GraphQL predictable results { "project": { "tagline": "A query language for APIs" } } 它有多种语言的库: https://graphql.org

    61820编辑于 2022-09-29
  • 来自专栏黯羽轻扬

    GraphQL

    写在前面 本文第一部分翻译自REST 2.0 Is Here and Its Name Is GraphQL,标题很有视觉冲击力,不小心上钩了 剩余部分是对GraphQL的思考。 虽然与REST有本质区别,但GraphQL可以作为REST的备选项,它提供了高性能、良好的开发体验和一些强大的工具 通过本文,我们来看看怎样用REST和GraphQL来处理一些常见场景。 GraphQL:API的演进 GraphQL是一种API查询语言,由Facebook设计并开源。 手动试试,打开http://localhost:5000的GraphiQL(一个很棒的浏览器GraphQL IDE),执行上面的查询 现在,我们稍微深入一点 想想GraphQL GraphQL采用了一种与 GraphQL也支持用废弃字段和废弃原因信息修饰一个schema的原语(primitives) GraphQL中的版本控制: (这里有一张gif图,实在粘不上去,算了不要了) GraphQL vs REST

    1.8K40发布于 2019-06-12
  • 来自专栏技术博客文章

    GraphQL详解

    GraphQL 思考模式 使用GraphQL接口设计获取数据需要三步: GraphQL获取数据三步骤 首先要设计数据模型,用来描述数据对象,它的作用可以看做是VO,用于告知GraphQL如何来描述定义的数据 了解清楚后我全面拥抱GraphQL GraphQL执行逻辑 有人会问: 使用了GraphQL就要完全抛弃REST了吗? GraphQL需要直接对接数据库吗? GraphQL应用的基本架构 下图是一个 GraphQL 应用的基本架构,其中客户端只和 GraphQL 层进行 API 交互,而 GraphQL 层再往后接入各种数据源。 直连数据库的接入 集成现有服务的GraphQL层:这种配置适合于旧服务的改造,尤其是在涉及第三方服务时、依然可以通过原有接口进行交互。 集成现有服务的GraphQL层 直连数据库和集成服务的混合模式:前两种方式的混合。 混合接入方式 可以说是非常灵活了!你都不用担心会给你带来任何的麻烦。

    3.2K00编辑于 2021-12-17
  • 来自专栏前端导学

    GraphQL入门

    mkdir graphqljs cd graphqljs npm init npm install --save graphql touch hello.js 编辑hello.js var { graphql , buildSchema } = require('graphql'); var schema = buildSchema(` type Query{ hello:String }`); var }; graphql(schema, '{hello}', root).then((response) => { console.log(response); }) 运行代码 node hello

    67020编辑于 2022-03-24
  • 来自专栏graphql

    GraphQL实践5——Netflix Dgs Graphql懒加载

    问题背景在graphql中,需要查询的字段由调用方传递,如果此时存在关联表才能获取的字段,但前端不需要该字段的时候,默认查询所有字段会带来较大开销例如type Actor { actorId: Int filmActors.stream().map(FilmActor::getActorId).toList(); return actorRepository.listByIds(actorIds); }}Graphql

    1.2K40编辑于 2022-10-28
领券