在servlet中创建一个A类对象 A类主要内容:
class A{
private static final String RETRIEVE_STMT="SELECT * FROM yonghuxinxibiao WHERE xingming=? AND mima=?"
DataSource ds=null;
Connection connection=null;
ResultSet results=null;
PreparedStatement stmt=null;
yonghu yong=null;
try{
Context ctx=new InitialContext();
if(ctx==null)
{throw new RuntimeException("JNDI not found");}
ds=(DataSource)ctx.lookup("java:comp/env/jdbc/leagueDB");
if(ds==null)
{throw new RuntimeException("DataSource not found");}
connection=ds.getConnection();
stmt=connection.prepareStatement(RETRIEVE_STMT);
stmt.setString(1, year);
stmt.setString(2,season);
results=stmt.executeQuery();
}
A类中stmt=connection.prepareStatement(RETRIEVE_STMT);是如何找到数据库的

解决方案 »

  1.   

    tomcat自带的数据库连接池,你到server.xml里面好像有个context标签吧,里面有数据库相关配置
      

  2.   

    Tomcat 下的conf文件夹的文件context.xml已经配置了连接数据库的信息
    context.xml下的相关信息如下:
    <Resource name="jdbc/print" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="1000" username="sa" password="sa" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://localhost:1433;databaseName=数据库名">
    还有在web.xml也配置相关信息
      

  3.   

    找到配置文件(使用的服务器不同,配置文件名也不同),查找RETRIEVE_STMT你就明白了
      

  4.   

    java.lang.NoClassDefFoundError: javax/ejb/ObjectNotFoundException
    at java.lang.Class.getDeclaredConstructors0(Native Method)
    at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
    at java.lang.Class.getConstructor0(Unknown Source)
    at java.lang.Class.newInstance0(Unknown Source)
    at java.lang.Class.newInstance(Unknown Source)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1089)
    at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:791)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:127)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873)
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
    at java.lang.Thread.run(Unknown Source)
    这个问题谁来解决下
      

  5.   

    楼主是用的什么容器啊,tomcat吗?貌似不支持ejb哦