【Java开发框架之Ninja】

Ninja是一个Java全栈Web开发框架,稳定、快速、非常高效。

Ninja is an integrated software stack. The aim is that you don’t have to setup everything yourself. Ideally you just generate a new project from our maven archetype, import the project into your IDE and start hacking.

Therefore Ninja is made up of libraries that deliver everything. From Html, Json and Xml rendering and parsing to management of different environments, database persistence, testing and much more.



 

主要特性

岩石般稳固

Ninja没有从头开始发明轮子——我们站在了巨人的肩膀之上。Ninja使用了业界最成熟和稳固的技术,包括Servlet、Guice、JPA、Flyway迁移和Maven等。

可扩展

Ninja采用非共享策略。服务器没有共享任何通用会话信息。这意味着你可以对Ninja非常容易地进行水平扩展。

100% Java

你可以享受所有Java的优点:优异的IDE支持、静态类型语言、巨大且成熟的生态系统、最好的测试支持等等。Ninja基于Apache 2.0开源协议发布——基本代码(codebase)永远开源。

开发

你可以使用Maven原型生成一个新项目,导入到你最喜欢的IDE中就可以开始编程了。Ninja的SuperDevMode能立刻获得所有的代码变化。Ninja支持哪些特性? HTML、XML、JSON、JPA、缓存等等。

测试

Ninja自带了丰富的测试工具,可以在一台真实的服务器上对你的应用执行模拟测试和集成测试。想要运行selenium测试?同样支持。Ninja可以在本地和任何持续集成服务器上运行。

DevOps

把你的Ninja应用打包成war文件,在你的应用服务器上运行(Tomcat、Jetty等)。也可以创建一个独立应用程序,拷贝到你的服务器上在产品中运行。Ninja可以在云端运行,支持Heroku平台、App引擎和许多其它云服务提供商。

Key features we wanted to see

After long hours of discussions and a lot of prototypes we came up with the following key features:

1)Web friendly. Restful architecture. Simple programming model.

2)Plain vanilla Java. Dependency Injection. First class IDE integration.

3)Super fast development cycles.

4)Simple and fast to test (Mocked tests / Integration tests).

5)Excellent build and CI support.

6)Simple JSON consumption and rendering for clean RESTful APIs.

7)HTML rendering / Form submission validation and parsing.

8)Built-in support for authentication of users.

9)Not much bytecode magic. Clean codebase - easy to extend.

And because we have many customers that run their applications on the Google App Engine (GAE) we needed to support the GAE, too.

猜你喜欢

转载自gaojingsong.iteye.com/blog/2378956