锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
2. chemwriter錛岃繖涓湅璧鋒潵涔熶笉閿欍傦紙鍟嗕笟錛?br />
3. ChemAxon鍏徃鐨凪arvin4JS錛屼釜浜轟粠闈炰笓涓氳搴︽劅瑙夌敤璧鋒潵姣旇緝楹葷儲銆傦紙鍟嗕笟錛?br />
4. 姣旇緝鍑哄悕鐨凧ME鐨勫厔寮烰SME錛屽厤璐癸紝濂界敤錛屽姛鑳藉急浜嗙偣鑰屽凡銆備釜浜烘瘮杈冨枩嬈€傦紙鍏嶈垂錛?br />
5. GGA鐨?span style="color: #343030; font-family: Verdana, Geneva, Tahoma, sans-serif; font-size: 12px; line-height: 17px; background-color: #ffffff;">Ketcher錛屽厤璐癸紝浣跨敤鏈夌偣椹┈铏庤檸銆?/span>錛堝厤璐癸級
]]>
鏈夋病鏈変漢鍏蟲敞榪欎釜琛屼笟鐨勭棝鏍瑰憿錛熷埌鏃舵槸浠涔堬紝濡備綍瑙e喅銆?img src ="http://www.tkk7.com/rain1102/aggbug/419451.html" width = "1" height = "1" />
]]>
]]>
]]>
1錛屼互鐢靛瓙鐥呭巻涓烘牳蹇冪殑鏁板瓧鍖?span href="tag.php?name=%E5%8C%BB%E9%99%A2" style="word-wrap: break-word; line-height: normal; cursor: pointer; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #ff0000; white-space: nowrap; ">鍖婚櫌 2錛屼互鐢靛瓙鍋ュ悍妗f涓烘牳蹇冪殑鏁板瓧鍖栫ぞ鍖哄拰涔¢晣鍗敓闄?br style="word-wrap: break-word; line-height: normal; " />3錛屼互淇℃伅鍏變韓涓轟腑蹇冪殑鍖哄煙鏁版嵁涓績銆佸叏鍥介氱敤鐨?#8220;鍖葷枟鍗?#8221;鍜屽悇綰ф斂搴?span href="tag.php?name=%E7%AE%A1%E7%90%86" style="word-wrap: break-word; line-height: normal; cursor: pointer; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #ff0000; white-space: nowrap; ">綆$悊騫沖彴 4錛屼互浜轟負鏈殑鍏紬鍖葷枟鍗敓鏈嶅姟騫沖彴 5錛屼互鍥藉鍗敓鏁板瓧鍖栦負鐩爣鐨?span href="tag.php?name=%E6%8A%80%E6%9C%AF" style="word-wrap: break-word; line-height: normal; cursor: pointer; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #ff0000; white-space: nowrap; ">鎶鏈?/span>鏍囧噯瑙勮寖銆佹硶瑙勬斂絳栧拰榪愯鏈哄埗 |
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
//鐢熸垚絳夋瘮渚嬮珮璐ㄩ噺緙╃暐鍥?br />public class ThumbnailUtil {
private static int width;
private static int height;
private static int scaleWidth;
static double support = (double) 3.0;
static double PI = (double) 3.14159265358978;
static double[] contrib;
static double[] normContrib;
static double[] tmpContrib;
static int startContrib, stopContrib;
static int nDots;
static int nHalfDots;
public static void saveImage(String fromFileStr, String saveToFileStr, int formatWidth, int formatHeight) throws Exception {
File saveFile = new File(saveToFileStr);
File fromFile = new File(fromFileStr);
saveImage(fromFile, saveFile, formatWidth, formatHeight);
}
public static void saveImage(File fromFile , File saveFile, int formatWidth, int formatHeight) throws Exception {
BufferedImage srcImage;
srcImage = javax.imageio.ImageIO.read(fromFile); // construct image
int imageWidth = srcImage.getWidth(null);
int imageHeight = srcImage.getHeight(null);
int changeToWidth = 0;
int changeToHeight = 0;
if (formatWidth > 0 && formatHeight > 0) {
changeToWidth = formatWidth;
changeToHeight = formatHeight;
} else {
if (imageWidth > 0 && imageHeight > 0) {
if (imageWidth / imageHeight >= formatWidth / formatHeight) {
if (imageWidth > formatWidth) {
changeToWidth = formatWidth;
changeToHeight = (imageHeight * formatWidth) / imageWidth;
} else {
changeToWidth = imageWidth;
changeToHeight = imageHeight;
}
} else {
if (imageHeight > formatHeight) {
changeToHeight = formatHeight;
changeToWidth = (imageWidth * formatHeight) / imageHeight;
} else {
changeToWidth = imageWidth;
changeToHeight = imageHeight;
}
}
}
}
srcImage = imageZoomOut(srcImage, changeToWidth, changeToHeight);
ImageIO.write(srcImage, "JPEG", saveFile);
}
public static BufferedImage imageZoomOut(BufferedImage srcBufferImage, int w, int h) {
width = srcBufferImage.getWidth();
height = srcBufferImage.getHeight();
scaleWidth = w;
if (DetermineResultSize(w, h) == 1) {
return srcBufferImage;
}
CalContrib();
BufferedImage pbOut = HorizontalFiltering(srcBufferImage, w);
BufferedImage pbFinalOut = VerticalFiltering(pbOut, h);
return pbFinalOut;
}
/**
* 鍐沖畾鍥懼儚灝哄
*/
private static int DetermineResultSize(int w, int h) {
double scaleH, scaleV;
scaleH = (double) w / (double) width;
scaleV = (double) h / (double) height;
// 闇瑕佸垽鏂竴涓媠caleH錛宻caleV錛屼笉鍋氭斁澶ф搷浣?br /> if (scaleH >= 1.0 && scaleV >= 1.0) {
return 1;
}
return 0;
}
private static double Lanczos(int i, int inWidth, int outWidth, double Support) {
double x;
x = (double) i * (double) outWidth / (double) inWidth;
return Math.sin(x * PI) / (x * PI) * Math.sin(x * PI / Support)
/ (x * PI / Support);
}
private static void CalContrib() {
nHalfDots = (int) ((double) width * support / (double) scaleWidth);
nDots = nHalfDots * 2 + 1;
try {
contrib = new double[nDots];
normContrib = new double[nDots];
tmpContrib = new double[nDots];
} catch (Exception e) {
System.out.println("init contrib,normContrib,tmpContrib" + e);
}
int center = nHalfDots;
contrib[center] = 1.0;
double weight = 0.0;
int i = 0;
for (i = 1; i <= center; i++) {
contrib[center + i] = Lanczos(i, width, scaleWidth, support);
weight += contrib[center + i];
}
for (i = center - 1; i >= 0; i--) {
contrib[i] = contrib[center * 2 - i];
}
weight = weight * 2 + 1.0;
for (i = 0; i <= center; i++) {
normContrib[i] = contrib[i] / weight;
}
for (i = center + 1; i < nDots; i++) {
normContrib[i] = normContrib[center * 2 - i];
}
}
// 澶勭悊杈圭紭
private static void CalTempContrib(int start, int stop) {
double weight = 0;
int i = 0;
for (i = start; i <= stop; i++) {
weight += contrib[i];
}
for (i = start; i <= stop; i++) {
tmpContrib[i] = contrib[i] / weight;
}
}
private static int GetRedValue(int rgbValue) {
int temp = rgbValue & 0x00ff0000;
return temp >> 16;
}
private static int GetGreenValue(int rgbValue) {
int temp = rgbValue & 0x0000ff00;
return temp >> 8;
}
private static int GetBlueValue(int rgbValue) {
return rgbValue & 0x000000ff;
}
private static int ComRGB(int redValue, int greenValue, int blueValue) {
return (redValue << 16) + (greenValue << 8) + blueValue;
}
// 琛屾按騫蟲護娉?br /> private static int HorizontalFilter(BufferedImage bufImg, int startX, int stopX,
int start, int stop, int y, double[] pContrib) {
double valueRed = 0.0;
double valueGreen = 0.0;
double valueBlue = 0.0;
int valueRGB = 0;
int i, j;
for (i = startX, j = start; i <= stopX; i++, j++) {
valueRGB = bufImg.getRGB(i, y);
valueRed += GetRedValue(valueRGB) * pContrib[j];
valueGreen += GetGreenValue(valueRGB) * pContrib[j];
valueBlue += GetBlueValue(valueRGB) * pContrib[j];
}
valueRGB = ComRGB(Clip((int) valueRed), Clip((int) valueGreen),
Clip((int) valueBlue));
return valueRGB;
}
// 鍥劇墖姘村鉤婊ゆ嘗
private static BufferedImage HorizontalFiltering(BufferedImage bufImage, int iOutW) {
int dwInW = bufImage.getWidth();
int dwInH = bufImage.getHeight();
int value = 0;
BufferedImage pbOut = new BufferedImage(iOutW, dwInH,
BufferedImage.TYPE_INT_RGB);
for (int x = 0; x < iOutW; x++) {
int startX;
int start;
int X = (int) (((double) x) * ((double) dwInW) / ((double) iOutW) + 0.5);
int y = 0;
startX = X - nHalfDots;
if (startX < 0) {
startX = 0;
start = nHalfDots - X;
} else {
start = 0;
}
int stop;
int stopX = X + nHalfDots;
if (stopX > (dwInW - 1)) {
stopX = dwInW - 1;
stop = nHalfDots + (dwInW - 1 - X);
} else {
stop = nHalfDots * 2;
}
if (start > 0 || stop < nDots - 1) {
CalTempContrib(start, stop);
for (y = 0; y < dwInH; y++) {
value = HorizontalFilter(bufImage, startX, stopX, start,
stop, y, tmpContrib);
pbOut.setRGB(x, y, value);
}
} else {
for (y = 0; y < dwInH; y++) {
value = HorizontalFilter(bufImage, startX, stopX, start,
stop, y, normContrib);
pbOut.setRGB(x, y, value);
}
}
}
return pbOut;
}
private static int VerticalFilter(BufferedImage pbInImage, int startY, int stopY,
int start, int stop, int x, double[] pContrib) {
double valueRed = 0.0;
double valueGreen = 0.0;
double valueBlue = 0.0;
int valueRGB = 0;
int i, j;
for (i = startY, j = start; i <= stopY; i++, j++) {
valueRGB = pbInImage.getRGB(x, i);
valueRed += GetRedValue(valueRGB) * pContrib[j];
valueGreen += GetGreenValue(valueRGB) * pContrib[j];
valueBlue += GetBlueValue(valueRGB) * pContrib[j];
}
valueRGB = ComRGB(Clip((int) valueRed), Clip((int) valueGreen), Clip((int) valueBlue));
return valueRGB;
}
private static BufferedImage VerticalFiltering(BufferedImage pbImage, int iOutH) {
int iW = pbImage.getWidth();
int iH = pbImage.getHeight();
int value = 0;
BufferedImage pbOut = new BufferedImage(iW, iOutH,
BufferedImage.TYPE_INT_RGB);
for (int y = 0; y < iOutH; y++) {
int startY;
int start;
int Y = (int) (((double) y) * ((double) iH) / ((double) iOutH) + 0.5);
startY = Y - nHalfDots;
if (startY < 0) {
startY = 0;
start = nHalfDots - Y;
} else {
start = 0;
}
int stop;
int stopY = Y + nHalfDots;
if (stopY > (int) (iH - 1)) {
stopY = iH - 1;
stop = nHalfDots + (iH - 1 - Y);
} else {
stop = nHalfDots * 2;
}
if (start > 0 || stop < nDots - 1) {
CalTempContrib(start, stop);
for (int x = 0; x < iW; x++) {
value = VerticalFilter(pbImage, startY, stopY, start, stop,
x, tmpContrib);
pbOut.setRGB(x, y, value);
}
} else {
for (int x = 0; x < iW; x++) {
value = VerticalFilter(pbImage, startY, stopY, start, stop,
x, normContrib);
pbOut.setRGB(x, y, value);
}
}
}
return pbOut;
}
static int Clip(int x) {
if (x < 0)
return 0;
if (x > 255)
return 255;
return x;
}
}
1.灝忓己姣忓ぉ鍦ㄦ潙閲屾檭鎮狅紝鐖瑰鐪嬬潃鍙戞剚錛屽績鎯寵繖瀛╁瓙灝嗘潵鎬庝箞鍔炲憖錛涘皬鏄庢瘡鏃ラ兘鑻﹁璇椾功錛岀埗姣嶅枩鍦ㄥ績閲岋紝鏉戦噷浜洪兘璁ゅ畾浠栧繀鏈夊嚭鎭?br />2.閭e勾錛屽皬寮哄拰灝忔槑閮芥槸鍗佷節宀併傚皬寮鴻窡鐫鏉戦噷鐨勫鍑烘墦宸ワ紝鏉ュ埌浜嗛珮閫熷叕璺殑宸ュ湴錛屼繚搴曞伐璧勪笁鍗冨潡錛涘皬鏄庤冧笂浜嗕竴鎵閲嶇偣澶у錛岃鐨勬槸閬撹礬涓庢ˉ姊佷笓涓氾紝瀛﹁垂姣忓勾浜斿崈澶氥?br />3.閭e勾錛屽皬寮哄拰灝忔槑閮芥槸浜屽崄涓夊瞾銆傚皬寮虹殑鐖瑰緇欎粬璇翠釜宸у濡囷紝鏄偦鏉戠殑錛岀壒鍒搐鎯狅紱灝忔槑鍦ㄥぇ瀛﹂噷璋堜簡涓コ鏈嬪弸錛屾槸閭繪牎鐨勶紝寰堟湁鏂囧寲銆?br />4.閭e勾錛屽皬寮哄拰灝忔槑閮芥槸浜屽崄鍥涘瞾銆傚皬寮哄湪鑰佸緇撲簡濠氾紝鎶婂濡囧甫鍒板伐鍦頒笂錛屾潵緇欎粬媧楄。鍋氶キ錛屾仼鐖辨湁鍔狅紱灝忔槑緇堜簬澶у姣曚笟錛屾壘浜嗘柦宸ュ崟浣嶅伐浣滐紝璺熷コ鍙嬪垎灞呬袱鍦幫紝鏈濇濇毊鎯熾?
5.灝忓己姣忓ぉ寰堝揩涔愶紝涓嬩簡鐝氨娌′簨錛屽悆浜嗛キ鍜屽濡囨暎鏁f錛屾櫄涓婁究鍜屽伐鍙嬫墦楹誨皢鐪嬬數瑙嗭紱灝忔槑姣忓ぉ寰堝繖紕岋紝鐧藉ぉ璺戦亶宸ュ湴錛屾櫄涓婅繕鍋氳祫鏂欑敾鍥劇焊錛屽ソ涔呬笉瑙佺殑濂沖弸璺熶粬鍒嗘墜浜嗐?br />6.閭e勾錛屽皬寮哄拰灝忔槑閮芥槸浜屽崄鍏瞾銆傚皬寮烘敀涓嬩簡浜屽崄涓囷紝宸叉槸涓や釜濞冨▋鐨勭埞錛屽績鎯崇潃鍥炲鐩栨爧婕備寒鐨勬ゼ鎴匡紱灝忔槑榪囦簡涓駭鑱岀О錛岃繕鏄崟韜竴涓漢榪囷紝蹇冩兂鐫鍐嶅共鍑犲勾灝辨槸楂樼駭浜嗐?br />7.灝忓己鍦ㄥ啘鏉戣佸鐩栦簡涓ゅ眰灝忔ゼ錛岃淇緢婕備寒錛屽墿鐨勯挶涔頒簡涓緹ょ尓浠旓紝璁╁濡囧洖瀹剁鍦板吇鐚紱灝忔槑鍦ㄥ煄閲岃捶嬈句拱浜嗕竴濂楁柊鎴匡紝鎸夋彮涓夊崈澶氾紝鐖舵瘝緇欎粙緇嶄簡鏂板コ鏈嬪弸錛屽湪鍩庨噷涓婄彮寰堝皯瑙侀潰銆?br />8. 閭e勾錛屽皬寮哄拰灝忔槑閮芥槸涓夊崄涓宀併傚皬寮哄濡囦粠鑰佸鎵撶數璇濇潵璇達細灝忓己錛岀幇鍦ㄥ閲屾湁鎴挎湁瀛樻錛屽挶鍠傚杺鐚紝縐嶇鍦幫紝寰堝垢紱忎簡錛屽閲屼笉鑳芥病鏈夌敺浜猴紝浣犲揩鍥炴潵鍚э紱灝忔槑濯沖浠庡煄閲屾墦鐢佃瘽鏉ヨ錛氬皬鏄庯紝灝忓鐨勫熻璐硅鍗佷簲涓囧憿錛屽閲屾病鏈夊瓨嬈句簡錛屼綘鐪嬭兘涓嶈兘鎵懼叕鍙稿熺偣銆?
9.灝忓己鍚簡濯沖鐨勮瘽錛岀寮浜嗗伐鍦幫紝鍥炶佸璺熻佸﹩涓璧峰吇鐚紝鐓ч【鐖舵瘝灝忓錛涘皬鏄庡惉浜嗗瀛愮殑璇濓紝鏇村姫鍔涘伐浣滐紝鍘諱簡鍋忚繙鍙堣壈鑻︾殑宸ュ湴錛屽緢闅懼洖瀹朵竴嬈°?br />10.閭e勾錛屽皬寮哄拰灝忔槑閮芥槸涓夊崄浜斿瞾銆傜尓鑲変環鏍肩柉娑紝灝忓己鐨勪竴澶у湀鐚垚浜嗗疂璐濓紝涓騫磋禋浜嗗崄鍑犱竾錛涢氳揣鑶ㄨ儉涓ラ噸錛屽皬鏄庣殑鍏徃寰堥毦鎺ュ埌欏圭洰錛屽緢澶氫漢閮藉緟宀椾簡銆?br />11.閭e勾錛屽皬寮哄拰灝忔槑閮芥槸浜斿崄宀佷簡銆傚皬寮哄凡鏄笁涓瓩瀛愮殑鐖風埛錛屽ぉ澶╂檼鐫澶槼鎶界潃鏃辯儫鍦ㄦ潙閲岃漿鎮狅紱灝忔槑宸叉槸楂樼駭璺ˉ宸ョ▼甯堬紝澶╁ぉ欏剁潃澶槼鐨辯潃鐪夊ご鍦ㄥ伐鍦版鏌ャ?
12.閭e勾錛屽皬寮哄拰灝忔槑閮芥槸鍏崄宀佷簡銆傚皬寮鴻繃鍏崄澶у錛岃佷即璇達細涓瀹跺洟鍦嗗濂藉憖錛屽閲岀殑浜嬪氨璁╁▋浠搷蹇冨惂錛屽闈㈡湁鍟ュソ鐜╃殑鍦版柟鍜卞嚭鍘昏漿杞紱灝忔槑閫浼戞憜閰掑腑錛岄瀵艱錛氬洖瀹舵瓏鐫娌℃剰鎬濓紝榪旇仒鍥炲崟浣嶅仛鎶鏈【闂惂錛屽伐鍦頒笂鏈変粈涔堥棶棰樻偍緇欐寚瀵兼寚瀵箋?
13.灝忓己鐥呬簡涓鍦猴紝灝忓己鎷夌潃鑰佷即鐨勬墜璇達細鎴戞椿浜嗗揩涓冨崄宀佷簡錛屾湁鍎挎湁瀛欑殑錛岀煡瓚充簡錛涘皬鏄庣梾浜嗕竴鍦猴紝灝忔槑鎶氱潃濡誨瓙鐨勬墜璇達細鎴戝湪澶栧伐浣滃嚑鍗佸勾錛岃浣犲彈鑻︿簡錛屽涓嶈搗銆?
14.……鐢變簬闀挎湡浣撳姏鍔沖姩錛屽悆鐨勬槸鑷縐嶇殑鑿溿佸吇鐨勭尓錛屽皬寮鴻韓浣撲竴鐩村緢紜湕錛屾參鎱㈠氨鎭㈠浜嗐傜敱浜庨暱鏈熺啲澶滃姞鐝佸皬鏄庡枬閰掑簲閰佸伐鍦伴鍫傞キ鑿滀篃寰堝樊錛岃韓涓婅惤涓嬪緢澶氭瘺鐥咃紝寰堝揩灝卞幓涓栦簡銆?
15.鍏崄宀佺殑灝忓己韞插湪鏉戝ご鎶界潃鏃辯儫琚嬶紝鐪嬬潃榪滆繙鐨勫北錛涜繙榪滅殑灞變笂鏈変竴鐗囧叕澧擄紝灝忔槑宸插湪閭i噷闈欓潤鐫″幓錛涘皬寮哄湪闉嬪簳紓曠鐑熺伆錛屾媱鐫鎷愭潠绔欒搗韜紝鏈涗簡鏈涢偅鐗囧叕澧擄紝鑷█鑷鍦拌錛氬攭錛岄兘鏄竴杈堝瓙鍛……
璋ㄤ互姝ゅ悜宸ヤ綔鍦ㄥぇ鍩庡競錛屼粯鍑轟簡闈掓槬銆佺埍鎯呫佷翰鎯呯敋鑷崇敓鍛界殑浜恒?br />浜虹殑涓鐢熷緢鐭殏錛屽笇鏈涘ぇ瀹剁粰鑷繁澶氫竴浜涙椂闂達紝緇欏浜哄涓浜涘叧鐖?br />
1.楂楶R鍊肩珯鐐圭殑瀵煎叆閾炬帴
2.鍐呭鐩稿叧欏甸潰鐨勫鍏ラ摼鎺?/span>
3.瀵煎叆閾炬帴閿氭枃鏈腑鍖呭惈欏甸潰鍏抽敭璇?/span>
4.閿氭枃鏈瓨鍦ㄤ簬緗戦〉鍐呭涓?/span>
5.閿氭枃鏈懆鍥村嚭鐜扮浉鍏沖叧閿瘝
6.瀵煎叆閾炬帴瀛樺湪3涓湀浠ヤ笂
7.瀵煎叆閾炬帴鎵鍦ㄩ〉闈㈢殑瀵煎嚭閾炬帴灝戜簬100涓?/span>
8.瀵煎叆閾炬帴鏉ヨ嚜涓嶅悓IP鍦板潃
9.瀵煎叆閾炬帴鑷劧澧炲姞
10.閿氭枃鏈鏍峰寲錛堝錛孲EO鍜孲EO鍗佷竾涓負浠涔堬級
鍘熸枃鍦板潃錛?div style="display: inline-block; ">
Name | SMILES | Correct | FP | Triage | Before | After | Latest |
Propane | CCC | 65337 | 66352 | 42411 | 42.59 | 17.99 | 14.34 |
Selenium | [Se] | 246 | 995 | 225 | 0.80 | 0.83 | 0.52 |
Benzene | c1ccccc1 | 79426 | 79486 | 50893 | 72.69 | 27.56 | 20.29 |
Methane | C | 118519 | 118524 | 118511 | 61.29 | 5.47 | 4.25 |
Amido | NC=O | 25695 | 26975 | 14702 | 18.89 | 9.84 | 8.16 |
Methylbenzene | Cc1ccccc1 | 54529 | 56869 | 20490 | 54.76 | 35.58 | 25.90 |
Carboxy | OC=O | 33009 | 34369 | 17809 | 23.86 | 12.48 | 10.24 |
Chlorine | Cl | 19424 | 23318 | 19424 | 11.23 | 1.38 | 1.12 |
Cyclopropane | C1CC1 | 863 | 4358 | 484 | 8.24 | 7.78 | 5.02 |
Biphenyl | c1ccccc1c2ccccc2 | 2967 | 5142 | 146 | 21.94 | 21.65 | 11.44 |
Dopamine | NCCc1ccc(O)c(O)c1 | 829 | 913 | 23 | 1.85 | 2.09 | 1.47 |
Sulfisoxazole | 7 | 8 | 3 | 0.50 | 0.88 | 0.51 | |
BetaCarotene | 2 | 16 | 1 | 0.48 | 0.68 | 0.58 | |
Nitrofurantoin | 0 | 0 | 0 | 0.42 | 0.58 | 0.52 |
棣栧厛鍦≒L/Sql涓垎鍒墽琛岋細
create or replace and compile java source named TestJava1 as
public class TestJava1
{
public static void test()
{
System.out.println("Hello");
}
}
create or replace procedure testJava1 as language java name 'TestJava1.test()';
---------------------------------------------------------------------------------------------------------
鍦⊿QLPlus涓?/span>
C:\Windows\System32>sqlplus nc5520110105/nc5520110105@192.168.10.87
SQL*Plus: Release 11.2.0.1.0 Production on Fri Apr 1 14:06:02 2011
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
SQL> set serveroutput on;
SQL> show serveroutput;
serveroutput ON SIZE UNLIMITED FORMAT WORD_WRAPPED
SQL> call dbms_java.set_output(2000);
Call completed.
SQL>
SQL> show serveroutput;
serveroutput ON SIZE UNLIMITED FORMAT WORD_WRAPPED
SQL> exec testJava1();
Hello
PL/SQL procedure successfully completed.
SQL>
---------------------------------------------------------------------------------------------------------
鍐嶇湅涓涓緥瀛愶細
鍦≒L/Sql涓墽琛岋細
--鐢↗ava緙栧啓Oracle瀛樺偍榪囩▼銆?/span>
create or replace and compile java source named test as
public class MyTest
{
public static void myProc(int a,int b,int[] ret){
ret[0]=a+b;
}
public static int myFunc(int a,int b){
return a+b;
}
}
--鍒涘緩瀛樺偍榪囩▼
create or replace procedure myProc(a in number, b in number, ret out number) as
language java name 'MyTest.myProc(int,int,int[])';
--鍒涘緩鍑芥暟
create or replace function myFunc(a in number, b in number) return number is
language java name 'MyTest.myFunc(int,int) return int';
鐒跺悗鍦⊿qlPlus涓祴璇曞瓨鍌ㄨ繃紼?#8212;—
SQL> set serveroutput on
SQL> DECLARE a INTEGER;
2 BEGIN
3 myProc(1, 2, a);
4 DBMS_OUTPUT.PUT_LINE(a);
5 END;
6 /
3
PL/SQL procedure successfully completed.
SQL> select myFunc(1,2) from dual;
MYFUNC(1,2)
-----------
3
SQL>