import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;/*** @description 使用transient关键字不序列化某个变量*        注意读取的时候,读取数据的顺序一定要和存放数据的顺序保持一致*        * @author Alexia* @date  2013-10-15*/
public class TransientTest {public static void main(String[] args) {User user = new User();user.setUsername("Alexia");user.setPasswd("123456");System.out.println("read before Serializable: ");System.out.println("username: " + user.getUsername());System.err.println("password: " + user.getPasswd());try {ObjectOutputStream os = new ObjectOutputStream(new FileOutputStream("C:/user.txt"));os.writeObject(user); // 将User对象写进文件os.flush();os.close();} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}try {ObjectInputStream is = new ObjectInputStream(new FileInputStream("C:/user.txt"));user = (User) is.readObject(); // 从流中读取User的数据is.close();System.out.println("\nread after Serializable: ");System.out.println("username: " + user.getUsername());System.err.println("password: " + user.getPasswd());} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} catch (ClassNotFoundException e) {e.printStackTrace();}}
}class User implements Serializable {private static final long serialVersionUID = 8294180014912103005L;  private String username;private transient String passwd;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPasswd() {return passwd;}public void setPasswd(String passwd) {this.passwd = passwd;}
}

结果:

read before Serializable:
username: Alexia
password: 123456read after Serializable:
username: Alexia
password: null

Java transient关键字(序列化避免被反序列化获取敏感信息)相关推荐

  1. java使用腾讯地图根据位置获取经纬度信息

    java使用腾讯地图根据位置获取经纬度信息. 直接上代码,这里需要你去腾讯地图注册账号获取一个key值: /***** @author Abell* @descibe 根据位置获取经纬度信息* @da ...

  2. 【web安全】Spring boot heapdump获取敏感信息

    一.概述 微服务是目前较为热门的技术,Spring boot 是 Spring 的一套快速配置脚手架,可以基于Spring boot 快速开发单个微服务,微服务的特点决定了功能模块分布式部署,在不同的 ...

  3. java transient关键字_嗯?你真的会用 Java 序列化机制?

    码农每日一题长按关注,工作日每天分享一个技术知识点. 一.序列化.反序列化概念及其使用场景 1.序列化.反序列化的概念 简单的讲,序列化就是将java对象转化成二进制保存到磁盘中去,反序列化就是从磁盘 ...

  4. java transient关键字_小伙子,你真的搞懂 transient 关键字了吗?

    先解释下什么是序列化 我们的对象并不只是存在内存中,还需要传输网络,或者保存起来下次再加载出来用,所以需要Java序列化技术. Java序列化技术正是将对象转变成一串由二进制字节组成的数组,可以通过将 ...

  5. Java transient关键字使用小记

    哎,虽然自己最熟的是Java,但很多Java基础知识都不知道,比如transient关键字以前都没用到过,所以不知道它的作用是什么,今天做笔试题时发现有一题是关于这个的,于是花个时间整理下transi ...

  6. java transient关键字

    transient的作用及使用方法 我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只 ...

  7. Java transient关键字使用详解

    1. transient的作用及使用方法 我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过 ...

  8. java transient 关键字_java中的transient关键字详解

    前言 说实话学了一段时间java的朋友对于transient这个关键字依旧很陌生基本没怎么用过,但是transient关键字在java中却起到了不可或缺的地位!如果要说讲到,我觉得最可能出现的地方是I ...

  9. java transient 关键字_Java的transient关键字

    一.介绍 Java中的transient关键字,transient是短暂的意思.对于transient 修饰的成员变量,在类实例的序列化处理过程中会被忽略. 因此,transient变量不会贯穿对象的 ...

最新文章

  1. No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
  2. WIDERFACE 数据集
  3. 用Windows API实现多线程--原理例子
  4. 发掘VS2005 SP1 (一)
  5. input发送a.jax_JAX-RS 2.0:服务器端处理管道
  6. 【Java】HashMap源码(1.7)
  7. python列表常用方法实践_python 列表list 常用方法
  8. 信息学奥赛一本通(1130:找第一个只出现一次的字符)
  9. 吴恩达机器学习 7.神经网络参数的反向传播算法
  10. Java-虚拟机-终结方法finalize
  11. 解决UBUNTU FLASH下显示中文为口的办法
  12. stm32 工业按键检测_STM32单片机按键消抖和FPGA按键消抖大全
  13. Windows2003环境下的一键系统安全
  14. 中文NER碎碎念—聊聊词汇增强与实体嵌套
  15. html网页随机抽奖怎么制作,html简单易懂的随机抽奖
  16. <JVM上篇:内存与垃圾回收篇>01-JVM与Java体系结构
  17. uva 11290 - Gangs(卡特兰数)
  18. windowsxp最新版本_雨林木风U盘装系统启动盘制作工具更新最新版9.0
  19. CodeForces 158B Taxi(代数算式解题)
  20. 如何改善自己的语言表达能力?

热门文章

  1. PS(留学动机)的妙用——扭转你的劣势
  2. 提高篇 第一部分 基础算法 第4章 广搜的优化技巧
  3. 29运用声东击西的方法不断引入种子用户
  4. python函数参数学习_python函数学习1
  5. mui HTML5plus 批量上传文件
  6. python读awx文件_ansible awx用法
  7. PHP笔记-双色球例子
  8. 信息安全工程师笔记-综合知识冲刺(四)
  9. MySQL笔记-InnoDB物理及逻辑存储结构
  10. C++笔记-Stack around the variable问题解析