免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1760 | 回复: 3
打印 上一主题 下一主题

大侠,救急呀,一数据库连接问题! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-02-07 09:55 |只看该作者 |倒序浏览
程序如下:

import java.sql.*;
import java.awt.*;
import java.io.*;
import java.util.*;

public class JdbcApplet extends java.applet.Applet
{

  static final String connect_string =
                  "jdbcracle:thin:test/test@192.168.0.1:1521:test";

  static final String query = "select 'Hello JDBC: ' || to_char(sysdate,'YYYYMMDD') from dual";
  

  Button execute_button;

  TextArea output;

  Connection conn;

  public void init ()
  {
    this.setLayout (new BorderLayout ());
    Panel p = new Panel ();
    p.setLayout (new FlowLayout (FlowLayout.LEFT));
    execute_button = new Button ("Hello JDBC";
    p.add (execute_button);
    this.add ("North", p);
    output = new TextArea (10, 60);
    this.add ("Center", output);
  }

  public boolean action (Event ev, Object arg)
  {
    if (ev.target == execute_button)
    {
      try
      {

        if (conn == null)
        {
    DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver());

          output.appendText ("Connecting to " + connect_string + "\n";
          conn = DriverManager.getConnection (connect_string);
          output.appendText ("Connected\n";
        }

        Statement stmt = conn.createStatement ();

        output.appendText ("Executing query " + query + "\n";
        ResultSet rset = stmt.executeQuery (query);

        while (rset.next ())
          output.appendText (rset.getString (1) + "\n";

        output.appendText ("done.\n";
      }
      catch (Exception e)
      {
        output.appendText (e.getMessage () + "\n";
      }
      return true;
    }
    else
      return false;
  }
}

运行报:
Connecting to jdbcracle:thin:test/test@192.168.0.1:1521:test
access denied (java.net.SocketPermission 192.168.0.1:1521 connect,resolve)

论坛徽章:
0
2 [报告]
发表于 2004-02-07 11:16 |只看该作者

大侠,救急呀,一数据库连接问题!

APPLET 小程序!!!!  是不允许访问本地资源的!!!

就更不允许访问数据库了!!!!  

如果要!访问资源要设置JAVA 安全属性!! 但也只能够访问本地文件!!
数据库照样不允许!!

论坛徽章:
0
3 [报告]
发表于 2004-02-09 03:13 |只看该作者

大侠,救急呀,一数据库连接问题!

别用applet.

论坛徽章:
0
4 [报告]
发表于 2004-02-09 16:36 |只看该作者

大侠,救急呀,一数据库连接问题!

原帖由 "swpcute" 发表:
APPLET 小程序!!!!  是不允许访问本地资源的!!!

就更不允许访问数据库了!!!!  

如果要!访问资源要设置JAVA 安全属性!! 但也只能够访问本地文件!!
数据库照样不允许!!


设置对了权限,是可以访问数据库的。
只不过,楼主需要在每一个要运行此applet的客户机创建策略文件mypolicy,内容如下

  1. grant {
  2.   permission java.net.SocketPermission "192.168.0.1:1521", "connect, resolve";
  3. };
复制代码

放在当前用户的主目录下
然后修改${JRE_HOME}/lib/security/java.security文件

  1. policy.url.1=file:${java.home}/lib/security/java.policy
  2. policy.url.2=file:${user.home}/.java.policy
复制代码
下添加一行
  1. policy.url.3=file:${user.home}/mypolicy
复制代码
,这样applet就可以访问数据库了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP