第一阶段:急性毒性试验:它是一次性投较大剂量后观察动物的变化,观察期大约为1周,从而判定动物的致死量(LD)和半致死量(LD50)。半致死量是指实验动物死亡一半的投药量。如果投药量大于5000mg/kg,无死亡,可认为该品毒性较低,无需做致死量精确测定。
第二阶段:遗传毒性试验,30 天喂养试验,传统致畸试验
遗传毒性试验的组合应该考虑原核细胞与真核细胞、体内试验与体外试验相结合的原则。从Ames 试验或V79/HGPRT 基因突变试验、骨髓细胞微核试验或哺乳动物骨髓细胞染色体畸变试验、TK 基因突变试验或小鼠精子畸形分析(或睾丸染色体畸变分析试验)中分别各选一项。
①基因突变试验:鼠伤寒沙门氏菌/哺乳动物微粒体酶试验(Ames 试验)为首选,其次考虑选用V79/HGPRT 基因突变试验,必要时可另选其它试验。
②骨髓细胞微核试验或哺乳动物骨髓细胞染色体畸变试验。
③TK 基因突变试验。
④ 小鼠精子畸形分析或睾丸染色体畸变分析。
⑤ 其它备选遗传毒性试验:显性致死试验、果蝇伴性隐性致死试验,非程序性DNA合成试验。
⑥30 天喂养试验。
⑦ 传统致畸试验。
第三阶段:亚慢性毒性实验:实验期在3个月左右,检验该品的毒性对机体的重要器官或生理功能的影响包括繁殖和致畸实验
第四阶段:慢性毒性实验:考查少量该品长期对机体的影响,确定最大无作用量(MNL),一般以寿命较短敏感的动物的一生为一个试验阶段,如用大白鼠试验2年小白鼠试验15年。
国际上常用ADI、LD50作为主要毒性安全性指标为,其中,ADI值(Acceptable Daily Intake)也就是每天每千克体重允许摄入的毫克数,联合国FAO/WHO所属的食品添加剂专家联合委员会(JECFA)每年依据各国所用食品添加剂的毒性报告提出,由联合国食品添加剂法规委员会(CCFA)每年年会讨论,并对某种食品添加剂的ADI做出评价、修改或撤销各国对此都已接受。大家知道,ADI值是根据对小动物(大鼠、小鼠等)近乎一生的长期毒性试验中所求得的最大无作用量(MNL),取其1/100-1/500作为ADI值。各国依据ADI值制定出允许在食品中的最大添加量,就食品安全性方面来看,应该说是有保证的。
1) 几种常见的食品添加剂的ADI值见表1
表1
品名 ADImg/kg 最大使用量g/kg 用途
六偏磷酸钠 0-70 50 方便面
三聚磷酸钠 0-70 50 方便面
磷酸二氢钙 0-70 40 面包,馒头,饼干
磷酸氢钙 0-70 10 发酵制品,婴儿食品
过氧化苯甲酰 0-40 006 面粉熟化,增白
硬酯酰乳酸钙(CSL) 0-20 20 面包糕点
硬酯酰乳酸钠(SSL) 0-20 20 面包糕点
苯甲酸 0-5 02-1 食品防腐
山梨酸 0-25 02-2 食品防腐
乳酸亚铁 0-08 02-05 豆奶粉,豆粉
丁基羟基茴香醚(BHA)0-05 01-02 食用油脂,油炸食品,饼干,方便面,速煮米
二丁羟基甲苯(BHT) 0-03 02 早餐谷类食品
注:食品添加剂在食品中的最大使用量一般是依据JECFA推荐的"丹麦预算法(DBM)"来推算的,这种方法目前已被世界各国公认和采用,即:食品添加剂的最大使用量=40×ADI
2) 半数致死量(LD50)
LD50是判断食品添加剂安全性的第二种常用指标,也是任何食品添加剂都必须进行的毒理学评价中的第一个阶段急性毒性试验指标,它一般表明了食品添加剂急性毒性的大小。我国《食品安全性毒理学评价程序和方法》(GB 151933-2003)颁布的急性毒性(LD50)剂量分级标准表中将用于食品中化学物质依据LD50分成六大类,如表2
表2
毒性级别大鼠口服LD50mg/kg相当于人的致死剂量mg/kg相当于人的致死剂量g/人
极 毒 <1 稍尝 005
剧 毒 1—50 500—4000 05
中等毒 51—500 4000—30000 5
低 毒 501—5000 30000—250000 50
实际无毒 5001—15000 250000—500000 500
无 毒 >15000 >500000 2500
一般来讲,对动物毒性很低的物质,对人体的毒性也很低,LD50越大表明其毒性越小,在食品使用时其安全性越高,表3是几种常见的食品添加剂的LD50。
表3
品名 LD50 mg/kg GB2760规定最大使用量g/kg 主要用途
过氧化苯甲酰 7710 006 面粉处理剂
苯甲酸 2530 02-08 食品防腐剂
丁基羟基茴香醚(BHA) 2000-5000 02 抗氧化剂
二丁羟基甲苯(BHT) 890 02 抗氧化剂
亚硝酸钠 220 015残留005 肉制品着色剂
亚硝酸钾 200 015残留005 肉制品着色剂
通过表3可以看出,过氧化苯甲酰属于实际无毒类,苯甲酸属于低毒类,而肉制品常用的亚硝酸钠和亚硝酸钾以及早餐谷类所添加的营养强化剂氧化锌,都属于中毒类。
#include <reg52h>
#include <stdlibh>
#include <intrinsh>
#include <stdioh>
/引脚定义/
sbit RS =P3^0; //数据指令
sbit RW =P3^1; //读写
sbit E =P3^2; //使能
sbit CSL =P3^3; //左片选
sbit CSM =P3^4; //中片选
sbit CSR =P3^5; //右片选
sbit RST =P3^6;
unsigned char Page; //页 地址
unsigned char Col; //列 地址
unsigned char code BMP1[];
unsigned char code BMP2[];
void Delay(unsigned int MS);
void wtcom(void);
//
/检查Busy /
//
void BusyL(void)
{
CSL= 1;
CSM= 0;
CSR= 0;
wtcom();
}
void BusyM(void)
{
CSL= 0;
CSM= 1;
CSR= 0;
wtcom();
}
void BusyR(void)
{
CSL= 0;
CSM= 0;
CSR= 1;
wtcom();
}
void wtcom(void)
{
RS = 0; //指令
RW = 1;
P1 = 0xFF; //输出0xff以便读取正确
E = 1;
_nop_();_nop_();_nop_();
while(P1 & 0x80); //Status Read Bit7 = BUSY
E = 0;
_nop_(); _nop_();_nop_();
}
//
/根据设定的坐标数据,定位LCM上的下一个 *** 作单元位置 /
//
void Locatexy(void)
{
unsigned char x,y;
switch (Col&0xc0) / coland0xC0 /
{ /条件分支执行 /
case 0: {BusyL();break;}/左区 /
case 0x40: {BusyM();break;}/中区 /
case 0x80: {BusyR();break;}/右区 /
}
x = Col&0x3F|0x40; / coland0x3forSet Y Address/
y = Page&0x07|0xB8; / rowand0x07orset Page /
wtcom(); / waitting for enable /
RS = 0; //指令
RW = 0; //写
P1 = y; //设置页面地址
E = 1;
_nop_();
E = 0;
_nop_(); _nop_();_nop_();_nop_();
wtcom(); / waitting for enable /
RS = 0;
RW = 0;
P1 = x; //设置列地址
E = 1;
_nop_();_nop_();_nop_();_nop_();
E = 0;
_nop_(); _nop_();_nop_();_nop_();
}
//
/写指令 /
//
void WriteCommandL( unsigned char CommandByte )
{
BusyL();
P1 = CommandByte;
RS = 0; //指令
RW = 0;
E = 1;
_nop_();_nop_();_nop_();_nop_();
E = 0;
_nop_();_nop_();_nop_();_nop_();
}
void WriteCommandM( unsigned char CommandByte )
{
BusyM();
P1 = CommandByte;
RS = 0; //指令
RW = 0;
E = 1;
_nop_();_nop_();_nop_();_nop_();
E = 0;
_nop_();_nop_();_nop_();_nop_();
}
void WriteCommandR( unsigned char CommandByte )
{
BusyR();
P1 = CommandByte;
RS = 0; //指令
RW = 0;
E = 1;
_nop_();_nop_();_nop_();_nop_();
E = 0;
_nop_();_nop_();_nop_();_nop_();
}
//
/读数据 /
//
unsigned char ReadData( void )
{
unsigned char DataByte;
Locatexy(); /坐标定位,返回时保留分区状态不变 /
RS = 1; /数据输出/
RW = 1; /读入 /
P1 = 0xFF; //输出0xff以便读取正确
E = 1; /读入到LCM/
_nop_();_nop_();_nop_();_nop_();
DataByte = P1; /数据读出到数据口P1 /
E = 0;
_nop_();_nop_();_nop_();_nop_();
return DataByte;
}
//
/写数据 /
//
void WriteData( unsigned char DataByte )
{
Locatexy(); /坐标定位,返回时保留分区状态不变 /
RS = 1; /数据输出/
RW = 0; /写输出 /
P1 = DataByte; /数据输出到数据口 /
E = 1; /写入到LCM/
_nop_();_nop_();_nop_();_nop_();
E = 0;
_nop_();_nop_();_nop_();_nop_();
}
void LcmClear( void )
{
Page = 0;
Col = 0;
for(Page=0;Page<8;Page++)
for(Col=0;Col<192;Col++)
WriteData(0);
}
void LcmInit( void )
{
WriteCommandL(0x3f); //开显示
WriteCommandM(0x3f);
WriteCommandR(0x3f);
WriteCommandL(0xc0); //设置起始地址=0
WriteCommandM(0xc0);
WriteCommandR(0xc0);
WriteCommandL(0x3f); //开显示
WriteCommandM(0x3f);
WriteCommandR(0x3f);
LcmClear();
Col = 0;
Page= 0;
Locatexy();
}
void LcmPutDots( unsigned char DotByte )
{
Page = 0;
Col = 0;
for(Page=0;Page<8;Page++)
{
for(Col=0;Col<192;Col++)
{
WriteData( DotByte );
DotByte = ~DotByte;
}
}
}
void LcmPutBMP( unsigned char puts )
{
unsigned int X=0;
Page = 0;
Col = 0;
for(Page=0;Page<8;Page++)
{
for(Col=0;Col<192;Col++)
{
WriteData( puts[X] );
X++;
}
}
}
void LcmReverseBMP( void )
{
unsigned char temp;
Page = 0;
Col = 0;
for(Page=0;Page<8;Page++)
{
for(Col=0;Col<192;Col++)
{
temp = ReadData(); //空读一次
temp = ReadData();
temp = ~temp;
WriteData(temp);
}
}
}
void Delay(unsigned int MS)
{
unsigned char us,usn;
while(MS!=0)
{
usn = 2; //for 12M
while(usn!=0)
{
us=0xf6;
while (us!=0){us--;};
usn--;
}
MS--;
}
}
void Main( void )
{
Delay(200); //等待复位
LcmInit();
LcmClear();
while(1)
{
LcmPutBMP(BMP1);
Delay(1500);
LcmReverseBMP();
Delay(1500);
LcmPutBMP(BMP2);
Delay(1500);
LcmReverseBMP();
Delay(1500);
}
}
更多0
帮你就是帮自己。你项目中使用的应该是DBCP的数据源orgapachetomcatdbcpdbcpBasicDataSource
查找你的webxml中的配置,数据源res-type
<!-- JDBC DataSources (java:comp/env/jdbc) -->
<resource-ref>
<description>The default DS</description>
<res-ref-name>jdbc/DefaultDS</res-ref-name> <!--该名称必须与下面的描述文件中的一致-->
<res-type>javaxsqlDataSource</res-type><!--看看你的配置-->
<res-auth>Container</res-auth>
</resource-ref>
查找你本类中的import处关于DataSource的引用。将来源处sunjdbcodbceeDataSource修改为dbcp的数据源进行转换即可。
在描述JNDI,例如获得数据源时,JNDI地址有两种写法
A: java:comp/env/jdbc/demoDS
B: jdbc/demoDS
这两种写法,配置的方式也不尽相同,第一种方法应该算是一种利于程序移植或迁移的方法,它的实现与“映射”的概念相同,而B方法,则是一个硬引用。
java:comp/env 是环境命名上下文(environment naming context(ENC)),是在EJB规范11以后引入的,引入这个是为了解决原来JNDI查找所引起的冲突问题,也是为了提高EJB或者J2EE应用的移植性。
在J2EE中的引用常用的有:
JDBC 数据源引用在java:comp/env/jdbc 子上下文中声明
JMS 连接工厂在java:comp/env/jms 子上下文中声明
JavaMail 连接工厂在java:comp/env/mail 子上下文中声明
URL 连接工厂在 java:comp/env/url子上下文中声明
可以通过下面的结构示意来发现这两种描述的不同之处:
A: java:comp/env/jdbc/demoDS(虚地址) ------> 映射描述符 ------> jdbc/demoDS (实际的地址)
B: jdbc/demoDS (实际的地址)
从这种结构上来看,A的确是便于移植的。
再来看一个例子:
假如你需要获取datasource,例如:dataSource = (DataSource) ctxlookup("java:comp/env/jdbc/demoDS");
那么在配置文件中进行资源映射时,在webxml中,
<resource-ref>
<res-ref-name>jdbc/demoDS</res-ref-name>
<res-type>javaxsqlDataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
以上就是关于食品毒理学评价评价程序中规定,需进行四个阶段毒理学实验项目的化学毒物是什么全部的内容,包括:食品毒理学评价评价程序中规定,需进行四个阶段毒理学实验项目的化学毒物是什么、KS0108驱动的19264程序,写入后无反应、DataSource ds = (DataSource)context.lookup("java:comp/env/jdbc/csl"); 这句报错等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)