[文件] ModelUtils.java ~ 2KB 下載(0) package com.jfinal.core; import java.util.ArrayList; import java.util.Enumeration; import java.util.HashSet; import java.util.List; import java.util.Set; http://www.haofapiao.com/linked/20130302.do; import javax.servlet.http.HttpServletRequest; import com.jfinal.plugin.activerecord.Model; /** * Model Tools * * @author wangkai * @date Feb 14, 2013 1:43:37 PM * */ public class ModelUtils { /** * 將頁面中的數組目標轉換成List * * @param * @param request * @param modelClass * @param prefix * @return * * @author wangkai * @date Feb 14, 2013 * */ @SuppressWarnings("unchecked") public static List batchInjectModel( final HttpServletRequest request, Class modelClass, String prefix) { List modelList = new ArrayList(); int size = getArrayLength(request, prefix); for (int i = 0; i < size; i ) { modelList.add((T) ModelInjector.inject(modelClass, prefix "[" i "]", request, false)); } return modelList; } /** * Get array key beans[0].ID -->beans[0] beans[1].ID -->beans[1] * * @param request * @param prefix * @return * * @author wangkai * @date Feb 14, 2013 * */ @SuppressWarnings("unchecked") public static Set getArrayKeys(final HttpServletRequest request, String prefix) { Set keys = new HashSet(); String arrayPrefix = prefix "["; String key = null; Enumeration names = request.getParameterNames(); while (names.hasMoreElements()) { key = names.nextElement(); if (!key.startsWith(arrayPrefix)) { continue; } if (key.indexOf("]") == -1) { continue; } keys.add(key.substring(0, key.indexOf("]") 1));// Get all bean[X] } return keys; } /** * Get array length * * @param request * @param prefix * @return * * @author wangkai * @date Feb 14, 2013 * */ public static int getArrayLength(final HttpServletRequest request, String prefix) { return getArrayKeys(request, prefix).size(); } } http://rz.aaafaipiao.com/linked/20130302.do;