Skip to content

oatpp/example-crud

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Example-CRUD Build Status

A complete example of a "CRUD" service (UserService) built with Oat++.

In this example:

  • How to create CRUD endpoint.
  • How to use oatpp ORM - SQLite example.
  • How to document API with Swagger-UI and OpenApi 3.0.0.

More about Oat++:

Overview

This project is using the following oatpp modules:

Project layout

|- CMakeLists.txt                        // projects CMakeLists.txt
|- sql/                                  // SQL migration scripts for SQLite database
|- src/
|   |
|   |- controller/                       // Folder containing REST Controllers (UserController)
|   |- db/                               // Folder containing the database client
|   |- dto/                              // DTOs are declared here
|   |- service/                          // Service business logic classes (UserService)
|   |- AppComponent.hpp                  // Service config
|   |- DatabaseComponent.hpp             // Database config
|   |- SwaggerComponent.hpp              // Swagger-UI config
|   |- App.cpp                           // main() is here
|
|- test/                                 // test folder
|- utility/install-oatpp-modules.sh      // utility script to install required oatpp-modules.

Build and Run

Using CMake

Pre Requirements
  • oatpp
  • oatpp-swagger
  • oatpp-sqlite with -DOATPP_SQLITE_AMALGAMATION=ON cmake flag.

Note: You may run utility/install-oatpp-modules.sh script to install required oatpp modules.

Build Project
$ mkdir build && cd build
$ cmake ..
$ make 
$ ./crud-exe        # - run application.

In Docker

$ docker build -t example-crud .
$ docker run -p 8000:8000 -t example-crud

Endpoints

HTML

HTTP Method URL Description
GET http://localhost:8000/ Root page
GET http://localhost:8000/swagger/ui Swagger UI page

User Service

HTTP Method URL Description
POST http://localhost:8000/users Create new User
PUT http://localhost:8000/users/{userId} Update User by ID
GET http://localhost:8000/users/{userId} Get User by ID
DELETE http://localhost:8000/users/{userId} Delete User by ID
GET http://localhost:8000/users/offset/{offset}/limit/{limit} Get All Users with Paging

About

A complete example of a "CRUD" service (UserService) built with Oat++.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 6

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy