`
luozhaoyu
  • 浏览: 343522 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

writeObject与readObject的使用例子

阅读更多
写了一段程序,这段程序是用来:
传入1个用户id以及数据data,
然后在网站的cache目录下生成${employee_id}.ser的文件,把data写进去。
如果该文件存在,则删掉再重新创建下。

    public static ArrayList<HashMap<String, String>> getQueryData(String employee_id) {
        String dataFile = webPath + "cache/" + employee_id + ".ser";
        System.out.println(dataFile);
        ArrayList<HashMap<String, String>> result = new ArrayList<HashMap<String,String>>();
        try {
            ObjectInputStream in = new ObjectInputStream(new FileInputStream(dataFile));
            result = (ArrayList<HashMap<String, String>>) in.readObject();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return result;
    }
    
    public static void writeQueryData(String employee_id, ArrayList<HashMap<String, String>> data) {
        String dataFile = webPath + "cache/" + employee_id + ".ser";
        try {
            File f = new File(dataFile);
            System.out.println(f.getAbsolutePath());
            if (f.exists()) {
                f.delete();
                f.createNewFile();
            }
            System.out.println(f.getAbsolutePath());
            ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(f));
            out.writeObject(data);
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
分享到:
评论

相关推荐

    人工智能-项目实践-搜索引擎-java实验1-实现搜索引擎的倒排索引数据结构

    如果写文本文件,推荐使用PrintWriter,当创建好PrintWriter对象后,调用其println和print方法可以将字符串一行行的写入到文本文件,使用方法与System.out.println, System.out.print完全一样 具体使用方法,请见...

    大话PKG解包工具

    支持AS3的ByteArray序列化对象的AMF格式编码、解码( readObject、writeObject )。 支持AS3的ByteArray的compress、uncompress压缩算法:DEFLATE、LZIB、LZMA。 支持直接修改AS3的ByteArray字节流内编码的对象。 ...

    AMF数据分析器_V22

    支持AS3的ByteArray序列化对象的AMF格式编码、解码( readObject、writeObject )。 支持AS3的ByteArray的compress、uncompress压缩算法:DEFLATE、LZIB、LZMA。 支持直接修改AS3的ByteArray字节流内编码的对象。 ...

    基于JAVA的聊天系统的设计与实现

    在java中使用套接口相当简单,Java API为处理套接口的通信提供了一个类java.net.Socket,使得编写网络应用程序相对容易。服务器采用多线程以满足多用户的请求,并通过创建一个ServerSocket对象来监听来自客户的连接...

    java 混淆工具,不可逆 jocky 也许是最好的了

    事实上,即便不加@preserve指令,Jocky对Java语言特有的一些private级别的方法不进行混淆,譬如,在序列化时有特殊作用的writeObject及readObject方法等。但笔者强烈建议: 针对这些有特殊含义不能够被混淆的 ...

    Jayrock(json字符串解析)

    ser.WriteObject(ms, t); string jsonString = Encoding.UTF8.GetString(ms.ToArray()); ms.Close(); return jsonString; } /// &lt;summary&gt; /// /// JSON反序列化 /// /// &lt;/summary&gt; public static T ...

    Java保存与读取文件.rar

    Java保存与读取文件代码示例,super("存储与读取对象"); //调用父类构造函数  Container container=getContentPane(); //得到容器  Icon imageIcon=new ImageIcon("image.gif"); //实例化一个图标  ...

    joc eclipse plugin

    我们举一个最简单的例子,下面的SimpleBean是未经混淆的class文件通过Jad反编译以后获得的源文件: public class SimpleBean implements Serializable { private String name = \"myname\"; private ...

    AS3的BASE64编码与解码类

    writeObject ( obj ); var encoded : String = Base64 . encodeByteArray ( source ); trace ( encoded ); var decoded : ByteArray = Base64 . decodeToByteArray ( encoded ); obj = decoded . readObject ()...

    jocky 混肴编译rar包(ant和插件俩个版本)

    事实上,即便不加@preserve指令,Jocky对Java语言特有的一些private级别的方法不进行混淆,譬如,在序列化时有特殊作用的writeObject及readObject方法等。但笔者强烈建议: 针对这些有特殊含义不...

    J2SE中的序列化的认识

    只要我们的class 实现了java.io.Serializable接口,就可以利用ObjectOutputStream的writeObject()方法将一个对象序列化;利用ObjectInputStream的readObject()方法,可以返回读出的object对象。Serializable接口...

    Java对象序列化框架Kryo.zip

    kryo.writeObject(output, someObject); output.close(); // ... Input input = new Input(new FileInputStream("file.bin")); SomeClass someObject = kryo.readObject(input, SomeClass.class); ...

    libiec61850规约代码

    该代码包括GOOSE报文,SMV报文的相关处理说明,供电力研发人员参考!

    Objective-C序列化框架KryoCocoa.zip

    [kryo writeObject:someObject to:output]; [output close]; // ... NSInputStream *inputStream = [NSInputStream inputStreamWithFileAtPath:@"file.bin"]; KryoInput *input = [[KryoInput alloc] ...

    java输入输出流 流式输入与输出

    要串行化一个对象,必须与一定的对象输入/输出流联系起来,通过对象输出流...在ObjectInputStream中用readObject()方法可以直接读取一个对象,ObjectOutputStream中用writeObject()方法可以直接将对象保存到输出流中。

    .NET高级代码审计(第七课) NetDataContractSerializer反序列化漏洞1

    0x01 NetDataContractSerializer 序列化使用 WriteObject 或者 Serialize 可以非常方便的实现.NET 对象与

    miscellaneous

    Java****堆栈与堆内存: 对于类中的方法,... 为什么瞬态提供了自定义的readObject和writeObject方法,以实现比默认方法更好的序列化工作。 arraylist的创建方式:具有初始容量的公共arraylist。 可比者与比较者之间的

    可群发,冒号加客户号可指定用户发送的java聊天程序

    String inLine = (String) inputS.readObject(); //System.out.println(inLine); ObjectOutputStream output; if(inLine.charAt(0)==':'&&inLine.length()&gt;0){ int i =0; int...

    基于Java实现学生选课模拟系统之文件输入输出【100011979】

    采用对象序列化的 readObject 方法从文件中恢复对象,并操作学生的选课课表,实现退课操作。 3.打印课程对象信息,采用覆盖定义 toString()方法的方式。 实验步骤 在保持实验三项目中,Course 类,Student 类,...

Global site tag (gtag.js) - Google Analytics