关于在UNIX或LINUX下使用文件数据库

类别:Java 点击:0 评论:0 推荐:

       网上空间很贵,我申请的是时代互联的空间,是JSP的在UNIX主机上,但是,时代互联的MySQL数据库空间好贵呀,本人的MONEY有限,所以, 前几天无意中发现,IBM的CloudsCape(大家可以到http://www-306.ibm.com/software/data/cloudscape/去下载,下载的时候要注册一个帐号,用自己的邮箱就可以了),我用了10.0的版本,发现它可以使用文件型的数据,实在是太好了,在多项试验之后,写一点心得,为后来使用Linux或UNIX主机的人提供一点帮助
1 下载一个Cloudscpae什么版都可以,安装在C盘下的C:\cloudscape,然后设好环境变量,主要有,
    CLOUDSCAPE_INSTALL 值为C:\cloudscape
    CLASSPATH 值为%CLOUDSCAPE_INSTALL%\lib\derby.jar;%CLOUDSCAPE_INSTALL%\lib\derbytools.jar;
2 下载一个IBM DB2® plug-ins for Eclipse (V1.0.2 beta) 也是在前面提到IBM站点上,有123M
    下面我就以我的程序为例作一个简单的说明
     2.1进入下载完成的Eclipse,找到,数据库资源管理器,右击,选择新建连接出现如图
输入任意的连接名比如 aaa; next
在相关位置输入如图所示选择Finish
建好以后,
可以看到Eclispe上有相关显示,这时候,右击

你就可以看到出现如图的菜单,
在Scrapbook中输入你的SQL语句,建表,我是建立了一个WEB.AAA表,,只有一个字段,无所谓是什么反正是一个测试.插入若干数据,然后,关闭你的数据库连接,(一定要关闭在Eclispe中否则在接下来的程序测试中会出错)
建立一个JAVA项目,将刚才ClassPath中的那两个Jar放入项目的外部Jar 中
代码(Aaa.java)
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * @author web
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public class Aaa {

 public static void main(String[] args) {
  try {
   Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
   String Url="jdbc:derby:E:/database/luo";
   Connection con=DriverManager.getConnection(Url);
   Statement sta=con.createStatement();
   ResultSet rs=sta.executeQuery("select * from WEB.AAA");
   while(rs.next())
   {
    System.out.println(rs.getString(1));
   }
   
  } catch (ClassNotFoundException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  
 }
}
编译后结果就出来了,,(这里我就不多说了)
2.2
在你的WEB空间下作两个文件,
要知道站点的目录,否则不知道如何用指向,对不对,
(test1.jsp)
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>

<body>
<form name="form1" method="post" action="test2.jsp">
  <input type="text" name="textfield">
  <input type="submit" name="Submit" value="提交">
</form>
</body>
</html>

(test2.jsp)
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>

<body>
<%
out.println(request.getRealPath("/"));
%>
</body>
</html>
然后,由test1.jsp提交后,你就可以看到站点的真实路径了,比如/home/goodghost/aaa
2.3
在你的站点根路径下建立一个目录WEB-INF/lib
将你的文件就是那两个Jar上传到这个目录下(WEB-INF/lib)
在站点目录下建立一个Database目录,将你的数据库文件,也就是E:/database/的整个luo传到你的Database目录下
然后建立一个
(test3.jsp)
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>

<body><%

  try {
   Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
   String Url="jdbc:derby:/home/goodghost/aaa/database/luo";//这个地方改成你的目录
   Connection con=DriverManager.getConnection(Url);
   Statement sta=con.createStatement();
   ResultSet rs=sta.executeQuery("select * from WEB.AAA");
   while(rs.next())
   {
    out.println(rs.getString(1));
   }
   
  } catch (ClassNotFoundException e) {
   // TODO Auto-generated catch block
   out.println(e);
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   out.println(e);
  }
  
 

%>

</body>
</html>

看看结果出来了吧,
呵,,爽了吧,
这样有150M的空间就可以使用150M的数据库了,,呵,,
然后,其它的Bean和Web的连接你会用了吧,我就不说了,有什么请联系我,[email protected]



本文地址:http://com.8s8s.com/it/it11323.htm