koa-springboot
TypeScript icon, indicating that this package has built-in type declarations

0.2.4 • Public • Published

koa-springboot

npm version last commit travis publish size license

feature

  • use decorator to build router
  • auto import controller
  • validate required params

install

npm i koa koa-router koa-springboot -S

demo

controller

// ...
@RequestMapping('/persons')
@ResponseBody
export default class Person {

  @GetMapping
  index() {
    return list;
  }

  @GetMapping('/:id')
  show(@PathVariable('id') id: string) {
    // ...
    return record;
  }

  @PostMapping
  create(@RequestBody body: any) {
    // ...
    return newRecord;
  }

  @PutMapping('/:id')
  update(@PathVariable('id') id: string, @RequestBody body: any) {
    // ...
  }

  @PatchMapping('/name/:id')
  patch(@PathVariable('id') id: string, @RequestBody body: any) {
    // ...
  }

  @DeleteMapping('/:id')
  destory(@PathVariable('id') id: string) {
    // ...
  }
}

app

// ...
@ControllerScan(__dirname, 'controller')
class App extends Application {
  // override init method to do you own logic
  // or not
  protected init() {
    this.app
    .use(bodyParser())
    .use(this.router.routes())
    .use(this.router.allowedMethods());
  }
}

new App().start();

see full demo here

reference

docs of spring mvc

Package Sidebar

Install

npm i koa-springboot

Weekly Downloads

3

Version

0.2.4

License

MIT

Unpacked Size

30.4 kB

Total Files

16

Last publish

Collaborators

  • asherwang