摘要:不過,目前我已經(jīng)用這個(gè)包,重寫了我公司內(nèi)部的一個(gè)后臺(tái)項(xiàng)目,目前一切運(yùn)行良好。
最近閑來無事,突發(fā)奇想,也順便練練手,于是就萌生了,能否用typescript的decorator寫一個(gè)Nodejs SpringMVC,然后就有了這個(gè)項(xiàng)目。
該項(xiàng)目支持:
依賴注入Controller ,Service
注入GET/POST/PUT/DELETE/PATCH等rest方法
解析rest api的參數(shù),例如RequestParam
上傳文件支持Multer
支持在vscode里面直接debug typescript 的代碼
想學(xué)習(xí)如何debug typescript代碼的同學(xué)可以留意一下,真的很好用。
直接上readMe的部分內(nèi)容:
npm i easy-node-ioc --saveQuick Start
Check out the quick start example in test.
Usage 1.Create a Controllerimport { Controller} from "easy-node-ioc"; @Controller("/test") class TestControl { ... }2.Create a Service
import { Service } from "easy-node-ioc"; @Service("") class TestService { ... }3.Inject Service
import { Autowired,Controller } from "easy-node-ioc"; @Controller("/test") class TestControl { @Autowired testService: TestService; ... }4.Define Rest API:GET,POST,PUT,DELETE,PATCH
import { Autowired,Controller,GET,RequestParam } from "easy-node-ioc"; @Controller("/test") class TestControl { @Autowired testService: TestService; @Get("/index") index(@RequestParam("age") age: number, req: Request, res: Response) { console.log("index method"); this.dbService.queryDb(); res.status(200).send(this.testService.queryDb()); } ... }4.Define Start App
import { Bootstrap, ComponentScan } from "../"; @ComponentScan(join(__dirname, "./Controller.ts")) @Bootstrap class App { constructor() {} app = express(); main() { const server = http.createServer(this.app); server.listen(9001, function() { console.log("Example app listening at http://%s:%s"); }); } }How to debug
if you use vscode , just follow .vscode/launch.json , select Launch Program .
if you see Example app has started. in the console , then means test case start successfully .
Try to call http://localhost:9001/api/test/index .
gitHub地址:https://github.com/chenkang08...
說明:由于這個(gè)項(xiàng)目也是突發(fā)奇想,可能會(huì)存在問題。不過,目前我已經(jīng)用這個(gè)包,重寫了我公司內(nèi)部的一個(gè)node后臺(tái)項(xiàng)目,目前一切運(yùn)行良好。
同時(shí),歡迎issues,如果你覺得還可以,也可以給我一個(gè)star。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/105898.html
摘要:異步處理簡介地址相關(guān)系列文章異步處理詳解分析本文講到的所有特性皆是基于的,不是基于的。用于異步返回結(jié)果,使用自己的,使用負(fù)責(zé)處理它。配置執(zhí)行異步操作需要用到,這個(gè)可以在用方法來提供相關(guān)文檔。 Spring MVC異步處理簡介 Github地址 相關(guān)系列文章: Servlet 3.0 異步處理詳解 Servlet 3.1 Async IO分析 本文講到的所有特性皆是基于Servlet...
摘要:定制特定異常返回結(jié)果根據(jù)官方文檔的例子,可以使用和對特定異常返回特定的結(jié)果。下面是用瀏覽器和訪問的結(jié)果無輸出注意上方表格的錯(cuò)誤,產(chǎn)生這個(gè)的原因前面已經(jīng)講過。不過需要注意的是,無法通過設(shè)定,由或者容器決定里一律是。 github:https://github.com/chanjarste... 參考文檔: Spring Boot 1.5.4.RELEASE Documentation ...
摘要:最后創(chuàng)建了群方便大家交流,可掃描加入,同時(shí)也可加我,共同學(xué)習(xí)共同進(jìn)步,謝謝 創(chuàng)建項(xiàng)目 創(chuàng)建web項(xiàng)目,使用maven webapp模板進(jìn)行構(gòu)建,創(chuàng)建完成后,在pom中引入Spring MVC依賴,如下: org.springframework spring-webmvc 5.0.5.RELEASE javax.servlet ja...
摘要:開發(fā)應(yīng)用程序非常適合應(yīng)用程序開發(fā),通過使用嵌入式或,你可以創(chuàng)建一個(gè)自包含的服務(wù)器。如果你還沒有開發(fā)過一個(gè)應(yīng)用程序,你可以按照入門部分中的示例進(jìn)行操作。自動(dòng)配置為大多數(shù)應(yīng)用程序提供了良好的自動(dòng)配置。 27. 開發(fā)Web應(yīng)用程序 Spring Boot非常適合web應(yīng)用程序開發(fā),通過使用嵌入式Tomcat、Jetty、Undertow或Netty,你可以創(chuàng)建一個(gè)自包含的HTTP服務(wù)器。大多...
摘要:畢竟永遠(yuǎn)相信本文能給你帶來意想不到的收獲使用示例關(guān)于數(shù)據(jù)校驗(yàn)這一塊在中的使用案例,我相信但凡有點(diǎn)經(jīng)驗(yàn)的程序員應(yīng)該沒有不會(huì)使用的,并且還不乏熟練的選手。 每篇一句 NBA里有兩大笑話:一是科比沒天賦,二是詹姆斯沒技術(shù) 相關(guān)閱讀 【小家Java】深入了解數(shù)據(jù)校驗(yàn):Java Bean Validation 2.0(JSR303、JSR349、JSR380)Hibernate-Validati...
閱讀 1656·2019-08-30 15:55
閱讀 978·2019-08-30 15:44
閱讀 871·2019-08-30 10:48
閱讀 2043·2019-08-29 13:42
閱讀 3188·2019-08-29 11:16
閱讀 1263·2019-08-29 11:09
閱讀 2059·2019-08-26 11:46
閱讀 619·2019-08-26 11:44