Reputation:
I like to work with Spring features like @Component
, @Autowired
or ApplicationContext
even in smaller applications (like batch applications).
I've read that Java EE 6 is now a viable alternative to Spring in enterprise applications. Is that also true for smaller ones? What would be the corresponding alternatives to the features I've mentioned above?
Upvotes: 5
Views: 3346
Reputation: 11
DataKernel might be a great option in your case. From the site:
DataKernel is a full-featured alternative web and big data Java framework.
A set of predefined launchers and classes for typical use cases allows you to develop apps extremely fast. Create an async HTTP server in less than 15 lines of code with no additional configuration files.
They also have their own Dependency Injection with quite impressive benchmarks:
DataKernel DI is lightning-fast: 5.5 times faster than Guice and up to 100s times faster than Spring.
Note that DataKernel has quite a different approach comparing to Spring framework, it is more like Node.js-inspired
Upvotes: 0
Reputation: 38163
The Java EE 6 Web Profile is suitable for very small applications. TomEE is a good example, it's only some 25MB and runs in 64MB of memory.
Being mostly POJO and annotation based with a good dose of convention over configuration, the programming model is also very light and easy to understand now.
Upvotes: 2
Reputation: 4785
Java EE 6 is not going to be any lighter that's for sure. In the Java EE space look at jBoss Weld. But really good alternate and in lighter weight is google Guice.
Upvotes: 6
Reputation: 4483
Play Framework is also a good recommendation for a smaller application. Its main feature is Hot Deployment. And its view technology is like Grails. Its pretty good.
Hope this helps you. Cheers.
Upvotes: 1