|
@@ -177,27 +177,17 @@ public class AudioController {
|
|
|
return;
|
|
|
}
|
|
|
for(int i=0; i<audio.getClass().getDeclaredFields().length; i++){
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ try {
|
|
|
+ String fieldName = audio.getClass().getDeclaredFields()[i].getName();
|
|
|
+ System.out.println(fieldName);
|
|
|
+ String value = GetFieldValueByName(fieldName, audio)==null?"":GetFieldValueByName(fieldName, audio).toString();
|
|
|
+ System.out.println(value);
|
|
|
+ if(null==GetFieldValueByName(fieldName, audio) && null!=GetFieldValueByName(fieldName, audioOld))
|
|
|
+ SetFieldValueByName(audio, fieldName, GetFieldValueByName(fieldName, audioOld));
|
|
|
+ }
|
|
|
+ catch (Exception e){
|
|
|
+ System.out.println(e.getMessage());
|
|
|
+ }
|
|
|
}
|
|
|
audio = audioService.Insert(audio);
|
|
|
|
|
@@ -206,6 +196,44 @@ public class AudioController {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ * 根据属性名获取属性值
|
|
|
+ * */
|
|
|
+ private Object GetFieldValueByName(String fieldName, Object o) {
|
|
|
+ try {
|
|
|
+ String firstLetter = fieldName.substring(0, 1).toUpperCase();
|
|
|
+ String getter = "get" + firstLetter + fieldName.substring(1);
|
|
|
+ Method method = o.getClass().getMethod(getter, new Class[] {});
|
|
|
+ Object value = method.invoke(o, new Object[] {});
|
|
|
+ return value;
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error(e.getMessage(),e);
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 用反射设置对象的属性值
|
|
|
+ * @param obj 需要設置值的對象
|
|
|
+ * @param fieldName 需要設置值的屬性
|
|
|
+ * @param value 需要设置的值
|
|
|
+ * @return 设置值后的对象
|
|
|
+ */
|
|
|
+ private Object SetFieldValueByName(Object obj, String fieldName, Object value) {
|
|
|
+ try{
|
|
|
+ String firstWord = fieldName.substring(0, 1).toUpperCase();
|
|
|
+ String methodName = String.format("set%s%s", firstWord, fieldName.substring(1));
|
|
|
+ Method method = obj.getClass().getMethod(methodName, value.getClass());
|
|
|
+ method.invoke(obj, value);
|
|
|
+ }catch (Exception e) {
|
|
|
+ System.out.println(e.getMessage());
|
|
|
+ log.error(e.getMessage(), e);
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ return obj;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
* 过滤出渠道有访问权限的音频列表
|
|
|
* @param audioList
|
|
|
* @param rightsList
|