原 数据接收和数据返回呈现,都用一个类代替

import java.util.Collection; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Set;

import javax.servlet.http.HttpServletRequest;

public class Record extends HashMap implements Map {

    private static final long serialVersionUID = 1L;

    Map map = null;     HttpServletRequest request;

    public Record(HttpServletRequest request) {         this.request = request;         Map properties = request.getParameterMap();         Map returnMap = new HashMap();         Iterator entries = properties.entrySet().iterator();         Map.Entry entry;         String name = "";         String value = "";         while (entries.hasNext()) {             entry = (Map.Entry) entries.next();             name = (String) entry.getKey();             Object valueObj = entry.getValue();             if (null == valueObj) {                 value = "";             } else if (valueObj instanceof String[]) {                 String[] values = (String[]) valueObj;                 for (int i = 0; i < values.length; i++) {                     value = values[i] + ",";                 }                 value = value.substring(0, value.length() - 1);             } else {                 value = valueObj.toString();             }             returnMap.put(name, value);         }         map = returnMap;     }

    public Record() {         map = new HashMap();     }

@Override     public Object get(Object key) {         Object obj = null;         if (map.get(key) instanceof Object[]) {             Object[] arr = (Object[]) map.get(key);             obj = request == null ? arr : (request.getParameter((String) key) == null ? arr : arr[0]);         } else {             obj = map.get(key);         }         return obj;     }

    public String getString(String key) {         try {             String result= get(key).toString();             if (!"".equals(result)&&null!=result) {                 return result;             }         } catch (Exception e) {             // TODO: handle exception         }         return null;     }     public Integer getInteger(Object key) {         try {             return Integer.parseInt(get(key).toString());         } catch (Exception e) {             // TODO: handle exception             return null;         }     }     public Long getLong(Object key) {         try {             return Long.parseLong(get(key).toString());         } catch (Exception e) {             // TODO: handle exception             return null;         }     }     @SuppressWarnings("unchecked") @Override     public Object put(Object key, Object value) {         return map.put(key, value);     }

@Override     public Object remove(Object key) {         return map.remove(key);     }

    public void clear() {         map.clear();     }

    public boolean containsKey(Object key) {         // TODO Auto-generated method stub         return map.containsKey(key);     }

    public boolean containsValue(Object value) {         // TODO Auto-generated method stub         return map.containsValue(value);     }

    public Set entrySet() {         // TODO Auto-generated method stub         return map.entrySet();     }

    public boolean isEmpty() {         // TODO Auto-generated method stub         return map.isEmpty();     }

    public Set keySet() {         // TODO Auto-generated method stub         return map.keySet();     }

    @SuppressWarnings("unchecked")     public void putAll(Map t) {         // TODO Auto-generated method stub         map.putAll(t);     }

    public int size() {         // TODO Auto-generated method stub         return map.size();     }

    public Collection values() {         // TODO Auto-generated method stub         return map.values();     }

}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序你好

Java中创建对象的方式

1063
来自专栏desperate633

Serialization in JavaSerializable in JavaClass Refactoring with Serialization and serialVersionUIDJa

我们知道Java对象的生存周期跟GC有关,更宽泛一点讲,JVM关闭了,对象自然也就被销毁了。但是有的时候,我们需要将某些对象保存起来,或者进行传输,以便以后JV...

963
来自专栏五毛程序员

java反射机制入门3

2647
来自专栏yl 成长笔记

装饰器模式

853
来自专栏代码拾遗

​Java反射详解

反射的概念是软件可以在运行时,检查,分析,修改代码。例如:在Junit中,使用@Test注解等。 在Java中,通过反射可以在运行时检查字段,方法,类,接口,注...

1213
来自专栏有趣的Python

7-Java面向对象-多态

本次课程围绕: 什么是多态? 多态在程序设计中的优势? 在Java中如何实现多态?

994
来自专栏Java编程

Java中创建对象的5种方式

作为Java开发者,我们每天创建很多对象,但我们通常使用依赖管理系统,比如Spring去创建对象。然而这里有很多创建对象的方法,我们会在这篇文章中学到。

1.9K2
来自专栏技术小站

(转) Java 静态代码块和非静态代码块

Java中的静态代码块是在虚拟机加载类的时候,就执行的,而且只执行一次。如果static代码块有多个,JVM将按照它们在类中出现的先后顺序依次执行它们,每个代码...

771
来自专栏cmazxiaoma的架构师之路

通过循环引用问题来分析Spring源码

本文主要分析Spring的循环依赖问题。开始正文之前,我们需要定义这2个类。LoopReferenceA中引用LoopReferenceB,LoopRefere...

792
来自专栏Java开发者杂谈

java序列化反序列化深入探究

When---什么时候需要序列化和反序列化: 简单的写一个hello world程序,用不到序列化和反序列化。写一个排序算法也用不到序列化和反序列化。但是当你想...

3359

扫码关注云+社区