如何动态添加字段和方法在一个Java类里面? 有的话有没有一个简单的例子可以参考?
因为我们的同一类型的业务数据会因为客户不同而不同,这部分数据包含了共同列和不同列,为了处理这些不同列,我们打算把他们都配置在XML里面,然后在Java程序运行时去读配置文...
因为我们的同一类型的业务数据会因为客户不同而不同, 这部分数据包含了共同列和不同列, 为了处理这些不同列, 我们打算把他们都配置在XML里面, 然后在Java程序运行时去读配置文件在去把这些不同的列放到Java Class中去.
我研究了下Cglib, 他是一种很好的实现动态改变基类的框架, 大部分用于实现AOP在Spring和Hibernate中. 但是Cglib好像并不能解决我的问题.
[java是静态语言,没办法实现] 展开
我研究了下Cglib, 他是一种很好的实现动态改变基类的框架, 大部分用于实现AOP在Spring和Hibernate中. 但是Cglib好像并不能解决我的问题.
[java是静态语言,没办法实现] 展开
4个回答
展开全部
动态修改java源代码肯定是不行了,因为要重新编译;那么要想绕过这一步就必须直接对class文件动手了,那就是字节码工程了;你倒是不如把你的需求说出来,不必要动态修改程序本身的,程序本来就是设计用来实现动态处理数据的,基本上所有需求都可以程序本身实现,而不需要运行时让程序修改自己的行为~
追问
谢谢你的专业回答, 我的需求是这样的:
因为我们的同一类型的业务数据会因为客户不同而不同, 这部分数据包含了共同列和不同列, 为了处理这些不同列, 我们打算把他们都配置在XML里面, 然后在Java程序运行时去读配置文件在去把这些不同的列放到Java Class中去.
我研究了下Cglib, 他是一种很好的实现动态改变基类的框架, 大部分用于实现AOP在Spring和Hibernate中. 但是Cglib好像并不能解决我的问题.
你怎么看?
追答
楼下的推荐答案为正解,使用继承,将业务数据的共同部分抽取到父类中,不同客户的不同部分分别在子类中实现~
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个没办法吧。如果你要在方法前使用某个方法话,你可以尝试着用代理模式。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
java不是动态语言,无法实现
追问
谢谢你的回答, 在问一个问题: 何为动态语言?何为静态语言?JavaScript就是动态的吧?JavaScript对象在任何时候都可以任意的添加properties和methods。
追答
python也是动态的 js也是
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询