function来调用javasource;如下:
create or replace function function中的方法名( m_weixinid in varchar2,
m_mobile in varchar2,
m_note in varchar2)
return varchar2 as
language java name 'Oracle中Java sources下类名.方法名(java.lang.String,java.lang.String,java.lang.String) return java.lang.String';
javasource中调用模板消息:有两种方式一种是 post、一种是get方式;
create or replace and compile java source named 类名 as
import java.io.*;
import java.net.*;
import java.lang.*;
import oracle.sql.*;
public class 类名 extends Object
{
public static String 方法名(String 参数) {
String result = "";
HttpURLConnection conn = null;
try{
String data="接口地址参数="+传过来的参数;
//判断传过来的参数是否为空
if(传过来的参数.equals("null")){
data+="&接口地址参数=";
}else{
data+="&接口地址参数="+传过来的参数;
}
...
data +="&接口地址参数="+URLEncoder.encode(传过来的参数,"UTF-8");
URL url = new URL("接口地址");
conn =(HttpURLConnection)url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
byte[] bypes = data.getBytes("UTF-8");
conn.getOutputStream().write(bypes); //输入参数
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
rd.readLine();
rd.close();
}catch(Exception e){
result =e.getMessage();
}finally{
if(conn!=null){
conn.disconnect();
conn=null;
}
}
}
}
create or replace and compile java source named comm_http_get as
import java.io.*;
import java.net.*;
import java.lang.*;
import oracle.sql.*;
public class comm_http_get extends Object
{
public static String comm_http_get(String m_url)
{
String result = "";
HttpURLConnection conn = null;
try
{
URL url = new URL(m_url);
conn = (HttpURLConnection)url.openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("GET");
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
rd.readLine();
rd.close();
}
catch (Exception e)
{
result = e.getMessage();
}finally{
if(conn!=null){
conn.disconnect();
conn=null;
}
}
return result;
}
}
有没有更加清晰一点,希望能帮到需要的人。