java 封装前台数据(一)_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > java 封装前台数据(一)

java 封装前台数据(一)

 2011/10/14 9:38:46  asdf2hjkl  http://kaxi.iteye.com  我要评论(0)
  • 摘要:现在我觉得前台没有必要在用前台数据填充javabean来传向后台来处理数据,如果一个程序有几百个表,是不是要用几百个javabean呢?把前台所有传向后台的数据封装成Map,传向后台也一样处理.publicbooleanisMultipart(){return!StringUtils.isBlank(request.getContentType())&&request.getContentType().indexOf("multipart/form-data")>-1;
  • 标签:Java 数据
   现在我觉得前台没有必要在用前台数据填充javabean来传向后台来处理数据,如果一个程序有几百个表,是不是要用几百个javabean呢?
   把前台所有传向后台的数据封装成Map,传向后台也一样处理.

	public boolean isMultipart() {
		return !StringUtils.isBlank(request.getContentType()) && request.getContentType().indexOf("multipart/form-data") > -1;
	}

	private Map<String, Object> createParamMap() {

		if (isMultipart()) {

			// 含有上传文件
			DiskFileItemFactory factory = new DiskFileItemFactory();
			ServletFileUpload upload = new ServletFileUpload(factory);

			List<FileItem> fileItemList = null;

			try {
				fileItemList = upload.parseRequest(request);
			} catch (Exception e) {
				throw new ServiceException(e);
			}

			for (FileItem fileItem : fileItemList) {

				if (fileItem.isFormField()) {
					paramMap.put(fileItem.getFieldName(), fileItem.getString());
				} else if (fileItem.getSize() > 0) {
					if (!paramMap.containsKey(fileItem.getFieldName())) {
						paramMap.put(fileItem.getFieldName(), new ArrayList<FileItem>());
					}
					((List) paramMap.get(fileItem.getFieldName())).add(fileItem);
				}
			}
		}

		// 把传入的参数放入paramMap(json or get 方式)
		{
			Enumeration paramNames = request.getParameterNames();

			if (paramNames != null) {
				while (paramNames.hasMoreElements()) {
					String paramName = (String) paramNames.nextElement();
					String paramValue = request.getParameter(paramName);
					if (paramName != null && !paramName.equals("")) {
					       paramMap.put(paramName, paramValue);
					}
				}
			}
		}

		return paramMap;
	}

发表评论
用户名: 匿名