日期:2014-05-17  浏览次数:20683 次

新手问一个JSP数据库连接小问题 请高手指教
public static Connection getConn()throws SQLException
{
Connection conn = null; //声明数据库连接对象
Properties props = new Properties();//proper是java中的配置类他可以读取JAVA中的xml,也可以用put方法直接给配置附识
props.put("user", "user1");
props.put("password", "user1");//接口的用户名与密码
   
conn = DriverManager.getConnection("jdbc:derby:bbs", props);
return conn;
}

定义了一个DButil.java的javabean

这是其中的获得数据库连接的代码。当中这句jdbc:derby:bbs真心看不懂
我知道这里填的应该是DBURL 
在项目下面的lib里面有个derby.jar的包

------解决方案--------------------
Derby是Apache Software Foundation (ASF)的一个的孵化器项目。它是由IBM把自己的 Cloudscape(一种纯关系 Java 数据库)数据库作为开放源代码发布给 Apache Software Foundation (ASF)而建立的。
Cloudscape 是一种基于 Java 的、具有全面事务支持能力的关系数据库技术。它是一种纯嵌入式数据库,可以用在应用程序中,也可以作为更传统的客户机-服务器应用程序的数据库。它体积小,而且不需要数据库管理员;您只需编写应用程序。在需要时直接调用数据库,Cloudscape 就可以为您服务。

IBM Cloudscape 的未来商业版本都将以 Derby 代码为基础。

 Cloudscape 最有趣的一个用法就是作为一个 Java 数据存储,直接将数据库输入到 Java 应用程序中。我曾提到过,Cloudscape 数据库非常小。它只是一个 2MB 的 .jar 文件。有了这样一个 Java 数据库,当一个 Java 应用程序想要使用它时,根本不需要做任何工作,不需要进行任何管理。Java 应用程序只需发出 JDBC 调用,然后访问数据,之所以可以这样做,是因为数据库自始至终都是以一个 .jar 文件的形式存在。


Cloudscape 能满足新的和正在增长的市场的需求。作为面向 Java 的数据库,Cloudscape 的定位非常恰当,它很好地弥补了IBM的其他数据库:DB2 Universal Database、Informix Dynamic Server、DB2 Express 等等。又因为它是建立在开放标准基础上的,任何针对 Cloudscape 编写的应用程序都可以很容易地迁移到 DB2 UDB 和其他数据库上运行,这正是企业级的解决方案所需要的。

与其他开放源代码数据库相比,Derby 是独一无二的。它的确是功能丰富的关系型数据库。而且,它完全是免费提供的,没有商业许可限制。
------解决方案--------------------
不对吧,首先,你连接数据库还少了url,然后你说的看不懂的哪里又像driver又不像,给你看下我的吧。参考下。
connect.properties:这个配置文件里面放的是url,user,password,一般driver也是放在里面的,这个连接忘记了。
private static String proUrl="connect.properties";
private Properties pro;

public JdbcConnect() {
InputStream inputFile = super.getClass().getClassLoader().getResourceAsStream(proUrl);
pro=new Properties();
try {
pro.load(inputFile);
inputFile.close();
} catch (IOException e) {
e.printStackTrace();
}
}

public Connection jdbcConn() {
String url=pro.getProperty("url");
String name=pro.getProperty("user");
String pass=pro.getProperty("pass");
Connection c=null;
try{
Class.forName("com.mysql.jdbc.Driver");
c=DriverManager.getConnection(url,name,pass);

}catch(Exception e){
e.printStackTrace();
}
return c;
}

public String getKeyValue(String key){
if(pro.containsKey(key)){
return pro.getProperty(key);
}
return null;
}
------解决方案--------------------
楼上是在打广告么
url是数据库厂家搞的,就像上网用的url一样,你用就是了,管它什么看不看得懂
你上csdn还会问为什么网址是xxxxx么