Oracle调用Java代码
Oracle中可以调用Java的代码,一般通过两种方式进行调用,一个是直接将Java代码写在Oracle内部,另外一种是将编译好的class文件载入到Oracle中。
-A-
1、在SQLPlus中创建Oracle中的Java类与方法(方法必须是静态公有方法)
create or replace and compile java source named hello as
public class Hello {
public static String Message(String name) {
return "Hello, " + name;
}
}
2、创建函数调用载入Oracle中的Java方法。
create or replace function hello (name varchar2)
return varchar2
as
language java name 'Hello.Message(java.lang.String) return java.lang.String';
3、执行函数即可看到结果......
select hello('world!') from dual
-B-
1、创建要调用的Java代码,并编译成Class文件。被调用的方法依旧必须为静态公有方法
public class Number {
public static int getNumber() {
return 99;
}
}
2、用loadjava命令在控制台上将class文件加载到Oracle环境中
loadjava -u sys/sys@orcl -oci8 -verbose -grant scott -synonym -resolve -schema scott D:\Number.class
如果想要卸载已经加载的class的话,使用dropjava命令
dropjava -user sys/sys@orcl Number
如果提示如下信息,表示加载成功()
arguments: '-u' 'sys/sys@orcl' '-oci8' '-verbose' '-grant' 'scott' '-synonym' '-resolve' '-schema' 'scott' 'D:\Number.class'
identical: Number
granting : execute on class SCOTT.Number to scott
skipping : class SCOTT.Number
synonym : SCOTT.Number
Classes Loaded: 1
Resources Loaded: 0
Sources Loaded: 0
Published Interfaces: 0
Classes generated: 0
Classes skipped: 0
Synonyms Created: 1
Errors: 0
3、创建调用方法的方式同A方式的第2步
4、调用方法的方式同A方式的第3步
相关文档:
1、页面编码与后台类编码不一致。
2、后台类与数据库交互保持数据时产生乱码。解决方法:可以在驱动的url参数中指定。
3、读文件/流时产生乱码。解决方法:建议使用FileReader和FileWriter的父类:InputStreamReader/OutputStreamWriter,它们在构造函数中可以指定编码类型:InputStreamReader(InputStream in, Charset c ......
public boolean copy(String from, String to) {
boolean temp=true;
FileInputStream stream;
try {
stream = new FileInputStream(new File(from));
FileOutputStream bos = new FileOutputStream(to);
int bytesRea ......
在Java中,如果在对一个List或者Map排序,可以采用Collections的集合类中的sort方法来对List进行排序。至于map,可以使用TreeMap自动排序。
但以上排序仅仅是对英文排序时,才会正确,若果数据里面存在中文和英文时,那么排序就乱了。
现在我实现的方法是按照中文的拼音来排序。(网上,还有按笔画排序,在这里我就不一一 ......
网上转贴的Java正则很让人失望,一篇JavaScript正则集录被很多不负责任的人转来转去,并打上Java正则的标题,汗,真是烂人一堆。
// url正则
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegularExpressionTest {
public static void main(String[] args) {
Pa ......