日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

.net webservice studio调用方法传参_Oracle触发器调用webservice说明

發布時間:2025/3/20 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .net webservice studio调用方法传参_Oracle触发器调用webservice说明 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Oracle觸發器調用webservice說明

該文檔主要介紹oracle觸發器加載java代碼,在java代碼中調用一個webservice服務接口的測試例子。

1. 測試環境(本測試用例使用的環境)

· Oracle版本:Release 10.2.0.1.0

· Tomcat版本:apache-tomcat-7.0.63

2. Webservice服務器

使用axis2創建一個測試用的webservice服務器。

服務器配置:

1) 把附件中的[axis2.war]拷貝到tomcat路徑下的webapps。我的是在C:apache-tomcat-7.0.63webapps。啟動tomcat,axis2.war會自動解壓。

2) 把附件中的[test.aar]文件拷貝到解壓后的文件路徑axis2WEB-INFservices下面。我的是在C:apache-tomcat-7.0.63webappsaxis2WEB-INFservices。

3) 這樣webservice服務器就配置好了。

說明:test.aar文件就是webservice測試服務器代碼編譯成的。使用的是axis2 Service Archiver插件編譯而成。插件如下:

服務器代碼如下:

3. Java代碼

Java端代碼說明:由于java代碼需要加載到oracle中,而oracle10g使用的jdk版本為1.4。因此java端代碼只能使用1.4版本的jdk支持的api。此處測試代碼用的是axis調用webservice。

說明:下列代碼中ulr=?的地址需要自行修改,根據自己tomcat端口調整。

3.1代碼如下

文件名為Main.java

import java.rmi.RemoteException;

import javax.activation.DataHandler;

import javax.xml.namespace.QName;

import javax.xml.rpc.ServiceException;

import org.apache.axis.client.Call;

import org.apache.axis.client.Service;

import org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory;

import org.apache.axis.encoding.ser.JAFDataHandlerSerializerFactory;

public class Main {

public static void service(String name) {

String url = "http://localhost:8800/axis2/services/test/simpleMethod";

Service service = new Service();

Call call;

String vstr ;

try {

call = (Call) service.createCall();

QName qn = new QName("ns1:DataHandler", "DataHandler");

call.setTargetEndpointAddress(url);

call.setOperationName(new QName("http://test", "simpleMethod"));

call.registerTypeMapping(DataHandler.class, qn,

JAFDataHandlerSerializerFactory.class,

JAFDataHandlerDeserializerFactory.class);

vstr = (String)call.invoke(new Object[] {name});

System.out.println(vstr);

} catch (ServiceException e) {

e.printStackTrace();

} catch (RemoteException e) {

e.printStackTrace();

}

}

}

3.2所需jar包

為了能正常運行上述java代碼,需要在oracle中加載兩個axis的jar包,分別為:axis.jar,commons-discovery-0.2.jar。

1)將附件中的axis.jar,commons-discovery-0.2.jar兩個jar包拷貝到oracle路徑.. sqljlib下。我的oracle路徑是:F:oracleproduct10.2.0db_1sqljlib。根據oracle安裝路徑自行修改。

2)加載axis.jar,commons-discovery-0.2.jar到oracle中

在cmd窗口中,切換到F:oracleproduct10.2.0db_1sqljlib下,運行下列指令:

loadjava -u system/oracle -r -v -f -genmissing -s -grant public axis.jar commons-discovery-0.2.jar

system/oracle:數據庫用戶名/密碼

指令執行完之后,顯示:

3)加載java文件到oracle中

在cmd中運行下列指令:

loadjava -r -f -o -user system/oracle@orcl f:Main.java

4)至此,java文件被成功加載到oracle中了。

4. 存儲過程

打開oralce自帶的sqlplus工具,創建存儲過程并調用java代碼。

create or replace procedure service(name varchar2) as language java name 'Main.service(java.lang.String)';

/

如下圖:

賦權限:

在sqlplus中用超級管理員登錄,給system用戶賦權限。

conn /as sysdba

exec dbms_java.grant_permission( 'SYSTEM','SYS:java.lang.RuntimePermission', 'createClassLoader', '' );

commit;

exec dbms_java.grant_permission( 'SYSTEM','SYS:java.lang.RuntimePermission', 'getClassLoader', '' );

