首先编辑Server.xml,添加数据源代码 <Context path="/StudentManager" docbase="StudentManager" debug="5" reload="true" crossContext="true"> <Resource name="jdbc/StudentManager" auth="Container" type="javax.sql.DataSource"/> <ResourceParams name="jdbc/StudentManager"> <parameter> <name>factory</name> <values>org.apache.commons.dbcp.BasicDataSourceFactory</values> </parameter> <parameter> <name>url</name> <values>jdbc:mysql://localhost:3306/studentmanager</values> </parameter> <parameter> <name>driverclassname</name> <values>com.mysql.jdbc.Driver</values> </parameter> <parameter> <name>username</name> <values>root</values> </parameter> <parameter> <name>password</name> <values>root</values> </parameter> <parameter> <name>maxWait</name> <values>3000</values> </parameter> <parameter> <name>maxIdle</name> <values>10</values> </parameter> <parameter> <name>maxActive</name> <values>100</values> </parameter> </ResourceParams> </Context> 在Web.xml中加入对jndi的引用 <resource-ref> <description>SqlServer Datasource example</description> <res-ref-name>jdbc/StudentManager</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> 测试代码: <% String jndi="java:comp/env/jdbc/StudentManager"; DataSource ds=null; try...{ Context initCtx=new InitialContext(); //初始化上下文,可以读配置文件如:web.xml if(initCtx==null) throw new Exception("Initial Failed!"); Context ctx=(Context)initCtx.lookup("java:comp/env"); if(ctx!=null) ds=(DataSource)ctx.lookup("jdbc/StudentManager"); if(ds==null) throw new Exception("Look up DataSource Failed!"); } catch(Exception e)...{ System.out.println(e.getMessage()); } System.out.println(ds); %>