web.xml中<load-on-start>n</load-on-satrt>作用

本文详细解析了web.xml文件中load-on-startup元素的作用。该元素用于指定Servlet在容器启动时是否立即加载及加载顺序,正数值越小表示优先级越高,将决定Servlet在启动时的加载顺序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

web.xml中n作用

  如下面一段配置,我们再熟悉不过了:

  这里写图片描述

  我们注意到它里面包含了这段配置:1,那么这个配置有什么作用呢?

  作用如下:

  1.load-on-startup元素标记容器是否在启动的时候就加载这个servlet(实例化并调用其init()方法)。

  2.它的值必须是一个整数,表示servlet应该被载入的顺序。;

  3.当值为0或者大于0时,表示容器在启动时就加载并初始化这个servlet。

  4.当值小于0或者没有指定时,则表示容器在该Servlet被请求时,才会去加载。

  5.正数的值越小,该Servlet的优先级就越高,应用启动时就优先加载。

  6.当值相同的时候,容器就会自己选择优先加载。

  所以,x中x的取值1,2,3,4,5代表的是优先级,而非启动延迟时间。

  通常大多数Servlet是在用户第一次请求的时候由应用服务器创建并初始化,但n 可以用来改变这种状况,根据自己需要改变加载的优先级!

static ssize_t bes_nand_bread(FAR struct mtd_dev_s *dev, off_t startblock, size_t nblocks, FAR uint8_t *buffer) { FAR struct bes_nand_dev_s *priv = (FAR struct bes_nand_dev_s *)dev; int b = 0; int ret = 0; int block_num = 0; int buffer_offset = 0; int page_num = 0; int page_offset = 0; int correct_cnt = 0, err_cnt = 0; int page_bytes = 1 << (priv->pageshift - page_offset); #if defined(CONFIG_BES_NAND_FLASH_IOSTAT) struct timeval satrt_tp, done_tp; #endif bes_nand_lock(priv); #if defined(CONFIG_BES_NAND_FLASH_IOSTAT) bes_nand_fill_iostat(priv, BES_NAND_READ, nblocks * page_bytes, 0); gettimeofday(&satrt_tp, 0); #endif for(b = startblock; b < startblock + nblocks; ++b){ buffer_offset = (b - startblock) << priv->pageshift; block_num = (b << priv->pageshift) >> priv->sectorshift; page_num = b % ( 1 << (priv->sectorshift - priv->pageshift)); finfo("%s %d: block_num %d, page_num %d, buffer_offset %d, page_bytes %d\n", __func__, __LINE__, block_num, page_num, buffer_offset, page_bytes); ret = nandflash_read_page(HAL_FLASH_ID_1, block_num, page_num, page_offset, buffer + buffer_offset, page_bytes); if (ret != NANDFLASH_RET_OK) { if (ret == NANDFLASH_RET_READ_CORRECTED) { correct_cnt++; ferr("### bes_nand_bread blk:[%d] page:[%d] correct_cnt[%d]\n",block_num,page_num,correct_cnt); } else { ferr("%s %d: ERROR ret %d\n", __func__, __LINE__, ret); err_cnt++; ferr("blk:[%d] page:[%d] err_cnt[%d]\n",block_num,page_num,err_cnt); break; } } } #if defined(CONFIG_BES_NAND_FLASH_IOSTAT) gettimeofday(&done_tp, 0); bes_nand_fill_iostat(priv, BES_NAND_READ, nblocks * page_bytes, done_tp.tv_usec - satrt_tp.tv_usec); #endif bes_nand_unlock(priv); if (err_cnt > 0) { return -EBADMSG; } else if (correct_cnt > 0) { return -EUCLEAN; } return (b - startblock); }解析一下
03-13
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值