如何在android中连接到oracle数据库?

时间:2017-01-10 14:24:21

标签: java android oracle ojdbc

我有一个oracle数据库,我需要访问信息,但我不能。我导入了OJDBC6驱动程序,我创建了类:

public class JDBC_ORA    {
     static String userName="XXX";
     static String password="X";
     static String server="192.168.X.X";

     public Connection con;

     public void conexion() {        
         try {          
             Class.forName("oracle.jdbc.driver.OracleDriver");
             con = DriverManager.getConnection("jdbc:oracle:thin:" + userName + "/" + password+ "@"+server);            

         } catch (ClassNotFoundException e) {
             e.printStackTrace();
         } catch (SQLException e) {
             e.printStackTrace();
         } 
     }


     public void cerrar (Connection con) {
         try {
             con.close();
         } catch (SQLException e) {
             e.printStackTrace();

         }
     }
}

我在主要活动中称之为:

 JDBC_ORA ora_con = new JDBC_ORA();   
    ora_con.conexion();
    try {
        Statement stmt = ora_con.con.createStatement();
        rset = stmt.executeQuery("select * from asdf where cid='"+ var + "'" );
        while (rset.next())
        {
            System.out.println(blablablabla);
            ora_con.con.commit();
        }
        stmt.close();
        ora_con.cerrar(ora_con.con);
    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

并始终得到此错误

Could not find class 'oracle.security.pki.OraclePKIProvider', referenced from method oracle.jdbc.driver.OracleDriver.<clinit>

Could not find class 'javax.management.MBeanServer', referenced from method oracle.jdbc.driver.OracleDriver.registerMBeans

有人能帮助我吗?

2 个答案:

答案 0 :(得分:2)

唐&#39;吨。如果这样做,您必须将密码放入应用程序。这意味着您的数据库完全不安全,任何拥有该应用程序副本的人都可以访问该数据库,并且可以对其进行5分钟的反编译。而是使用位于您的应用和数据库之间的Web服务。这样你就不需要密码就能离开你的机器了。

答案 1 :(得分:0)

最佳做法是使用用Java,.Net,PHP等编写的Web服务。然后,您需要将应用程序与您创建的Web服务连接起来。另一种方法是使用Oracle Database Mobile Server

您可以在Google上轻松找到如何创建网络服务。