Oracle ADF对单表实现增删改查

本文详细介绍了使用Oracle ADF在JDeveloper中创建新应用程序,通过新建EO、VO、AM来实现单表的查询、新增、修改和删除功能。文章覆盖了从设置数据库连接,到生成并配置各个组件,最后实现分页操作的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这篇文章用来熟悉JDeveloper工具和ADF框架。

新手上路学Oracle ADF框架,怀着激动地心情敲下了这一篇文章。

 

一、新建应用程序

新建应用程序。选择Fusion Web Application

 

1.1 填写应用程序名。

 

1.2填写项目名

 

1.3 填写包名

 

1.4 填写项目名

 

1.5 填写包名

 

二、新建EO、VO、AM

右击Model-->New,选择Business Tier-->ADF Business Component-->Business Component from Table

 

选择数据库连接,如果之前没有建立IDE级的数据库连接就点击加号。

 

填写连接信息。

 

填写好之后点击Test Connection按钮,如果是Success,点击OK,如果出现了其他错误,就要自己排查原因了,比如Oracle服务没开,账号没解锁,用户的角色问题等等。我遇到过一个问题Test Failed: ORA-01031: insufficient privileges,用scott账号连接,Role选的SYSDBA出现了这个错误。这里的Role可以什么都不选。只有用sys或者system账号连接的时候选。

 

2.1 新建EO

点击Query按钮,查找HR用户所有的表。在Available中选择DEPARTMENTS,点击向右的箭头,则这个表被选中,修改Entity NameDepartmentsVO

 

2.2 新建VO

根据EO新建VO,也是在Available中选择DepartmentsEO,点击向右的箭头,修改Object NameDepartmentsVO

 

新建只读VO,这一步直接点击Next,当前不需要。

 

2.3 新建AM

新建AM,修改一下AM的包名和名字。然后点击Finish。

 

三、逻辑处理

双击打开ViewController-->Web COntent-->WEB-INF-->adfc-config.xml文件。

 

Component Palette中的Components拖动一个View组件到文件中。

 

双击文件中的图标,修改文件名和文件路径,如果没有勾选Create as XML Document,就手动勾选。

 

3.1 查询功能

DataControls中的DepartmentsVO1拖动到list.jspx中。如果DataControls中什么都没有就点击一下右边刷新的图标。拖动到list.jspx之后在快捷菜单中选择Table/List View-->ADF

 

选择Single Row

 

右击list.jspx,选择Debug。

 

第一次运行会要输入weblogic的密码。访问地址和监听端口。

 

服务器启动之后会在控制台打印访问的路径,还会自动打开浏览器来访问这个页面。

 

3.2 新增功能

把服务器停掉。再打开adfc-config.xml文件。

 

拖动一个view到adfc-config.xml中,修改文件名为edit.jspx

 

DepartmentVO1拖动到edit.jspx中。

 

在快捷菜单中选择Form-->ADF Form。点击OK。

 

添加CommitRollback。用来提交事务和回滚事务。

 

快捷菜单选择ADF ButtonADF Link也可以。

 

CreateInsert拖动到list.jspx中。

 

接下来要做到点击list.jspx中的CreateInsert跳转到edit.jspx页面。

在edit.jspx页面点击Commit或Rollback跳转到list.jspx页面。

再次打开adgc-config.xml。选择Control Flow Case

 

选择之后点击起始页面和终止页面。填写映射地址。

 

打开list.jspx,点击Source,在源代码中,将CreateInsert按钮添加action属性,属性值为edit

        <af:commandButton actionListener="#{bindings.CreateInsert.execute}"
                          text="CreateInsert" action="edit"
                          disabled="#{!bindings.CreateInsert.enabled}"
                          id="cb1"/>

 

打开edit.jspx,点击Source,在源代码中,将Commit和Rollback添加action属性,值为back

        <af:commandButton actionListener="#{bindings.Commit.execute}"
                          text="Commit" disabled="#{!bindings.Commit.enabled}"
                          id="cb1" action="back"/>
        <af:commandButton actionListener="#{bindings.Rollback.execute}"
                          text="Rollback"
                          disabled="#{!bindings.Rollback.enabled}"
                          immediate="true" id="cb2" action="back">

 

右击list.jspx选择Debug启动。

启动之后点击CreateInsert。跳转到新增的页面。

 

在新增页面填写信息。点击Commit。

 

跳转回查找页面,可以看到刚刚新增的数据已经有了。

 

数据库中也有了这个数据。

 

3.3 修改功能

打开list.jspx。选择表格,在表格的右上角有个向下的箭头,点击这个箭头,选择Insert inside -> Column

表格多了一列,然后把这一列拖到第一列。

 

右击第一列,选择Go to Properties

 

拖动一个Button操作这一列。修改Text编辑。修改Actionedit

 

然后右击list.jspx-->Debug。

页面上的效果。

 

编辑刚刚添加的那条数据。

 

跳转到编辑页面。修改DepartmentNamehaha。点击Commit

如果按钮失效了,打开Sources,将Commit和Rollback按钮中的disabled="#{!bindings.Commit.enabled}"删掉。

 

数据库中的已经修改了。

 

3.4 删除功能

Delete拖动到操作这一列中。修改Text为删除。

再添加CommitRollback。修改为提交和回滚。

 

右击list.jspx-->Degub。

 

现在删除DepartmentId12的数据。点击删除按钮。查看数据库。

 

数据库中还有这条数据。原因是没有提交事务。点击提交按钮。再次查询数据库。数据库中的数据被删除了。

 

3.5 分页

在list.jspx中选择表格,修改属性ScrollPolicypage

 

修改AutoHeightRows0FetchSize10

 

分页效果。

 

Oracle ADF的一个特性就是声明式和可视化,没写一句Java代码实现了单表增删改查。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值