一个连接数据库出错的问题...

badbadjing 2003-10-18 03:18:25
一个连接数据库出错的问题...
编辑时出现如下错误:
Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial

程序如下:
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
public class testsql {
public testsql() {
try{
String ODBCName = "java:comp/env/jdbc/sqlserver";
Context ic = new InitialContext();
DataSource ds = (DataSource) ic.lookup(ODBCName);
Connection con = ds.getConnection();
Statement sqlStmt = con.createStatement();
}catch (Exception e)
{
System.out.println("" + e.getMessage());
}
}
public static void main(String[] args) {
testsql testsql1 = new testsql();
}
}
...全文
50 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
badbadjing 2003-11-29
  • 打赏
  • 举报
回复
没人会啊????
hoasem 2003-11-26
  • 打赏
  • 举报
回复
up
badbadjing 2003-11-25
  • 打赏
  • 举报
回复
<Host name="www.test.com" debug="5" appBase="e:\testweb" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="" debug="5" reloadable="true" crossContext="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="cust1_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>



<Resource name="jdbc/sqlserver" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/sqlserver">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<!-- Maximum number of dB connections in pool. Make sure you configure your mysqld max_connections large enough to handle all of your db connections. Set to 0 for no limit. -->
<parameter>
<name>maxActive</name>
<value>30</value>
</parameter>
<!-- Maximum number of idle dB connections to retain in pool.Set to 0 for no limit. -->
<parameter>
<name>maxIdle</name>
<value>5</value>
</parameter>
<!-- Maximum time to wait for a dB connection to become available in ms, in this example 10 seconds. An Exception is thrown if this timeout is exceeded. Set to -1 to wait indefinitely. -->
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>
<parameter>
<name>username</name>
<value>test</value>
</parameter>
<parameter>
<name>password</name>
<value>test</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:microsoft:sqlserver://127.0.0.1:1433;databaseName=Test</value>
</parameter>
<parameter>
<name>driverName</name>
<value>jdbc:microsoft:sqlserver://127.0.0.1:1433;databaseName=Test</value>
</parameter>
<!--To configure a DBCP DataSource so that abandoned dB connections are removed and recycled add the following paramater to the ResourceParams configuration for your DBCP DataSource Resource:
When available db connections run low DBCP will recover and recyle any abandoned dB connections it finds. The default is false. -->
<parameter>
<name>removeAbandoned</name>
<value>true</value>
</parameter>
<!--Use the removeAbandonedTimeout parameter to set the number of seconds a dB connection has been idle before it is considered abandoned
The default timeout for removing abandoned connections is 300 seconds-->
<parameter>
<name>removeAbandonedTimeout</name>
<value>60</value>
</parameter>
</ResourceParams>
</Context>
</Host>
badbadjing 2003-11-25
  • 打赏
  • 举报
回复
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
public class testsql {
public testsql() {
try{
String ODBCName = "java:comp/env/jdbc/sqlserver";
Context ic = new InitialContext();
DataSource ds = (DataSource) ic.lookup(ODBCName);
Connection con = ds.getConnection();
Statement sqlStmt = con.createStatement();
ResultSet rs=sqlstmt.executeQuery("select * from pubt ");
}catch (Exception e)
{
System.out.println("" + e.getMessage());
}
}
public static void main(String[] args) {
testsql testsql1 = new testsql();
}
}
badbadjing 2003-11-12
  • 打赏
  • 举报
回复
数据库的配置在tomcat里写好了呀。。
hongweiyuen8663 2003-10-29
  • 打赏
  • 举报
回复
如果你用的是tomcat那你的把你的数据库的配置在tomcat里写好呀。
例如:用weblogic 做EJB (实体bean)的时候你首先的在weblogica里配制好数据库,然后你才能做呀
lcz022 2003-10-29
  • 打赏
  • 举报
回复
Need to specify class name in environment or system property
可能是要设一下环境变量。
ccccffff 2003-10-29
  • 打赏
  • 举报
回复
up下
badbadjing 2003-10-29
  • 打赏
  • 举报
回复
没有啊,我用tomcat的....
zhanghuazhanghome 2003-10-23
  • 打赏
  • 举报
回复
你server(eg:weblogic)启动了吗?从代码看是没有错误的
zhanghuazhanghome 2003-10-18
  • 打赏
  • 举报
回复
看不出来
黑马 2003-10-18
  • 打赏
  • 举报
回复
我也想知道,一个朋友的程序也是这个错误:(

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