开发者社区> 问答> 正文

怎么将java中list中的数据序列化到数据库中

怎么将java中list中的数据序列化到数据库中,方便存取?
我想把一个list集合 直接放在一个varchar字段中,而不像新增一个表来专门存在list中数据,我该怎么做?

展开
收起
蛮大人123 2016-03-04 11:56:08 3791 0
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪
    public List getObject(String sql, Object[] object) { //sql执行语句,object是你sql语句里面的参数
    List list = new ArrayList();
    Connection con = null;
    PreparedStatement pre = null;
    ResultSet rs = null;
    try{
    con = C3P0Util.getInstance().getConnection(); //这是你获得数据库连接,你把这里改成调用你自己写的jdbc方法
    pre = con.prepareStatement(sql); //执行sql语句
    if(object!=null){
    for(int i=0;i<object.length;i++){
    pre.setObject(i+1, object[i]); //给sql里面的参数进行赋值
    }
    }
    rs = pre.executeQuery();
    while(rs.next()){
    Users u = new User();
    u.setUserName(rs.getString("UserName"));
    u.setUserPas(rs.getString("UserPas")); list.add(u);
    }
    }catch(Exception e){
    e.printStackTrace();
    return null;
    }finally{
    C3P0Util.close(con, pre, rs); //关闭数据库资源
    }
    return list; //返回list集合
    }
    注意:list里面保存的是User对象的信息
    你要获得User对象的信息,那么就要遍历list
    for(int i=0;i<list.size;i++){
    User u = (User)list.get(i); System.out.println("UserName:"+u.getUserName());
    System.out.println("UserPas:"+u.getUserPas());
    } 

    上面是针对list里面有很多个User对象,当然list里面只有一个User对象,也是可以的。
    如果你的list里面只有一个User,那么可以直接:User u = (User)list.get(0);
    System.out.println("UserName:"+u.getUserName());
    System.out.println("UserPas:"+u.getUserPas());
    希望对你有帮助!

    2019-07-17 18:52:05
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载
云时代的数据库技术趋势 立即下载
超大型金融机构国产数据库全面迁移成功实践 立即下载