https://github.com/insidezhou/graphql-spring-boot-starter
GraphQL springboot starter
https://github.com/insidezhou/graphql-spring-boot-starter
Last synced: 4 days ago
JSON representation
GraphQL springboot starter
- Host: GitHub
- URL: https://github.com/insidezhou/graphql-spring-boot-starter
- Owner: InsideZhou
- License: bsd-2-clause
- Created: 2018-03-19T08:57:19.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2018-03-21T07:22:45.000Z (about 8 years ago)
- Last Synced: 2025-03-04T14:30:18.449Z (over 1 year ago)
- Language: Kotlin
- Homepage:
- Size: 5.86 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# [GraphQL](http://graphql.org/) spring boot starter
> Provide a simple config for use of graphql.
### By default
1. Scan all schema files from classpath://graphql/* for type definition, no recursive.
1. Find *TypeBuilder beans that match any type name in schema files.
1. If TypeBuilder not found, default TypeBuilder provided, find *DataFetcher beans that match any type name in schema files.
- If ListType, *ListDataFetcher used.
- If NonNullType, *NonNullDataFetcher used.
1. Wire up definitions and beans.
### Example
```
schema {
query: Query
}
type Query {
login: Login
orderList: [Order]
}
```
```
data class Order(var code: String)
data class Login(var cellphone: String)
@Component
class LoginDataFetcher : DataFetcher {
override fun get(environment: DataFetchingEnvironment): Login {
return Login("13800138000")
}
}
@Component
class OrderListDataFetcher : DataFetcher> {
override fun get(environment: DataFetchingEnvironment?): Array {
return arrayOf(Order("NN20190101123238781"))
}
}
```