rt.
怎么将java中list中的数据序列化到数据库中,方便存取?
我想讲一个list集合 直接放在一个varchar字段中,而不像新增一个表来专门存在list中数据,我该怎么做?
ps:之前我用php的时候会用serialize去序列化数组,但java我该怎么做?
ringa_lee2017-04-17 11:33:08
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
}
}
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
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());
希望對你有幫助!
PHPz2017-04-17 11:33:08
你好,你的問題我沒有讀明白,建議把list的內容具體一些。如果list裡面是字串,這個比較好解決。如果這個list裡面是複雜的類,那就是看具體的要求了。