当前位置: 首页 > news >正文

图片网站收录网站原型设计流程

图片网站收录,网站原型设计流程,云服务器网站搭建教程,app外包开发公司排行Spring Cloud MyBatis Plus GraphQL 完整示例 1、创建Spring Boot子项目1.1 配置POM#xff0c;添加必要的依赖1.2 配置MyBatis-Plus 2、集成GraphQL2.1 定义schema.graphqls2.2 添加GraphQL解析器2.3 配置schame文件配置 3、访问测试3.1 查询测试#xff08;演示#xff… Spring Cloud MyBatis Plus GraphQL 完整示例 1、创建Spring Boot子项目1.1 配置POM添加必要的依赖1.2 配置MyBatis-Plus 2、集成GraphQL2.1 定义schema.graphqls2.2 添加GraphQL解析器2.3 配置schame文件配置 3、访问测试3.1 查询测试演示3.2 添加测试演示3.3 修改测试演示3.4 删除测试演示 为了创建一个完整的Spring Cloud应用结合MyBatis-Plus和GraphQL构建一个简单的微服务项目。这个示例将包括以下几个部分- 创建Spring Boot子项目。 - 配置MyBatis-Plus以进行数据库操作。 - 集成GraphQL以提供查询接口。 - 我们将假设有一个简单的实体类Person并为其创建CRUD操作和GraphQL查询。1、创建Spring Boot子项目 1.1 配置POM添加必要的依赖 首先我们需要创建一个新的Spring Boot项目并添加必要的依赖项。以下是Maven pom.xml配置文件的内容 !--graphql--dependencygroupIdcom.graphql-java-kickstart/groupIdartifactIdgraphql-spring-boot-starter/artifactIdversion11.0.0/version/dependencydependencygroupIdcom.graphql-java-kickstart/groupIdartifactIdgraphiql-spring-boot-starter/artifactIdversion11.0.0/version/dependency!--mybatisPlusmysql--dependencygroupIdcom.mysql/groupIdartifactIdmysql-connector-j/artifactIdversion8.2.0/version/dependencydependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-boot-starter/artifactIdversion3.5.4.1/version/dependency1.2 配置MyBatis-Plus 接下来我们配置MyBatis-Plus来处理我们的数据访问层。首先定义一个Person实体类 package com.springboot.demo.domain;import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data;/*** 用户表** author water* version 1.0.0* date 2024-12-04 17:45*/ Data TableName(demo_person) public class Person {private Long id;private String name;private int age;} 然后创建对应的Mapper接口 package com.springboot.demo.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.springboot.demo.domain.Person;/*** author water* version 1.0.0* date 2024-12-05 08:11*/ public interface PersonMapper extends BaseMapperPerson { } 最后在Spring Boot主类上启用MyBatis-Plus扫描器 package com.springboot.demo;import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; import org.springframework.cloud.openfeign.EnableFeignClients;/*** springboot -demo** Author: water* Date: 2024/12/4 18:09* Version : 1.0.0*/ SpringBootApplication MapperScan(com.springboot.demo.mapper) EnableDiscoveryClient EnableFeignClients public class SpringbootDemoApp {public static void main(String[] args) {SpringApplication.run(SpringbootDemoApp.class, args);}} 同时配置application.yml文件来设置数据库连接信息 spring:profiles:active: clouddatasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/spring-dmeo?useUnicodetruecharacterEncodingutf8serverTimezoneGMT%2B8useSSLfalseusername: demopassword: Springdemo24hikari:maximum-pool-size: 10minimum-idle: 1idle-timeout: 30000max-lifetime: 1800000transaction:default-timeout: 30graphql:graphiql:enabled: true#mybatis-plus mybatis-plus:mapper-locations: classpath:mapper/*.xmltype-aliases-package: com.springboot.demo.**.domainconfiguration:map-underscore-to-camel-case: true# 默认日志输出: org.apache.ibatis.logging.slf4j.Slf4jImpl# 更详细的日志输出 会有性能损耗: org.apache.ibatis.logging.stdout.StdOutImpllog-impl: org.apache.ibatis.logging.nologging.NoLoggingImpl #关闭日志记录 (可单纯使用 p6spy 分析)cache-enabled: falseauto-mapping-behavior: fullglobal-config:banner: falsedb-config:id-type: assign_id# 默认1删除logic-delete-value: 1# 正常0logic-not-delete-value: 0 # 日志 logging:level:com:example: debugorg:springframework:security: debugsecurity.access: debugsecurity.web: debugsecurity.web.access: debugweb: debugmanagement:endpoints:web:exposure:include: health,info2、集成GraphQL 2.1 定义schema.graphqls 接下来我们集成GraphQL以暴露API供客户端查询使用。首先创建一个GraphQL schema文件schema.graphqls# src/main/resources/schema.graphqls type Query {users: [Person]personById(id: ID!): Person }type Mutation {addUser(name: String!, age: Int!): PersonupdateUser(id: ID!, name: String, age: Int): PersondeleteUser(id: ID!): Boolean }type Person {id: ID!name: String!age: Int! } 2.2 添加GraphQL解析器 然后为这些GraphQL查询和变更创建解析器 package com.springboot.demo.resolver;import com.springboot.demo.domain.Person; import com.springboot.demo.mapper.PersonMapper; import graphql.kickstart.tools.GraphQLMutationResolver; import graphql.kickstart.tools.GraphQLQueryResolver; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component;import java.util.List;/*** GraphQL 查询创建解析器。** author water* version 1.0.0* date 2024-12-05 11:29*/ Component public class UserQuery implements GraphQLQueryResolver, GraphQLMutationResolver {Autowiredprivate PersonMapper personMapper;public ListPerson users() {return personMapper.selectList(null);}public Person personById(String id) {personMapper.selectById(id);return personMapper.selectById(id);}public Person addUser(String name, int age) {Person user new Person();user.setName(name);user.setAge(age);personMapper.insert(user);return user;}public Person updateUser(Long id, String name, Integer age) {Person user personMapper.selectById(id);if (user ! null) {if (name ! null) {user.setName(name);}if (age ! null) {user.setAge(age);}personMapper.updateById(user);}return user;}public boolean deleteUser(Long id) {return personMapper.deleteById(id) 0;}} 2.3 配置schame文件配置 最后配置GraphQL工具包以加载schema文件和其他相关配置 package com.springboot.demo.config;import graphql.schema.idl.SchemaParser; import graphql.schema.idl.TypeDefinitionRegistry; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource;/*** author water* version 1.0.0* date 2024-12-05 14:30*/ Configuration public class GraphQLConfig {Beanpublic Resource graphQLSchemaFile() {return new ClassPathResource(schema.graphqls);}Beanpublic TypeDefinitionRegistry typeDefinitionRegistry(Resource resource) throws Exception {SchemaParser parser new SchemaParser();return parser.parse(resource.getInputStream());} } 至此我们就完成了一个整合了Spring Cloud、MyBatis-Plus和GraphQL的简单示例项目的搭建。 您可以启动应用程序并在浏览器中访问http://localhost:8080/graphiql来测试GraphQL API。 3、访问测试 测试请求的脚本 # Welcome to GraphiQL # # GraphiQL is an in-browser tool for writing, validating, and # testing GraphQL queries. # # Type queries into this side of the screen, and you will see intelligent # typeaheads aware of the current GraphQL type schema and live syntax and # validation errors highlighted within the text. # # GraphQL queries typically start with a { character. Lines that start # with a # are ignored. # # An example GraphQL query might look like: # # { # field(arg: value) { # subField # } # } # # Keyboard shortcuts: # # Prettify Query: Shift-Ctrl-P (or press the prettify button above) # # Merge Query: Shift-Ctrl-M (or press the merge button above) # # Run Query: Ctrl-Enter (or press the play button above) # # Auto Complete: Ctrl-Space (or just start typing) # query select {personById(id:1){idnameage}} query selectList {users{idnameage}} mutation addUser{addUser(name:王麻子, age:22){idnameage} }mutation updateUser{updateUser(id:1864582448746012673,name:钢蛋, age:31){idnameage} }mutation updateUserById{updateUser(id:1864569571339378690,name:赵六六){idname} }mutation deleteUser{deleteUser(id:1864582448746012673) }3.1 查询测试演示 根据Id查询 查询所有 3.2 添加测试演示 3.3 修改测试演示 3.4 删除测试演示
http://www.tj-hxxt.cn/news/220199.html

