- 浏览: 98397 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
xqxmh:
哈哈哈哈哈哈
12月编程语言榜单公布 C#等评级创新高 - CSDN新闻 -
niechanggang:
这个图片很是形象,linux也来祭奠了。。
【转】悼念一个伟大的公司——Sun - CSDN新闻
关键字: java serializablejava继承serislizable接口,简单说就是为了保存在内存中的各种对象的状态(也就是实例变量,不是方法),并且可以把保存的对象状态再读出来。实现了Java对象的序列化。
在一下情况可以考虑使用序列化:
a)当你想把的内存中的对象状态保存到一个文件中或者数据库中时候;
b)当你想用套接字在网络上传送对象的时候;
c)当你想通过RMI传输对象的时候;示例:
- public class Order implements java.io.Serializable {
- private Long id;
- private String code;
- private String name;
- }
public class Order implements java.io.Serializable { private Long id; private String code; private String name; }将order对象写入流中:
- public InputStream getOrderInfoAsStream(Order order) {
- InputStream ret = null;
- ByteArrayOutputStream baos = null;
- ObjectOutputStream ous = null;
- if (order == null) {
- return ret;
- }
- try {
- baos = new ByteArrayOutputStream();
- ous = new ObjectOutputStream(baos);
- ous.writeObject(order);
- ret = FileUtil.getInputStreamFromBytes(baos.toByteArray());
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- try {
- if (baos != null) {
- baos.close();
- }
- if (ous != null) {
- ous.close();
- }
- } catch (Exception e) {
- }
- }
- return ret;
- }
public InputStream getOrderInfoAsStream(Order order) { InputStream ret = null; ByteArrayOutputStream baos = null; ObjectOutputStream ous = null; if (order == null) { return ret; } try { baos = new ByteArrayOutputStream(); ous = new ObjectOutputStream(baos); ous.writeObject(order); ret = FileUtil.getInputStreamFromBytes(baos.toByteArray()); } catch (Exception e) { e.printStackTrace(); } finally { try { if (baos != null) { baos.close(); } if (ous != null) { ous.close(); } } catch (Exception e) { } } return ret; }将对象从流中读出:
- public Order getOrder(InputStream is) {
- Order ret = null;
- ObjectInputStream ois = null;
- try {
- if (is != null) {
- ois = new ObjectInputStream(is);
- ret = (Order) ois.readObject();
- }
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- try {
- if (ois != null) {
- ois.close();
- }
- } catch (Exception e) {
- }
- }
- return ret;
- }
Java的Serializable处理 - 皇马啸西风的一亩三分地 - JavaEye技术网站
发表评论
-
数据库数据批量SQL导出工具
2011-07-04 16:05 1347好久没有完整的编码了,没有了code带来的乐趣,每天忙碌与b ... -
ultraedit 中中文乱码 的解决方法
2010-08-25 08:24 0ultraedit 中中文乱码 的解决方法 问题:同样的一个 ... -
was配置jms 进行mq的访问方法
2010-09-07 08:24 01、 软件准备,mq、was均安装完毕,此处使用的是mq ... -
db2 ERRORCODE=-4499, SQLSTATE=08001
2010-09-19 06:50 45021、 db2 ERRORCODE=-4499, SQLSTAT ... -
ultraedit 中中文乱码 的解决方法
2010-08-25 08:24 2328ultraedit 中中文乱码 的解决方法 问题:同样的一个 ... -
was配置jms 进行mq的访问方法
2010-09-07 08:24 15801、 软件准备,mq、was均安装完毕,此处使用的是mq ... -
Hibernate3.3使用手册下载chm版
2010-07-15 13:57 1021Hibernate3.3使用手册下载chm版,欢迎下载 -
利用P6SPY +SQL Profiler记录、统计web app对数据库的操作。 - 每日E读 - BlogJava
2010-07-13 05:14 919弄hibernate时,想显示 ... -
P6SPY结合SQL Profile进行数据库调优
2010-07-13 07:51 1048使用p6spy进行数据库操作执行时间的记录极大的方便了数据库程 ... -
设计模式学习笔记,不断更新中……
2010-06-21 03:05 6992010-6-21 设计模式不过是在编程过程中需要遵守的一些 ... -
java容器分类图
2010-05-29 03:07 1000做个笔记 -
关于Hibernate获取JDBC连接 直接执行SQL - 客观,辩证,务实,创新 - JavaEye技术网站
2010-06-09 07:58 1012关于Hibernate获取JDBC连接 直接执行SQL关 ... -
NIO入门pdf分享
2010-04-13 14:39 1165根据IBM developerwork上的教材整理的pdf文档 ... -
守护线程 - walkes - JavaEye技术网站
2010-04-08 01:51 626守护线程 关键字: 守护线程 守护线程是为其他线程的运 ... -
同步、异步、长连接、短连接
2010-04-08 02:24 1747四个概念对应于网络连 ... -
【转】GEF+EMF Step By Step (转) - 嘟嘟 - BlogJava
2010-04-06 04:55 860学习GEF的曲线还是比较陡峭的,建议按照以下步骤来学(要求先熟 ... -
Java 理论与实践: 使用通配符简化泛型使用
2010-04-07 06:37 587Java 理论与实践: 使用通配符简化泛型使用 理解通配 ... -
draw2d
2010-03-29 22:28 620draw2d,画图简单,n多东西的页面展示搞得我筋疲力尽,稳住 ... -
MQ大大降低了程序的耦合性
2010-03-25 03:20 681通过同一个MQ队列的消息读取,可以将不同的程序模块联系起来,大 ... -
关于strtus2上传文件的问题
2010-03-17 06:26 7631、 strtus2在上传文件时,同样将java.io.Fil ...
相关推荐
java->serializable深入了解 java->serializable深入了解 java->serializable深入了解
java 序列化 对象 Serializable 写着玩的Demo 简单 实用
3. 错误处理:提供异常处理机制,当遇到无法序列化或反序列化的值时,能够优雅地处理错误。 4. 性能优化:通过高效的算法和策略,减少序列化和反序列化的时间开销。 5. 安全性增强:可能包括对敏感数据的加密处理,...
Java的序列化与反序列化是Java开发中的一项重要技术,它允许我们将对象的状态转换为字节流,以便存储或在网络上传输。`Serializable`接口是Java提供的一个标记接口,用于实现对象的序列化。当一个类实现了这个接口,...
在这个“java输入输出--java实例17例”中,我们可以期待学习到一系列关于Java I/O的实用示例代码。 1. **基础流与缓冲流**:Java的基础流包括字符流(Reader和Writer)和字节流(InputStream和OutputStream),它们...
### Java.io.Serializable 序列化问题详解 #### 一、序列化的概念与作用 在 Java 编程语言中,序列化是一种将对象的状态(即成员变量的值)转换为可以存储或传输的形式的过程。通常,这种形式是字节流,但也可以是...
### Java Serializable(序列化)的理解和总结 #### 一、序列化的定义与目的 序列化是一种将对象的状态转换为可以存储或传输的形式的过程。在Java中,如果一个类实现了`Serializable`接口,那么该类的对象就可以被...
Java Bean是一种特殊的Java类,它遵循特定的编程和设计规范,主要用于组件开发,尤其是在Java Swing图形用户界面(GUI)中。这些组件可以被其他Java应用程序重用,增强了代码的可复用性和互操作性。在给定的"java-...
MySQL是一个广泛应用的关系型数据库管理系统,而Java是一种广泛用于开发后端服务的编程语言。当我们在用Java处理数据库相关业务时,经常需要将MySQL数据库中的表结构映射到Java对象,即实体类(Entity Class),以便...
Java语言是一种广泛应用于开发各种类型软件的面向对象的编程语言,尤其在企业级应用和Web应用领域中占有重要地位。本通讯录源代码是利用Java语言实现的一个实用工具,旨在帮助用户管理和查找联系人信息。下面我们将...
1. 将`mysql-connector-java-8.0.26.jar`文件添加到项目的类路径中,或者如果你使用的是Maven或Gradle,可以在pom.xml或build.gradle文件中添加相应的依赖。 2. 创建数据库连接,例如: ```java import java.sql....
### Java IO概述 Java IO(Input/Output)是Java编程...随着技术的发展,Java IO也在不断地演进和完善,例如NIO(New IO)和AIO(Asynchronous IO)等新技术的引入,使得Java IO能够更好地适应现代高性能计算的需求。
根据给定文件的信息,我们可以提炼出以下与Java面试相关的知识点: ### 1. 浮点类型赋值 在Java中,对于浮点类型的赋值,需要注意类型匹配问题。例如: - `float f = 3.4` 这样的写法是不正确的,因为3.4默认为`...
在本项目中,"基于Java的P2P--多用户在线聊天室"是一个实现多人实时通信的系统,它利用了Java编程语言的强大功能以及P2P(对等网络)架构来构建。P2P网络是一种分布式网络模型,其中每个参与者(节点)既是服务消费...
《ON JAVA中文版-精读PPT》是一个深入解析Java编程语言的资源,它通过精心设计的PPT形式,提炼了书籍中的核心知识点,旨在帮助读者高效地理解和掌握Java编程技术。作为一款软件/插件学习资料,这个PPT涵盖了Java语言...
MySQL Connector/J 8.0.16 是 MySQL 数据库与 Java 应用程序之间的关键桥梁,它是一...通过这个压缩包提供的 `mysql-connector-java-8.0.16.jar` 文件,你可以轻松地将其集成到你的项目中,享受最新的 MySQL 连接功能。
- 调用`ObjectOutputStream.writeObject()`:通过`ObjectOutputStream`的`writeObject()`方法将对象写入输出流,这个过程会递归地处理对象的所有属性,包括引用的对象。 - 写入`serialVersionUID`:在序列化过程中...
Java中的Serializable接口是java.io包中定义的,用于实现Java类的序列化操作而提供的一个语义级别的接口。Serializable序列化接口没有任何方法或者字段,只是用于标识可序列化的语义。实现了Serializable接口的类...
json-lib还提供了许多其他功能,如JSON对象的操作、JSONPath查询等,可以帮助开发者更加灵活地处理JSON数据。 总结起来,json-lib库为Java开发者提供了一种简单易用的方式来处理JSON数据,包括将Java对象转换为JSON...
Java序列化是Java平台提供的一种持久化机制,它允许我们将一个对象的状态转换成字节流,以便存储到磁盘上或者在网络中进行传输。这个过程称为对象的序列化,而相反的过程,将字节流恢复为原来的对象状态,称为反序列...