u010791853
Daniel Mao
采纳率21.1%
2015-05-25 02:56 浏览 2.1k

JAVA实体类怎么设计,不用框架

1

现有三个表:
A表:字段有user_id(主键), userName;
B表:字段有commodity_id(主键), user_id(外键:A.user_id), commodity_name;
C表:字段有sku_id(主键), commodity_id(外键:B.commodity_id), sku_code;
关系:A,B:一对多,B,C:一对多

现在我要查询数据,查询语句是:
select A.*, B.*, C.*
from A A
left out join B B on A.user_id = B.user_id
left out join C C on B.commodity_id = C.commodity_id;
然后通过下面的方法取值,请问我改如何设计实体类,不用框架的那种

public List executeQuery(String preparedSql, String[] params ){
List results = null;
pstmt = null;
try{
conn = this.getConn();
pstmt = conn.prepareStatement(preparedSql);
int i = 1;//计数器
if (params != null) {//判断参数集是否为空
for (String param : params) {//添加SQL语句参数
pstmt.setString(i, param);
i++;
}
}
rs = pstmt.executeQuery();
results = createObject(rs);//提取查询结果集
}catch(Exception er){
er.printStackTrace();
}finally{
this.closeAll();
}
return results;
}

@Override
public List createObject(ResultSet rs) throws SQLException {
List listA=new ArrayList();
while(rs.next()){
A a=new A();

        ...............

        listClient.add(a);
    }
    return listA;
}
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

7条回答 默认 最新

  • ro4074 ro4074 2015-05-25 03:06

    你使用power designer画一下这三个表,然后生成java实体类,就知道实体类对应关系为何了。

    点赞 评论 复制链接分享
  • devmiao devmiao 2015-05-25 03:22

    最简单的就是直接定义pojo类。
    字段以及get/set

    点赞 评论 复制链接分享
  • diaoliwei2 DreamTHT 2015-05-25 03:42

    创建个实体类,把你需要查的列都在这个类里定义

    点赞 评论 复制链接分享
  • juwuhen Lucky_fishy 2015-05-25 04:00

    class user:user_id, userName, list;
    class commodity:commodity_id, user, commodity_name, list;
    class sku:sku_id, commodity, sku_code;

    可以根据需求修改
    需要注意的是不要变成死循环

    点赞 评论 复制链接分享
  • stevenice85 stevenice85 2015-05-25 09:43

    一对多还是比较简单的
    user :id name
    commodity:id name User user
    sku:id code User user Commodity commodity

    点赞 评论 复制链接分享
  • stevenice85 stevenice85 2015-05-25 09:48

    为毛不能编辑.不建议在 User下放个list ,很有可能死循环

    点赞 评论 复制链接分享
  • xionglangs 编程爱好者熊浪 2015-05-26 06:28

    你自己已经通过jdbc取到了值啊,在for中new对象 set方法放入rs.get数据类型("列名")数据,对象中不就获得了数据吗

    点赞 评论 复制链接分享

相关推荐