Files
redkale/javadoc/org.redkale/org/redkale/annotation/ResourceInjected.html
2024-06-12 15:26:59 +08:00

242 lines
8.5 KiB
HTML

<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="zh">
<head>
<!-- Generated by javadoc (11.0.18) on Wed Jun 12 15:24:51 CST 2024 -->
<title>ResourceInjected (RedkaleProject 2.8.0-SNAPSHOT API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2024-06-12">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.6.0.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.min.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ResourceInjected (RedkaleProject 2.8.0-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var pathtoroot = "../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>您的浏览器已禁用 JavaScript。</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="跳过导航链接">跳过导航链接</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="导航">
<li><a href="../../../module-summary.html">模块</a></li>
<li><a href="package-summary.html">程序包</a></li>
<li class="navBarCell1Rev"></li>
<li><a href="class-use/ResourceInjected.html">使用</a></li>
<li><a href="package-tree.html"></a></li>
<li><a href="../../../../deprecated-list.html">已过时</a></li>
<li><a href="../../../../index-all.html">索引</a></li>
<li><a href="../../../../help-doc.html">帮助</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">所有类</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>您的浏览器已禁用 JavaScript。</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>概要:&nbsp;</li>
<li>字段&nbsp;|&nbsp;</li>
<li>必需&nbsp;|&nbsp;</li>
<li>可选</li>
</ul>
<ul class="subNavList">
<li>详细资料:&nbsp;</li>
<li>字段&nbsp;|&nbsp;</li>
<li>元素</li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="moduleLabelInType">模块</span>&nbsp;<a href="../../../module-summary.html">org.redkale</a></div>
<div class="subTitle"><span class="packageLabelInType">程序包</span>&nbsp;<a href="package-summary.html">org.redkale.annotation</a></div>
<h2 title="注释类型 ResourceInjected" class="title">注释类型 ResourceInjected</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<pre><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/annotation/Documented.html?is-external=true" title="java.lang.annotation中的类或接口" class="externalLink">@Documented</a>
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/annotation/Target.html?is-external=true" title="java.lang.annotation中的类或接口" class="externalLink">@Target</a>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/annotation/ElementType.html?is-external=true#METHOD" title="java.lang.annotation中的类或接口" class="externalLink">METHOD</a>)
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/annotation/Retention.html?is-external=true" title="java.lang.annotation中的类或接口" class="externalLink">@Retention</a>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/annotation/RetentionPolicy.html?is-external=true#RUNTIME" title="java.lang.annotation中的类或接口" class="externalLink">RUNTIME</a>)
public @interface <span class="memberNameLabel">ResourceInjected</span></pre>
<div class="block">&#64;Resource资源被依赖注入时的监听事件。<br>
本注解只能标记在空参数或者(String、Object、java.lang.reflect.Field)三个参数类型的任意组合方法上 <br>
方法在资源被依赖注入后调用。
<blockquote>
<pre>
public class ResourceService implements Service {
&#64;Resource(name = "res.id")
private int id;
&#64;Resource(name = "res.name")
private String name;
&#64;ResourceInjected
private void onInjected(Object src, String fieldName) {
System.out .println("资源被注入到对象(" + src + ")的字段(" + fieldName + ")上");
}
}
public class RecordService implements Service {
&#64;Resource
private ResourceService resService;
public void test() {
}
public static void main(String[] args) throws Exception {
ResourceFactory factory = ResourceFactory.create();
factory.register("res.id", "2345");
factory.register("res.name", "my old name");
ResourceService res = new ResourceService();
factory.inject(res);
factory.register("", res);
RecordService serice = new RecordService();
factory.inject(record);
}
}
</pre>
</blockquote>
<p>详情见: https://redkale.org</div>
<dl>
<dt><span class="simpleTagLabel">作者:</span></dt>
<dd>zhangjx</dd>
</dl>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="跳过导航链接">跳过导航链接</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="导航">
<li><a href="../../../module-summary.html">模块</a></li>
<li><a href="package-summary.html">程序包</a></li>
<li class="navBarCell1Rev"></li>
<li><a href="class-use/ResourceInjected.html">使用</a></li>
<li><a href="package-tree.html"></a></li>
<li><a href="../../../../deprecated-list.html">已过时</a></li>
<li><a href="../../../../index-all.html">索引</a></li>
<li><a href="../../../../help-doc.html">帮助</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.html">所有类</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>您的浏览器已禁用 JavaScript。</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>概要:&nbsp;</li>
<li>字段&nbsp;|&nbsp;</li>
<li>必需&nbsp;|&nbsp;</li>
<li>可选</li>
</ul>
<ul class="subNavList">
<li>详细资料:&nbsp;</li>
<li>字段&nbsp;|&nbsp;</li>
<li>元素</li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2024. All rights reserved.</small></p>
</footer>
</body>
</html>