45 lines
3.1 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<div class="subTitle">
javax.annotation
</div>
<h2 class="title" title="Annotation Type PreDestroy">Annotation Type PreDestroy</h2>
</div><div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr/> <br/> <pre><a href="../../java/lang/annotation/Documented.html" title="annotation in java.lang.annotation">@Documented</a>
<a href="../../java/lang/annotation/Retention.html" title="annotation in java.lang.annotation">@Retention</a>(<a href="../../java/lang/annotation/Retention.html#value--">value</a>=<a href="../../java/lang/annotation/RetentionPolicy.html#RUNTIME">RUNTIME</a>)
<a href="../../java/lang/annotation/Target.html" title="annotation in java.lang.annotation">@Target</a>(<a href="../../java/lang/annotation/Target.html#value--">value</a>=<a href="../../java/lang/annotation/ElementType.html#METHOD">METHOD</a>)
public @interface <span class="memberNameLabel">PreDestroy</span></pre>
<div class="block">
<span>PreDestroy注释在方法上用作回调通知表明实例正在被容器移除。</span>
<span>通过PreDestroy注释的方法通常用于释放其持有的资源。</span>
<span>除了Java EE 5中的应用程序客户端容器之外所有支持PostConstruct的容器管理对象必须支持此注释。应用PreDestroy注释的方法必须满足以下所有条件</span>
<p></p>
<ul>
<li> <span>除了拦截器的情况下该方法必须不具有任何参数在这种情况下它将接受由Interceptor规范定义的InvocationContext对象。</span> </li>
<li> <span>在拦截器类上定义的方法必须具有以下签名之一:</span> <p> <span>void &lt;METHOD&gt;InvocationContext</span> </p><p> <span>Object &lt;METHOD&gt;InvocationContext抛出异常</span> </p><p> <span><i>注意PreDestroy拦截器方法不能抛出应用程序异常但是除了生命周期事件之外如果相同的拦截器方法在业务或超时方法上插入则可以声明抛出检查的异常包括java.lang.Exception。</i></span> <span><i>如果PreDestroy拦截器方法返回一个值容器将被忽略。</i></span> </p></li>
<li> <span>在非拦截器类上定义的方法必须具有以下签名:</span> <p> <span>void &lt;METHOD&gt;</span> </p></li>
<li> <span>PreDestroy应用的方法可能是公共的受保护的私有的或私有的。</span> </li>
<li> <span>该方法不能是静态的。</span> </li>
<li> <span>该方法可能是最终的。</span> </li>
<li> <span>如果该方法抛出未经检查的异常则忽略它除非EJB可以处理异常的EJB。</span> </li>
</ul>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
常见注释1.0
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../javax/annotation/PostConstruct.html" title="javax.annotation中的注释"><code>PostConstruct</code></a> <a href="../../javax/annotation/Resource.html" title="javax.annotation中的注释"><code>Resource</code></a></span>
</dd>
</dl> </li>
</ul>
</div>
</div>