构成全数Portal情况的组件列表有哪些呢?

3个月前 (12-10 00:27)阅读2回复0
yk
yk
  • 管理员
  • 注册排名3
  • 经验值130665
  • 级别管理员
  • 主题26133
  • 回复0
楼主

  Oracle 数据库中的Oracle 办事。

  mod_plsql模块模块供给了在Apache、Oracle Portal和数据库之间的缜密的综合性和平安性,并改进交互感化和经Web恳求挪用的法式的施行情状。

Portal开发东西箱(Portal Development Kit,PDK)的两个次要特征是完全用PL/SQL实现的PDK -PL/SQL和用Java实现挪用接口的PDK-Java。

  它们都能拜候Web资本或数据库办事器,两者都能挪用Java法式,假设Java法式被导进数据库中,能够从PL/SQL挪用它们。下面是构成全数Portal情况的组件列表:

1.Oracle Database Aerver

2.HTP/HTF包和东西(PL/SQL Web Toolkit)

3.Portal procedures(Portal历程)

4.Portal Schema(数据库表)

5.Oracle 9iAS Application Server(及Logon Server)

6.Apache

7.Mod_PLSQL Apache Plug-in

8.Portalets

9.External images(外部图象)

10.成立利用法式需要的Tables和数据

Oracle 9iAS Application Server和Apache 是构造中的底层部门,它们成为开发中的最重要的部门之一。

  Listener和Mod_PLSQL网关是配对的,Listener本身是个完全的Apache 交换的全数需要信息。

  Oracle把Apache 和数据库安拆的一部门停止安拆。

下面阐明当在阅读器阅读网址所示)办事器的响应过程。

图1

Apache监听器是一个。

  conf文件中,Apache根据那一文件识别出"pls"是一个PL/SQL恳求而且把施行使命传递给PL/SQL模块(mod_plsql)。mod_plsql随后查看网址字符串的剩下部门。"simpledad"是数据库拜候描述符(Database Access Descriptor,DAD),它给出关于mod_plsql如何被毗连到数据库中往施行恳求的信息,能够设置装备摆设多个DAD,它包罗用户名、密码、认证体例、途径别号等信息。

  “show”为mod_plsql施行的PL/SQL过程,假设在URL的最初没有指定过程名,则mod_plsql会查找默认的过程名,此默认过程名也可在DAD中设置。过程运行并发送成果(利用PL/SQL Web Toolkit生成的)到返回到阅读器。

  过程能够间接利用PL/SQL Web Toolkit编程,也能够通过loadpsp号令行东西把PSP页面加载到数据库中生成过程,阅读PSP页面只需在URL中以过程名结尾即可,不需扩展名“。psp”。

需要重视的是,在Portal系统中,能够由文件夹和文档来治理用于展现在阅读器中的图象和多媒体,而本文在仅安拆Oracle数据库时,图片等多媒体类型的文件必需存放在“$ORACLE_HOME\apache\modplsql\cfg\images\”途径下,而且在PSP页面中挪用时利用途径“admin_/images/”。

PL/SQL语言已经长时间做为Oracle数据库和开发情况的根底,Oracle自己是利用PL/SQL成立的,而且Oracle已经成立了从PL/SQL过程间接拜候HTML的办法,但太依靠于PL/SQL代码会使后来的可能不熟悉PL/SQL代码的开发者难于庇护利用法式。

  利用PL/SQL页面表达层的优势之一是实现了表达层与营业逻辑的别离,营业逻辑以存储过程的形式存储在数据库中,优势之二是PL/SQL页面页面的运行取决于对数据库过程的挪用,独立于利用办事器,在数据库缓存办事器撑持下运行性能好。

设置装备摆设Apache的mod_plsql模块

设置Apache Web 办事器中的mod_plsql模块来领受阅读器对数据库中的存储过程的挪用。

  Oracle ,步调如下:

1.阅读网址。

  99。18。136,也是本机地址或Apache办事器的主机地址.如图2所示。