commit;

exec dbms_java.grant_permission( 'SYSTEM','SYS:java.net.SocketPermission', 'localhost', 'resolve' );

commit;

exec dbms_java.grant_permission( 'SYSTEM', 'SYS:java.net.SocketPermission', '127.0.0.1:8800', 'connect,resolve' );

commit;

如下圖:

5. Oracle觸發器

創建一個基于wjq.operator表(我的數據庫中的一個表),每行數據有更新的觸發器,并調用存儲過程,如下:

在sqlplus中執行,用system用戶登錄:

CREATE OR REPLACE TRIGGER trigger_update

before update

ON wjq.operator

FOR EACH ROW

BEGIN

service('張三');

END ;

/

如下圖:

6. 測試

在sqlplus中測試,執行更新語句操作。

wjq.operator中只有兩行數據:

執行update wjq.operator set sex='1';時所有的數據都要更新,觸發器被執行兩次。

執行update wjq.operator set sex='1' where sex ='2';時有一條數據需要被更新,觸發器被執行一次。

如下圖:

總結

以上是生活随笔為你收集整理的.net webservice studio调用方法传参_Oracle触发器调用webservice说明的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久性爱视频网站 | 国产又黄又爽又色 | 日本不卡一区在线 | 青青草国产成人99久久 | 色91精品久久久久久久久 | 一区二区不卡在线 | 日本草草视频 | 色老头一区二区三区 | 亚洲午夜免费 | 国产人妻人伦精品1国产 | 激情文学亚洲色图 | 毛片视频免费观看 | 国产美女黄网站 | 91久久爽久久爽爽久久片 | 国产伦精品视频一区二区三区 | 色就操| 呦呦av | 伊人网在线免费观看 | 在线观看 亚洲 | 人人插人人澡 | 综合色亚洲 | 青青草逼 | 中文亚洲欧美 | 免费视频99 | 波多野结衣精品视频 | 天天干少妇 | 97爱爱视频| 羞羞羞网站 | 两性av | 精品视频无码一区二区三区 | 久久久成人精品一区二区三区 | 免费簧片在线观看 | av网页在线 | 精品欧美一区二区在线观看 | 激情网站在线观看 | 午夜a级片 | 哪个网站可以看毛片 | 中文字幕视频一区二区 | 久久久国产精品黄毛片 | 日韩精品av一区二区三区 | 手机av在线网 | 一区二区三区四区高清视频 | av片网| 欧美人体做爰大胆视频 | 国产综合精品一区二区三区 | 羞羞涩涩视频 | 欧美一级无毛 | 国产九九热视频 | 欧美一级爽aaaaa大片 | 拔插拔插海外华人免费视频 | 国产精品二区在线 | 五月激情久久 | 男男巨肉啪啪动漫3d | 国产欧美在线播放 | sm捆绑调教视频 | 国模大尺度视频 | 操bbbbb| 欧美日韩亚洲成人 | 日韩视频一区二区三区在线播放免费观看 | wwwxxxx欧美 | 一区免费| 91视频社区 | 亚洲一区视频在线 | 成人免费片 | 精品一区二区无码 | 无码一区二区三区在线观看 | 亚洲国产97 | 免费日韩在线视频 | 国产伦精品一区二区. | 精品国产一区二区三区久久久蜜臀 | 野外做受又硬又粗又大视频√ | 午夜精产品一区二区在线观看的 | 久久在线中文字幕 | 色网站视频 | 91精品一区 | 色欲狠狠躁天天躁无码中文字幕 | 免费一级黄色 | 张柏芝54张无删码视频 | 丁香花高清在线观看完整动漫 | 成人无码久久久久毛片 | 日本熟妇毛耸耸xxxxxx | 成年免费视频黄网站在线观看 | 久草资源网 | 国产精品一区二区三区线羞羞网站 | 亚洲aav| 国产精品久久99 | 国产黄在线 | 国产精品影音先锋 | 亚洲一区二区三区精品视频 | 日韩欧美成人一区二区三区 | 九热这里只有精品 | 国产女教师bbwbbwbbw | 亚洲天堂2024 | 免费午夜视频 | 成人在线视频网 | 午夜宅男在线 | 在线国产网站 | 影音先锋在线看片资源 | 激情五月亚洲 |