package test;

import java.lang.reflect.Field;

import com.labway.oa.po.Product;

public class Fieldtest {
	public static void main(String[] args) throws Exception {
		Product p=new Product();
		Field[] fields=p.getClass().getDeclaredFields();
		for (Field field : fields) {
			System.out.println(field.getName());
			field.setAccessible(true);
			System.out.println(field.get(p));
			System.out.println(field.getType());
			System.out.println(field.getAnnotations());
			
		}
		
		
	
	}
}
实例:
	//前台修改内容审计
	private void insertSampleShenJiMethod(Sample sample, Sample sample_fenku,
			StringBuffer sb, List<String> mobans) {
		// 前台登记审计
		Field oldFields[] = sample_fenku.getClass().getDeclaredFields();// 获取两个类中所有的属性
		Field newFields[] = sample.getClass().getDeclaredFields();// 获取两个类中所有的属性
		if(null!=sample_fenku.getDue_date()){
			sample_fenku.setDue_date(sample_fenku.getDue_date().substring(0, 10));
		}
		if(null!=sample_fenku.getX_receivedate()){
			sample_fenku.setX_receivedate(sample_fenku.getX_receivedate().substring(0, 10));
		}
		for (int i = 0; i < oldFields.length; i++) {
			Field oldField = oldFields[i];
			// 设置成可以操作private的变量
			oldField.setAccessible(true);
			for (int j = 0; j < newFields.length; j++) {
				Field newField = newFields[j];
				newField.setAccessible(true);
				if (mobans.contains(oldField.getName())) {
					
					// 是否是同一个属性

					if (oldField.getName().equals(newField.getName())
							&& !oldField.getName().equals("changed_on")
							&& !oldField.getName().equals("login_by")
							
							) {
						// 两个值是否相等

						try {
							if (null != oldField.get(sample_fenku)
									&& null != newField.get(sample)) {

								if (!oldField.get(sample_fenku).equals(
										newField.get(sample))) {
									sb.append(oldField.getName() + ":"
											+ oldField.get(sample_fenku) + " →"
											+ newField.get(sample) + "<br/>");

								} else {

								}
							}
							if (null == oldField.get(sample_fenku)
									&& null != newField.get(sample) &&!"".equals(newField.get(sample))) {
								if(!"".equals(newField.get(sample))){
									sb.append(oldField.getName() + ":"
											+ oldField.get(sample_fenku) + " →"
											+ newField.get(sample) + "<br/>");
								}

							}
							if (null != oldField.get(sample_fenku)
									&& null == newField.get(sample)) {
							}

						} catch (IllegalArgumentException
								| IllegalAccessException e) {
							// TODO Auto-generated catch block
							e.printStackTrace();
						}

					}

				}

			}
		}
		Sample_shenji sampleshenji = new Sample_shenji();
		Date date = new Date();

		sampleshenji.setName(sample.getLogin_by());
		sampleshenji.setTime(FORMAT_LONG.format(date));
		sampleshenji.setSample_number(sample.getSample_number());
		sampleshenji.setText_id(sample.getText_id());
		sampleshenji.setContent(sb.toString());
		insertSampleshenji(sampleshenji);
	}