類似model屬性操作copy contrast

2021-09-01 08:51:28 字數 1445 閱讀 1860

由於業務需要,可能存在以下類似model,比如正式表 零時表

那麼在很多時候,正式表的model的屬性要copy到零時表中,有時候又涉及到對比,如果只涉及一次這種類似的操作,自己set也就無所謂,但類似業務多了,就需要抽象了,反射式比較好的方式,能抽象提取這些操作

用commons的beanutils 與spring的工具類封裝了乙個beanutilss

public class beanutilss 

boolean chanage=false;

map newwmap=new propertyutilsbean().describe(neww);

map oldmap=new propertyutilsbean().describe(old);

newwmap.remove("class");

oldmap.remove("class");

for(object key:newwmap.keyset())

} return chanage;

} /**

* 該方法對比不同bean例項中具有相同屬性值是否相等,只對比neww中的屬性

* old屬性為neww屬性加字首在prefix

* @param neww--系統物件

* @param old--目標物件

*/public static boolean ischange(object neww,object old,string prefix) throws illegalacces***ception, invocationtargetexception, nosuchmethodexception

} return chanage;

} /**

* spring的beanutils功能增強,增加屬性規則,copy目標bean屬性加prefix

* @param orig

* @param dest

* @param prefix

* @param ignoreproperties

*/public static void copyproperties(object orig,object dest,string prefix,string ignoreproperties) throws illegalacces***ception, invocationtargetexception, nosuchmethodexception

beanutils.copyproperties(map, dest, ignoreproperties);

} private static boolean equals(object orig,object dest)

if((orig instanceof string)&& (dest instanceof string))

return orig.equals(dest);

}}

Model基本結構(操作)

初始化專案結構2.建立django專案2.配置 右擊 編輯配置 templates 主機 192.168.56.100 環境 環境變數 pythonunbuffered 1 django settings module syl.settings 工作目錄 具體以檔案目錄為準 ls wokron進入當...

Objective C中copy屬性的概述

規範上nsstring做屬性都是寫成copy的,理論上應該是複製了字串而不是單純的增加引用計數,其實問題只會出現在把nsmutablestring賦值給nsstring的時候。objective c inte ce demo nsobject property nonatomic,retain ns...

PHP 操作MySQL 來自copy

學習要點 1.php 連線到mysql 2.增刪改查 3.其他常用函式 如果你已經具有了使用php sql 和mysql 的豐富經驗,現在就可以把所有這些技術 組合在一起。php 與mysql 之間穩固的整合只是眾多程式設計師採納它的乙個原因,還有乙個 原因就是,它如此的簡單方便。一 php連線到m...