W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
JFinal ActiveRecord 天然支持表關(guān)聯(lián)操作,并不需要學(xué)習(xí)新的東西,此為無招勝有招。表 關(guān)聯(lián)操作主要有兩種方式:一是直接使用 sql 得到關(guān)聯(lián)數(shù)據(jù);二是在 Model 中添加獲取關(guān)聯(lián)數(shù)據(jù)的方法。
假定現(xiàn)有兩張數(shù)據(jù)庫表:user、blog,并且 user 到 blog 是一對(duì)多關(guān)系,blog 表中使用 user_id關(guān)聯(lián)到 user 表。如下代碼演示使用第一種方式得到 user_name:
public void relation() {以下代碼演示第二種方式在 Blog 中獲取相關(guān)聯(lián)的 User 以及在 User 中獲取相關(guān)聯(lián)的Blog:
String sql = "select b.*, u.user_name from blog b inner join user u on b.user_id=u.id where b.id=?";
Blog blog = Blog.dao.findFirst(sql, 123); String name = blog.getStr("user_name");
}
public class Blog extends Model<Blog>{
public static final Blog dao = new Blog();
public User getUser() {
return User.dao.findById(get("user_id"));
}
}
public class User extends Model<User>{
public static final User dao = new User();
public List<Blog> getBlogs() {
return Blog.dao.find("select * from blog where user_id=?", get("id"));
}
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: