owl本体存入Oracle数据库

实验环境:
myeclipse8.5,jena2.6.4,oracle 10g r2;ojdbc6.jar;
code:





import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingExcep tion;
import java.sql.Connection;
import java.sql.SQLException;

import com.hp.hpl.jena.db.DBConnection;
import com.hp.hpl.jena.db.IDBConnection;
import com.hp.hpl.jena.db.RDFRDBException;
import com.hp.hpl.jena.db.impl.IRDBDriver;
import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.ModelFactory;
import com.hp.hpl.jena.rdf.model.ModelMaker;
import com.hp.hpl.jena.util.iterator.ExtendedIterator;

public class Onto2Database {
public static final String strDriver = "oracle.jdbc.driver.OracleDriver"; // path of driver class
       public static final String strURL = "jdbc:oracle:thin:@ip:port:database"; // URL of database
       public static final String strUser = "wsk"; // database user id
       public static final String strPassWord = "wsk123"; // database password
       public static final String strDB =   "Oracle"; // database type


       public static void main(String[] args){
             try{
                 // 创建一个数据库连接
              DBConnection conn = new DBConnection(strURL, strUser, strPassWord, strDB);
                    // 加载数据库驱动类,需要处理异常
                    try{
                            Class.forName(strDriver);

                    }catch(ClassNotFoundException e) {

                            System.out.println("ClassNotFoundException, Driver is not available...");

                    }
                    System.out.println(conn);
                 // 使用数据库连接参数创建一个模型制造器
                    ModelMaker maker = ModelFactory.createModelRDBMaker(conn);
                    
                    // 创建一个默认模型,命名为 MyOntology
                    Model defModel = maker.createModel("MyOntology");
                    
                    System.out.println("猪跑跑。。。");
                    // 准备需要存入数据库的本体文件,建立输入文件流
                    FileInputStream inputSreamfile = null;
                    try {
                            File file = new File("F://P3.owl");
                            inputSreamfile = new FileInputStream(file);
                    } catch (FileNotFoundException e) {
                            e.printStackTrace();
                            System.out.println("Ontology File is not available...");
                    }
                    InputStreamReader in = null;
                    try {
                            in = new InputStreamReader(inputSreamfile, "UTF-8");
                    } catch (UnsupportedEncodingExcep tion e) {
                            e.printStackTrace();
                    }
                 // 读取文件
                 defModel.read(in,null);
                 // 关闭输入流读取器
                 try {
                            in.close();
                    } catch (IOException e) {
                            e.printStackTrace();
                    }
                    // 执行数据转换,将本体数据存入数据库
                 defModel.commit();
                 // 关闭数据库连接
                    try {
                            conn.close();
                    } catch (SQLException e) {
                            e.printStackTrace();
                    }
             }catch(RDFRDBException e){
                    System.out.println("Exceptions occur...");
             }
       }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值