xml配置文件已经配置好了,
test类都行,但是我在jsp里面用脚本写为什么就不行呢?
请大神门为小弟看看:测试代码
public static void main( String[] args ) throws IOException {
        //加载spring的配置文件        
        ClassPathXmlApplicationContext app = new ClassPathXmlApplicationContext( "sys-mapper.xml" );
        //得到mybatis的SqlSessionFactory        
        SqlSessionFactory obj = app.getBean( "sqlSessionFactory", DefaultSqlSessionFactory.class );
        //创建mybatis的SqlSession        
        SqlSession ses = obj.openSession();
        //得到在mybatis的*Mapper.xml文件中配置好的Mapper节点        
        SstColumnMapper mapper = ses.getMapper( SstColumnMapper.class );
        SstColumn column = null;
        for ( int i = 0; i < 10; i++ ) {
            long start = System.currentTimeMillis();
            column = mapper.selectByPrimaryKey( 1111L );
            System.out.println( column.getColumnTitle() );
            System.out.println( System.currentTimeMillis() - start );
        }
    }jsp页面脚本
WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext( getServletContext() );
SstColumnService sstColumnService = (SstColumnService)wac.getBean( "sstColumnService" );
SstColumn column = sstColumnService.querySstColumnByKey( 1111L );
column = sstColumnService.querySstColumnByKey( 1111L );下面是脚本页面调用的service类
@Service
public class SstColumnService {
    @Resource
    private SstColumnMapper sstColumnMapper;
    /**
     * 根据主键查询
     * 参数:查询条件,主键值
     * 返回:对象
     */
    public SstColumn querySstColumnByKey( long columnId ) {
        return sstColumnMapper.selectByPrimaryKey( columnId );
    }
}哪里不正确呢?c3p0

解决方案 »

  1.   

    什么错误呢?最好写一个servlet。
      

  2.   


    测试的时候,c3p0起作用,
    但是在jsp页面时候c3p0不起作用,还是要查询数据库,而不是从连接池获取
      

  3.   

    那肯定是你配置文件没有加载成功。web.xml加载配置文件了吗
      

  4.   

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:sys-*.xml</param-value>
    </context-param>
      

  5.   

    sys-mapper.xml里面的
    <bean id="datasource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
    destroy-method="close">是跟数据库连接写在一起的,没加载的话,连接数据库就会报错嘛
      

  6.   

    是不是因为service层注入的关系呢?
    不应该啊
      

  7.   

    2013-05-24 11:05:19 Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@ae000d: startup date [Fri May 24 11:05:19 CST 2013]; root of context hierarchy
    2013-05-24 11:05:19 Loading XML bean definitions from class path resource [sys-mapper.xml]
    2013-05-24 11:05:20 MLog clients using log4j logging.
    2013-05-24 11:05:21 Initializing c3p0-0.9.1.2 [built 21-May-2007 15:04:56; debug? true; trace: 10]
    2013-05-24 11:05:22 Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@16bd8ea: defining beans [sstColumnRContentService,sstColumnService,sstLinkService,sstPicService,sstTxtService,org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,adaptive,adaptiveClientApp,mainControl,datasource,sqlSessionFactory,org.mybatis.spring.mapper.MapperScannerConfigurer#0,transactionManager,transactionAdvice,org.springframework.aop.config.internalAutoProxyCreator,org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor#0,org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor#1,org.springframework.context.annotation.ConfigurationClassPostProcessor$ImportAwareBeanPostProcessor#0,sstAlbumsMapper,sstAppMapper,sstApprecommendMapper,sstAppversionMapper,sstChannelMapper,sstChannelRColumnMapper,sstColumnMapper,sstColumnRContentMapper,sstColumnRTemplateMapper,sstLinkMapper,sstManufacturerMapper,sstMarketingMapper,sstPersonalSongsMapper,sstPicMapper,sstPresentHistoryMapper,sstPropertyMapper,sstProvinceMapper,sstProvinceRColumnMapper,sstSingersMapper,sstSongMapper,sstStartpicMapper,sstStatusMapper,sstStatusRColumnMapper,sstSubscribeMapper,sstSuggestionMapper,sstTemplateMapper,sstTerminaltypeMapper,sstTokenMapper,sstTxtMapper,sstUsersessionMapper]; root of factory hierarchy
    2013-05-24 11:05:22 Initializing c3p0 pool... com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 3, acquireRetryAttempts -> 3, acquireRetryDelay -> 500, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, dataSourceName -> 1hgekpd8u1mykwn3ikk3yn|1d1e730, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass -> oracle.jdbc.driver.OracleDriver, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, identityToken -> 1hgekpd8u1mykwn3ikk3yn|1d1e730, idleConnectionTestPeriod -> 60, initialPoolSize -> 10, jdbcUrl -> jdbc:oracle:thin:sst/sstcx@(DESCRIPTION =(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1522))(LOAD_BALANCE=yes)(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=mbdb))), maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 1800, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 100, maxStatements -> 1000, maxStatementsPerConnection -> 0, minPoolSize -> 10, numHelperThreads -> 3, numThreadsAwaitingCheckoutDefaultUser -> 0, preferredTestQuery -> select 1 from dual, properties -> {user=******, password=******}, propertyCycle -> 0, testConnectionOnCheckin -> true, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, usesTraditionalReflectiveProxies -> false ]
    2013-05-24 11:05:23 ooo Connection Opened
    2013-05-24 11:05:26 ==>  Executing: select COLUMN_ID, COLUMN_PID, COLUMN_TITLE, COLUMN_SORT, COLUMN_VERSION, COLUMN_SMALLPIC_URL, COLUMN_PIC_URL, COLUMN_DES, COLUMN_CREATE_TIME, COLUMN_UPDATE_TIME, COLUMN_STATUS, COLUMN_HAS_SON, COLUMNTYPE_ID, TRID, S1RID, S2RID, TPID from SST.SST_COLUMN where COLUMN_ID = ? 
    2013-05-24 11:05:26 ==>  Executing: select COLUMN_ID, COLUMN_PID, COLUMN_TITLE, COLUMN_SORT, COLUMN_VERSION, COLUMN_SMALLPIC_URL, COLUMN_PIC_URL, COLUMN_DES, COLUMN_CREATE_TIME, COLUMN_UPDATE_TIME, COLUMN_STATUS, COLUMN_HAS_SON, COLUMNTYPE_ID, TRID, S1RID, S2RID, TPID from SST.SST_COLUMN where COLUMN_ID = ? 
    2013-05-24 11:05:26 ==> Parameters: 7638(Long)
    2013-05-24 11:05:26 ==> Parameters: 7638(Long)
    1.0.0
    2500
    1.0.0
    0
    1.0.0
    0
    1.0.0
    0
    1.0.0
    0
    1.0.0
    0
    1.0.0
    0
    1.0.0
    0
    1.0.0
    0
    1.0.0
    0
    这个是测试类的日志,
    但是在jsp里面的话,每次就会有多少次调用,就会有多少次查询数据库