2
我想知道Mybatis如何獲得Java中的私有變量。MyBatis(iBatis)如何讀取我的私有變量?
例如:
比方說,我們有一個名爲富的Java類:
public class Foo{
private int foolID;
public Foo(int foolID){
this.foolID = foolID;
}
}
而且讓我們創建XML映射器插件。
<insert id="insert" parameterType="Foo">
insert into foo_table (id)
values (#{foolID});
</insert>
假設有這個插入的FooDAO java類和FooMapper java接口。
我的問題是,即使沒有Getter,foolID也是可讀的(即使有一個用於foolID的getter方法,我也不會指定getter是什麼...)。這對我來說似乎很神奇,我知道編程沒有什麼魔力...... :)
我能想到的唯一方法就是反射。
感謝您的幫助提前。
另一個問題,你是什麼意思「只有訪問私人領域不受限制。你如何限制私人領域? – Xin
您可以打開[安全管理器](http://docs.oracle.com/javase/tutorial/essential/environment/security.html)並配置它在[GlassFish](https://weblogs.java。 net/blog/felipegaucho/archive/2010/01/02/glassfish-securitymanagercheckpermission)服務器來限制反射。 –