1:
S t r u t s 里面如果一个页面元素不知道有多少。我Fr om Be an怎么写啊?2:我现在项目有个模块,要同时对几十表进行insert,并且这些表,每张都很独立,不仅互相没任何关系,跟DB中其他表也无任何关系,
是否用hb的意义不大!这个模块的需求是:我能获得一条信息,每个信息有一个type,我需要按照不同的type把这条信息写到不同的表中!
由于系统的其他模块都用的hb,我想如果我这里也用hb的话,代码可能写成下面的样子:String type = "tableA"
//如果type是tableA就插入tableA表
if(type.equls("tableA"))
A_Table_Class.save();
//如果type是tableB就插入tableB表
else if(type.equls("tableB"))
B_Table_Class.save();
.
.
.
.
.
.
.
这样就要写几十个不同对象的save感觉很不美观!
不知道我这种需求用hb应该怎么个用法,写法啊!求解啊!感谢
S t r u t s 里面如果一个页面元素不知道有多少。我Fr om Be an怎么写啊?2:我现在项目有个模块,要同时对几十表进行insert,并且这些表,每张都很独立,不仅互相没任何关系,跟DB中其他表也无任何关系,
是否用hb的意义不大!这个模块的需求是:我能获得一条信息,每个信息有一个type,我需要按照不同的type把这条信息写到不同的表中!
由于系统的其他模块都用的hb,我想如果我这里也用hb的话,代码可能写成下面的样子:String type = "tableA"
//如果type是tableA就插入tableA表
if(type.equls("tableA"))
A_Table_Class.save();
//如果type是tableB就插入tableB表
else if(type.equls("tableB"))
B_Table_Class.save();
.
.
.
.
.
.
.
这样就要写几十个不同对象的save感觉很不美观!
不知道我这种需求用hb应该怎么个用法,写法啊!求解啊!感谢
可以的话,就把type改成类名,可以通过反射机制调用不同的类(或者用类工厂)
ITable t = TableFactory.createTable(type);
t.set...;
session.save(t);
你怎么会不知道呢,一般一个表单会对应一个表吧,而实体对象hb能自动生成,那就把这个POJO作为formBean的
成员属性,记得声明同时实列化;
2.感觉代码重复,就直接获得type的最后一个字母再加在_Table_Class变成一个字符串.字符串有个getClass()
方法返回一个Object的类(刚刚查API发现的,不知道这样行不行); String n="B"+"_table_Class";
Class c =n.getClass();
//Object object = c.forName(n);
//String str = c.forName(n).getClass();
Package p = c.getPackage();
System.out.println(p);
}
我还想用字符串拼凑出类型,唉,搞不来,可能不行,呵呵
1:List;
2:用hibernate bean直接save就可以了,但是需要注意,所有的save都要放到同一事务内,一个失败所有都回滚。
2,这个问题建议考虑一下用存储过程实现会好一点,过程的一个参数为type。