org.nutz.ioc.val
类 JavaValue
java.lang.Object
org.nutz.ioc.val.JavaValue
- 所有已实现的接口:
- ValueProxy
public class JavaValue
- extends java.lang.Object
- implements ValueProxy
支持用户通过自定的 Java函数来生成值
通过静态 Java 函数
{java : "com.you.app.ClassName.funcName"}
或者
{java : "com.you.app.ClassName.funcName()"}
通过容器内对象提供的方法或属性
{java : "$objName.attrName"}
或者
{java : "$objName.funcName()"}
或者可以支持更多的级别
{java : "$objName.attrName.attrName"}
{java : "$objName.funcName().attrName.attrName"}
无论那种方式,如果要为函数的设定参数,可以:
{java : "$objName.funcName($anotherName[:typeName], 'abc', true, false)"}
参数只支持
- $xxx 表示容器中的一个对象 $ 后是对象名称,相当于 {refer: "anotherName[:typeName]"}
- 'ddd' 字符串,只支持单引号
- true | false 布尔类型
- 数字
- 常量: @Ioc 容器自身
- 常量: @Name 对象名称
- 常量: @Context 容器上下文对象
- 常量不区分大小写
容器,会尽量为你转换参数类型,比如你
{java : "com.you.app.MyUtils.getTime('2009-08-07 12:23:34')"}
但是你的 getTime 函数的参数是一个 java.sql.Timestamp,那么容器会自动为你转型。
任何对象,只要有一个接受字符串作为参数的构造函数,都可以被成功的从字符串构建
- 作者:
- zozoh(zozohtnt@gmail.com)
从类 java.lang.Object 继承的方法 |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JavaValue
public JavaValue(java.lang.String callPath)
get
public java.lang.Object get(IocMaking ing)
- 指定者:
- 接口
ValueProxy
中的 get