A Java framework for online desktop application
We h开发者_StackOverflow中文版ave a working ordering system written completely in PHP using the Zend Framework. The system was made as a web application to be used easily across different machines over the web.
We have decided to change the system so that the client side will be a Java desktop application which will communicate with PHP web services on a server.
We are not building a JSP application, it's entirely a desktop application that's going to use sockets to talk to the server.
I need the framework to work in a manner similar to the MVC pattern where (for example) there is a class holding the events for the frame and another class holding the auto generated codes for the controls (something like the code behind in C#).
The framework should be easy to extend and to modify any part of it for complete control over the application.
I know there is many posts asking about the best Java framework, but I'm looking for something that will do most of its operations online.
I'm a PHP developer, and I have very little experience in Java so please bear that in mind when recommending a solution.
The main open source frameworks that I know of that are available for Java are Eclipse RCP, NetBeans RCP, and Spring RCP. In all cases, RCP means Rich Client Platform. Eclipse's uses SWT as the underlying windowing tookit, the other two use Swing.
I'm much more familiar with Eclipse RCP than the other two, and I find consider it a mixed bag. As a framework I think it is nice in that it provides good methods for setting up most of the things a typical application requires and separates concerns nicely while still allowing for good reuse. I find SWT to be an uglier API than Swing in general though, but not really a deal breaker. It will also require you to become familiar with OSGi as it is built on top of it. It sounds to me like it would be worth your time to check it out.
If you are going to build a Java desktop application, I would recommend Java Swing. It's the default Java GUI Framework.
If you want to do operations online, you can use Apache HttpClient and the HTTPS protocol. This is the same HttpClient that is used in Android applications.
精彩评论