Serverless with Spring

Apurv Sheth
1 min readMar 15, 2022

1. Introduction:
In this article, we have gone through the functional interface implementation feature introduced in Java8.
Now, we will learn how to leverage functional interface implementation using spring boot.

2. Tool(s)/Framework(s):
- Any java project tool suite like Spring tool suit, eclipse, IntelliJ
- JDK 8 or above
- Spring boot 2.x & above

3. Prerequisites:
- Java functional interface
- Lambda

4. Spring Cloud Function Setup

4.1 Maven Dependencies

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-function-web</artifactId>
</dependency>

4.2 Writing Spring Cloud Function
Writing a spring cloud function like supplier, consumer, or function is very simple. We can define bean for each type of function & we can access this functional implementation via its method name.
For Ex:

/**
* Function implementation.
*
* @return Function
*/
@Bean
public Function<String, String> welcome() {
return (userName) -> “Welcome “ + userName + “ to the functional programming”;
}

4.3 Testing
We can verify the spring cloud function written above with curl command as given below.

curl http://localhost:8080/welcome -H “Content-Type: text/plain” -d apurv

5. Key takeaways
The spring cloud function is a really powerful feature that abstracts business logic from all of transport details & infrastructure. It might be in its earlier stage but there are many benefits via which we can,
- use all spring boot features like auto-configuration, dependency injection & many more.
- build cloud-agnostic unified programming model, across serverless providers.
- leverage same code & can run as a web endpoint, a stream processor, or a task.

6. Git Repo

https://github.com/shethaptech/spring-boot.git

7. References:
https://spring.io/projects/spring-cloud-function#support

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Apurv Sheth
Apurv Sheth

Written by Apurv Sheth

AWS Community Builder & Certified Solutions Architect | Cloud Enabler/Enthusiast | Spring Boot | Docker | Kubernetes | Microservices | Java/J2EE | Terraform

No responses yet

Write a response