Oracle's free, easy-to-use Web application Development framework

Source: Internet
Author: User

Oracle's free, easy-to-use Web application Development framework

APEX

In general, Apex is the most convenient and efficient development framework I've ever seen, and it's more comfortable to use than PHP. Easy to get started, the study cost is very low, there was a little girl to do the executive, under my guidance two days can develop a simple approval management site. Apex is the perfect choice if the enterprise is to do some internal applications.

Compared to the other frameworks I used, there are two features that apex is unique:

    1. Online editing, no desktop IDE.
    2. Developed using SQL and PL/C languages.

is the Apex development interface:

Apex relies on the database to execute business logic and generate HTML pages. The various layouts of the page, the control template is stored in the database, an Oracle data plus an HTTP server for everything it has, if you use the database of PL/SQL Gateway, even the independent HTTP server is not required. So the physical apex is part of the Oracle database, and the most recent version of the Oracle database comes with Apex, which is installed by default with the database.

Apex does not have a dedicated data access layer, and data manipulation is done directly with SQL. On the one hand is simple, on the other hand because is the database environment in the online development, can directly read the database object, SQL is mostly semi-automated generation. Back-Office business logic is implemented with PL/SQL, Oracle's package is powerful enough, not really. The Oracle database also comes with a JVM, writes Java code, or it supports Web service, and can invoke external modules.

UI, very MVC. M includes the item,v that holds the data generates layouts and controls with HTML templates, and C is responsible for calculation, validation, data processing, navigation, and so on. Apex interface elements contain commonly used lists, forms, chart, button and various input controls, and can be built plugin, or with third-party plugin, even can join ExtJS this JS framework. But as a handy framework, I don't advocate deep custom development. Form + List has been able to satisfy most of the applications, such as the Siebel of large-scale system applets are also so several.

is the Apex application style:

Apex also comes with dozens of packaged applications, such as project management, issue tracking, reporting, etc., that can be quickly deployed.

In terms of cost, apex itself does not require additional license, and if Oracle's database is procured, it can be used directly with apex. If not, Apex also supports the Oracle XE database.

Adf

The first contact ADF was probably 08, when the ADF 11g was just launched. At that time looked at it a video tutorial, was startled to. As to why we were surprised, let's take a look at the video below.

such as video display, ADF has two major features:

One is the rich RIA component, the ADF has hundreds of UI components. By the way, I'm not a front-end, and I've touched the RIA framework that includes ADF, RichFaces, ExtJS, Dojo, JQuery UI, and so on, but it's only the ADF and ExtJS that make me feel amazing. It is not that the other framework is not good, but the vision has been opened up later, there is no feeling.

The second is the visual, declarative way of development, it is clear that the jdeveloper in this IDE drag control can automatically generate configuration files and code. In addition to complex logic processing to write code, the ADF implements the control of page design, navigation, model layer data binding, and data persistence layer operations. Prior to the ADF, I had done just ASP. Net 3.5, and I remember that when I was using LINQ to SQL for a while, I was excited for a while later using ADF to know that there was a mountain high.

The technical architecture of the ADF is divided into three parts, such as:

The ADF top is the ADF faces and ADF Controller, which is part of JSF-based technology. ADF faces has hundreds of UI components that use AJAX features, and facet nesting within components can add more functionality and provide client and server-side APIs. The ADF controller extends the JSF controller, starting with the task flow to enhance the JSF navigation control, and secondly, the JSF lifecycle and managed Bean scope enhancements.

At the bottom of the ADF is the ADF business components (ADF BC), which is responsible for operational logic and ORM.

Between the ADF controller and the ADF BC is the ADF Model. The ADF model exposes the ADF BC to UI usage for data control and data binding. In addition to the ADF BC,ADF model, EJB, WEB service, etc. are supported.

The ADF uses a pattern similar to AM-MVC, which now looks quite advanced. With JDeveloper, the development process is extremely fluid and, as I initially saw in the instructional video, some applications can be almost without code development.

Although the ADF looks nice, I use it to feel a lot of pits. First, the ADF is a more complex framework, its own documentation has thousands of pages, but not enough, but also need to know some of the basic knowledge of JSF. It belongs to the kind of seemingly silly on the surface, go down only to find more and more fork, it takes a long time to learn while groping to form the right development model and norms, that is, the so-called best practice. Second, the issue is supported for new versions of Java EE. The ADF is JSF-based (ADF BC does not count), but it still stays in the era of JSF 1.2 a decade ago, with the development of a significant use of XML configuration files (Java EE 6 basic only with annotation) and JSF Managed beans (Java EE 6 is CDI Bean). Although the ADF is self-formed, Java EE 6, 7 added new features and advanced development mode can not be used, it is a pity. Third, the ADF development environment has yet to be improved, jdeveloper occupies more resources, especially the visual editing interface, complex pages with i7 CPU will also be Kaka. Four, there are bugs. Although these years through the 11g, 12c in the middle of several versions, but the bug is still there. The latest 12.1.3 I also met, Gantt Chart sub-task display problems, wasted two days, no results, eventually give up.

So, for a friend who wants to try ADF, my advice is to stick with it for two months and decide if it's right for you. Another benefit of learning the ADF is that it can be developed for other Oracle applications later, and Oracle has used ADF as its strategic development framework, and many product lines have been replaced with ADF-style interfaces. For example, the human task in SOA Suite needs to be developed with ADF.

On the cost side, the ADF itself is free, but it can only be deployed to weblogic,weblogic not free (with Apex one reason). If you want to deploy to a free application Server, such as GlassFish, Tomcat, with ADF essential,adf Essential castrated security, you need to find your own solution or find a third-party solution. In addition, there is an open source, simplified version of ADF faces donated to Apache Myfaces.

The ADF has three more featured brothers, by the way:

1. jheadstart– generates ADF programs based on templates, simplifying development efforts. Especially for those who have little experience with the interface design and too many components that lead to the choice of phobias.

2. ADF Desktop Integration (ADF DI)-front end this part does not use the ADF faces Web interface, but as a plug-in integration into Excel, similar to the C/s architecture. Because there is a lot of data processing inside the enterprise, Excel has an advantage over the Web interface.

3. Mobile application Framework (MAF)-The Hybrid Mobility Application Development framework supports iOS and andriod systems. Similar to the IBM Worklight Hybrid framework, MAF applications are installed on the device like native applications, but packaged inside a JVM to execute Java code, display the UI with a browser inside a mobile device, and use Apache Cordova to invoke the camera, GPS, and other services inside the device.

Category: Web Tags: Oracle, APEX, ADF

Oracle's free, easy-to-use Web application Development framework

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.