public JSONObject toJSONObject() {
		JSONObject json = new JSONObject(this);
		json.put("_id", get_id());
		Map<String, Method> methodMap = new HashMap<String, Method>();
		for (Method method : this.getClass().getMethods()) {
			methodMap.put(method.getName(), method);
		}
		for (Object key : json.keySet()) {
			String methodName = "get" + upperFirst((String) key);
			if (methodMap.containsKey(methodName) && methodMap.get(methodName) != null) {
				Method method = methodMap.get(methodName);
				if (method != null && method.getReturnType() == Date.class) {
					//时间类型转换成毫秒记录
					try {
						Object obj = method.invoke(this, null);
						if (obj != null && obj instanceof Date) {
							json.put((String) key, ((Date) obj).getTime());
						}
					} catch (Exception e) {
						continue;
					}
				}
			}
		}
		return json;
	}