图2

2.翻开组件mod_plsql的链接,如图3所示。

图3

3.点击"网关数据库拜候描述符设置",如图4所示。能够将新的数据库拜候描述符添加到现有列表。

  此处设置装备摆设的信息包罗:用户名、口令、毗连字符串、文档上载途径和过程、需要停止 long raw 上载的文件扩展名、途径别号和相关过程,以及确认毗连的信息。本例中修改SIMPLEDAD,如图5所示。

图4

4.在SIMPLEDAD的编纂页面中,修改Oracle 用户名为cf,Oracle 口令为cf,Oracle 毗连字符串为db:1521:o90,假设网关在所毗连的数据库以外的其他Oracle主目次中运行,则需要TNS毗连字符串。

  此外,也可利用以下格局的组合字符串来替代TNS毗连字符串,即::。是运行数据库的主机名,是TNS监听法式监听的端标语,是数据库例程的Oracle SID名称。为了获取更佳性能,请连结网关的数据库毗连池处于翻开形态。网关利用"文档拜候信息"向与此数据库拜候描述符联系关系的数据库上载或下载文档。

  默认情状下所有文档都将以BLOB类型上载。通过在Long Raw字段中指定以逗号分隔的文件扩展名,能够笼盖此默认设置。此字段的"*"值将使所有文档以Long Raw 数据类型上载。"文档拜候过程"指定用于拜候文档的虚拟途径。"文档拜候过程"字段指定网关处置文档恳求所挪用的过程。

  此处都利用缺省值。假设通过此网干系接的利用法式撑持将绝对途径映射到关键字,能够指定关键子,本例中此处为空。设置完该页面后返回上级页面。

图5

5.下面设置全局网关。在如图3所示的网关设置装备摆设菜单中抉择"网关全局设置",如图6所示,将第5步中编纂修改的数据库拜候描述符SIMPLEDAD做为默认全局网关的DAD。

图6

编写存储过程和网页代码

本实例的数据库对象都在cf/cf操做形式下。数据库情况为Oracle9。0。1,带有Oracle 及其任何组件。

1.成立表student并插进7条笔录。

CREATE TABLE student

(ID NUMBER(5,0) NOT NULL

,NAME VARCHAR2(15) NOT NULL

,DOB DATE

,GENDER VARCHAR2

(2) DEFAULT '男'

,CLASSYR NUMBER(4,0) DEFAULT 2002 NOT NULL

,MAJOR VARCHAR2(25)

,EMAIL VARCHAR2(50)

,PHOTO VARCHAR2(100)

alter session set nls_date_format = 'dd-mon-yyyy';

alter session set nls_date_language = 'AMERICAN';

insert into student values ( 1001,'赵鹏','14-JUL-1975','男',2001,'History',

'1001@NetUniversity。

  org','u1001。gif')

insert into student values ( 1002,'刘宇','08-OCT-1975','女',2001,'Science',

'1002@NetUniversity。org','u1002。

  gif')

2.以帐户cf/cf成立存储过程show_student。

create or replace procedure show_student

(p_id

in out student。id%TYPE

,p_name

out student。

  name%TYPE

,p_dob

out student。dob%TYPE

,p_gender

out student。gender%TYPE

,p_classyr

out student。classyr%TYPE

,p_major

out student。

  major%TYPE

,p_email

out student。email%TYPE

,p_photo

out student。photo%TYPE

IS

CURSOR get_student(p_id in student。

  id%TYPE DEFAULT 1001) IS

SELECT * FROM student

WHERE id = NVL(p_id,1001);

student_row student%ROWTYPE;

BEGIN

IF p_id1007 THEN

p_id:=1007;

END IF;

OPEN get_student(p_id);

FETCH get_student INTO student_row;

CLOSE get_student;

p_name

:= student_row。

  name;

p_dob

:= student_row。dob;

p_gender

:= student_row。gender;。

0
回帖

构成全数Portal情况的组件列表有哪些呢? 期待您的回复!

取消