相关文章:

  • 西安哪家公司网站做的好网络运维的工作内容
  • 网站百度收录怎么做长春网站建设的公司
  • 网站建设价格标准渠道仿 手机 网站模板html源码下载
  • 网站分为几部分wordpress好看的模板
  • 有哪些网站是做采购招标的廊坊网络公司有哪些
  • 用字母做logo的网站建设局职责
  • 营销网站制作平台有哪些苏州建设工程信息网站
  • 网站备案名称规定网站后台功能开发
  • 旅游网站建设与设计wordpress 删除版权信息
  • 昆明中国建设银行网站外贸网店怎么开店
  • 服务器 做网站长沙注册公司可以买房吗
  • 模板手机网站建设价格明细表网站建设版面分几页合适
  • 西安成品网站建设提高审美网站
  • 怎样进行网站板块建设做网站需要固定ip
  • 泰州专业网站制作公司营销导向的企业网站优化
  • 网站维护服务公司如何做网站调研
  • 规划一个电子商务网站设计师资源网站
  • 360网站建设价格seo的培训网站哪里好
  • 响应式网站建设有哪些好处wordpress屏蔽主题更新
  • 和文化有关的吉网站建设模板保定建筑公司排名
  • 垫江网站建设哪家好免费的二级域名服务器
  • 网站建设模块分析重庆森林电影完整版
  • 虚拟主机销售网站源码网站的模板演示怎么做
  • 设计师常用的图片网站久久建筑网官网平台
  • 沈阳建站价格asp.net开发的网站
  • 玉环建设规划局网站湘潭网页定制
  • php网站开发示例什么浏览器可以看违规网站
  • 体育网站建设的必要性深圳个人债务优化
  • 南宁网站搭建怎么样自己建设一个网站
  • 个人名义做网站万维网网站备案流程