JAVA从数据库查出来的数据放到实体类想用反射的方法给他们赋值,怎么做?
说一个大概思路吧:
1.读取数据:从数据库中读取数据的同时,拿到元数据,即metadata;
2.实例化:通过类名,利用反射 实例你的实体类(类名可以和表名保持一致,这样就不用写额外的
映射了),如果你只是想通过反射赋值的话,你也可以直接new个类;
3.方法调用:通过元数据,利用反射 得到你的set方法(方法名可以和字段名保持一致,否则你要写
出映射关系);
JAVA中实体类中封装了另一个实体类,怎么调用另一个实体类
你这个问题描述的不太明确,只能猜。
估计是这个意思。
public class Main {
public void invokeTest() {
Test t = new Test();
}
public void invokeStaticTest() {
StaticTest t = new StaticTest();
}
public class Test{
public Test() {
System.out.println(“new Test”);
}
}
static class StaticTest{
public StaticTest() {
System.out.println(“new StaticTest”);
}
}
public static void main(String[] args) {
new Main().invokeTest();
new Main().invokeStaticTest();
new Main.StaticTest();
}
}
java中一个类封装了实体类后,另一个类要怎么调用这个被封装的类
首先,你这个类,没有定义构造函数,类的score属性没有默认值,你的类A,new一个新的sc对象时,直接调用了get方法,这时候的score值是0,你设置了a和b两个变量来处理这个score值没有意义,应该直接写
scorebean sc = new scorebean;
sc.setScore(20);
然后再来说说,你还有一个类B要调用这个已经初始化完毕的对象sc,这时候你的类B应该可以访问到类A,你可以在类A中,把sc当成一个属性暴露出来,这样类B在引用类A的时候就可以直接访问类A的sc属性了。
这里假设类A的构造方法里给sc赋值score,代码如下
puclic class B{
A a;
public scorebean getScoreBean(){
return this.a.getScoreBean();
}
public static void main(String [] args){
B b=new B;
scorebean scNew=b.getScoreBean();
}
}
public class A{
scorebean sc;
public A (){
sc.setScore(20);
}
public scorebean getScoreBean(){
return this.scorebean;
}
}
java两个实体类转化问题
假如
A 类 里有 2个属性 X 和 Y
B 类 里有 3个属性 X ,Y,Z
你的意思是 这2个类 唯一的区别是 B 比 A 多 一个属性 ,你想 批量的把A 的一个实例 转换成 B 的一个 实例 是这个意思吧。
你可以写一个处理类
写一个方法 接收一个A类对象 和多处来的属性 返回一个B类对象 ,麻烦就麻烦一次 以后直接调用 传里个A类 得到个B类 就可以直接用了
例如
public B setXYZ( A a, int z){
B b=new B();
b.setX(a.getX());
b.setY(a.getY());
b.setZ(z);
return b;
}