本人不是学JAVA的,但是给我了一个网站是JSP做的,里面有关连接数据库、获取数据源的我不懂,在页面里面有这么一行代码 : ds = (DataSource)initialcontext.lookup("java:comp/env/jdbc/ejnqdbcon");大概意思我看就是把数据源赋给 ds 了,但是我不懂后面的是什么意思,括号里的是什么意思。我怎么找到括号里面"ejnqdbcon"的位置。
initialcontext.lookup 是什么方法?
initialcontext.lookup 是什么方法?
F:\Tomcat\apache-tomcat-6.0.16\conf找到context.xml文件,打开找到<Resource.........name="这里就是那个名"
就是让你找下路径
jdbc 数据库连接池
我的QQ54025782,
我现在的问题是:网站源代码拿到手了,数据库也装好了(SQL Server 2005),可是网站还是跑不起来,网站页面出来了,可是没有任何数据被读取。我现在就是怀疑是数据库连接的问题。网站主页面index.jsp有这样的代码:<jsp:useBean id="db" scope="page" class="mydb.ejnqdb" />.........<%
String weather="";
ResultSet rs=null;
rs=db.executeQuery("select top 1 * from weather");
if (rs!=null){
if (rs.next()) weather=rs.getString("memo");
rs.close();
}
%>
以下是C:\Tomcat 5.0\webapps\ejnq\WEB-INF\classes\mydb\ejnqdb.class 文件反编译后的代码:
package mydb;import java.io.PrintStream;
import java.sql.*;
import javax.naming.InitialContext;
import javax.sql.DataSource;public class ejnqdb
{ private DataSource ds;
private ResultSet rs;
private PreparedStatement stat;
private Connection con;
private Statement stmt; public ejnqdb()
throws Exception
{
ds = null;
rs = null;
stat = null;
con = null;
stmt = null;
InitialContext initialcontext = new InitialContext();
if(initialcontext == null)
{
throw new Exception("No Context");
} else
{
ds = (DataSource)initialcontext.lookup("java:comp/env/jdbc/ejnqdbcon");
return;
}
} public void closeCon()
{
try
{
if(rs != null)
{
rs.close();
rs = null;
}
}
catch(Exception exception)
{
exception.printStackTrace();
}
try
{
if(stat != null)
{
stat.close();
stat = null;
}
}
catch(Exception exception1)
{
exception1.printStackTrace();
}
try
{
if(stmt != null)
{
stmt.close();
stmt = null;
}
}
catch(Exception exception2)
{
exception2.printStackTrace();
}
try
{
if(con != null)
{
con.close();
con = null;
}
}
catch(Exception exception3)
{
exception3.printStackTrace();
}
} public ResultSet executeQuery(String s)
{
try
{
if(con == null)
{
con = ds.getConnection();
}
stat = con.prepareStatement(s, 1005, 1008);
rs = stat.executeQuery();
}
catch(SQLException sqlexception)
{
System.err.println("mydb.executeQuery:" + sqlexception.getMessage());
}
return rs;
} public int executeUpdate(String s)
{
int i = 0;
try
{
if(con == null)
{
con = ds.getConnection();
}
stmt = con.createStatement();
i = stmt.executeUpdate(s);
}
catch(SQLException sqlexception)
{
System.err.println("mydb.executeQuery:" + sqlexception.getMessage());
}
return i;
} public PreparedStatement getPreparedStatement(String s)
{
try
{
if(con == null)
{
con = ds.getConnection();
}
stat = con.prepareStatement(s);
}
catch(SQLException sqlexception)
{
System.err.println("mydb.executeQuery:" + sqlexception.getMessage());
}
return stat;
} public int getCount()
{
if(rs == null)
{
return 0;
}
int i = 0;
try
{
int j = rs.getRow();
rs.last();
i = rs.getRow();
rs.beforeFirst();
rs.relative(j);
}
catch(SQLException sqlexception)
{
System.err.println("mydb.java:" + sqlexception.getMessage());
}
return i;
}
}请高手帮帮我,把网站跑起来。
如果是tomcat6.0的话你可以查看下conf下面的server.xml之后再对照着web.xml
可以尝试着去理解下
或者用普通的连接数据库的方法也可以
把这些东东去掉就可以了
不过性能差一些。。