第一个不解:是在context.xml还是在server.xml中加如下配置<!--回收被丢弃(一般忘了放掉的)数据库连接到连接池中-->
<parameter>
<name>removeAbandoned</name>
<value>true</value>
</parameter><!--数据库连接过60不用将视为被丢弃而收回连接池中-->
<parameter>
<name>removeAbandonedTimeout</name>
</parameter><!--将被丢弃的数据库连接的回收记入记录-->
<parameter>
<name>logAbandoned</name>
<value>true</value>
</parameter>
<Resourse name="jdbc/BShop"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433;databaseName=BookStore"
usename="Simdanfeg"
password="123"
maxActive="30"
maxIdle="10"
maxWait="10000"/>第二个不解:上面的<Resourse name="jdbc/BShop"
中的"jdbc/BShop"是怎么得到的,请详细讲下

解决方案 »

  1.   


    可是我网上看的好多都是在context.xml中配置呀,能不能说明白点呀
      

  2.   

    获取数据源使用如下代码:     java:comp/env/为固定的  而/jdbc/bugcsol是配置的数据源的名字
    Context ctx = new InitialContext();
         DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/bugcsol");
         Connection conn = ds.getConnection(); 在server.xml文件中加入如下代码:这是由规范定义的。没有为什么
    <Context>
    <Resource name="jdbc/HPMSHP"
      type="javax.sql.DataSource"
      password="kokai"
        driverClassName="oracle.jdbc.OracleDriver"
      maxIdle="2"
      maxWait="50"
      username="kokai"
               url="jdbc:oracle:thin:@10.70.26.91:1521:public"
      maxActive="4"/>
    </Context> 
      

  3.   

    在 context.xml配置 <Resource在web.xml中加 <resource-ref>   
    <res-ref-name>jdbc/xxxxx</res-ref-name>   
    <res-type>javax.sql.DataSource</res-type>   
    <res-auth>Container</res-auth>   
    </resource-ref>
    这样你就能在spring的bean中配置得到了jndi了 <bean id="ebppDataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="java:comp/env/jdbc/xxxxx" />
    </bean>
      

  4.   

    它只是一个名字而已。就像你的名字一样。用来标识的。另外content.xml和web.xml文件中的名字必须一致。就可以了。