spring-rs is a microservice framework written in Rust, similar to SpringBoot in java. spring-rs provides an easily extensible plug-in system for integrating excellent projects in the Rust community, such as axum, sqlx, sea-orm, etc.
Compared with SpringBoot in java, spring-rs has higher performance and lower memory usage, allowing you to completely get rid of the bloated JVM and travel light.
Example
use spring::{get, route, auto_config, App};
use spring_sqlx::{
sqlx::{self, Row},
ConnectPool, SqlxPlugin
};
use spring_web::{
error::Result, extractor::{Path, Component}, handler::TypeRouter, response::IntoResponse, Router,
WebConfigurator, WebPlugin,
};
use anyhow::Context;
#[auto_config(WebConfigurator)]
#[tokio::main]
async fn main() {
App::new()
.add_plugin(SqlxPlugin)
.add_plugin(WebPlugin)
.run()
.await
}
#[get("/")]
async fn hello_world() -> impl IntoResponse {
"hello world"
}
#[route("/hello/:name", method = "GET", method = "POST")]
async fn hello(Path(name): Path<String>) -> impl IntoResponse {
format!("hello {name}")
}
#[get("/version")]
async fn sqlx_request_handler(Component(pool): Component<ConnectPool>) -> Result<String> {
let version = sqlx::query("select version() as version")
.fetch_one(&pool)
.await
.context("sqlx query failed")?
.get("version");
Ok(version)
}
spring-rs
Project Details
- mowei-git/spring-rs
- MIT License
- Last Updated: 3/27/2025
Recomended MCP Servers
MCP server for Korean tourism information
OpenAPI Schema Model Context Protocol Server
基于Spring Cloud的分布式微服务架构
GitHub Actions Model Context Protocol Server
MCP-Hub and -Inspector, Multi-Model Workflow and Chat Interface
smithery.ai server
MCP server to access Singapore's LTA data
MCP Server to retrieve documentation for a package
A Model Context Protocol (MCP) server for research and documentation assistance using Perplexity AI. Won 1st @ Cline...
Build a knowledge base into a tar.gz and give it to this MCP server, and it is ready...