- 浏览: 156716 次
- 性别:
- 来自: 北京
最新评论
-
supremehover:
第8,“内部类名.this.属性名”,应该改为“外部类名.th ...
四种java内部类总结 -
wr665109:
挺不错,讲解很详细
使用XStream是实现XML与Java对象的转换(5)--Object Stream -
forestqqqq:
kongxuan 写道在项目中用过xstream,后来随着接口 ...
使用XStream是实现XML与Java对象的转换(3)--注解 -
kongxuan:
在项目中用过xstream,后来随着接口访问量变大,xstre ...
使用XStream是实现XML与Java对象的转换(3)--注解 -
kongxuan:
这玩意效率不高,对于高并发应用不合适。
使用XStream是实现XML与Java对象的转换(5)--Object Stream
文章列表
1,设置JAVA_HOME一、为了方便引用,比如,你JDK安装在C:\Program Files\Java\jdk1.6.0目录里,则设置JAVA_HOME为该目录路径, 那么以后你要使用这个路径的时候, 只需输入%JAVA_HOME%即可, 避免每次引用都输入很长的路径串;二、归一原则, 当你JDK路径被迫改变的时候, 你仅需更改JAVA_HOME的变量值即可, 否则,你就要更改任何用绝对路径引用JDK目录的文档, 要是万一你没有改全, 某个程序找不到JDK, 后果是可想而知的----系统崩溃!三、第三方软件会引用约定好的JAVA_HOME变量, 不然, 你将不能正常使用该软件, 以后用J ...
九、持久化
在第八节的示例中,当我们操作一组对象时,我们可以指定Writer、OutputStream来写出序列化后的XML数据,我们还可以指定Reader、InputStream来读取序列化后的XML数据。当我们需要写出和读取文件时都需要指定输入输出流 ...
八,Object Stream
之前的例子我们都是直接输出Xml成为String类型或者从String中获得并解析Xml,现在我们要处理输入流和输出流!
1,输出流(ObjectOutputStream)
输出流测试程序如下:
package cn.tjpu.zhw.xml.xstream5;
import java.io.IOException;
import java.io.ObjectOutputStream;
import com.thoughtworks.xstream.XStream;
public class OutMain {
...
七、转换器(Converter)
我们程序中的POJO是千变万化的,而且需求也是千奇百怪的,所以XStream中的内置的转换器的功能不一定能够满足我们的要求,所以我们就需要自己构建转换器。
1,一个基本的转换器
有如下代码:
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;
public class XStreamTest4 {
public static void main(String[] args) {
Per ...
六、使用注解(Annotation)
总是使用XStream对象的别名方法和注册转换器,会让人感到非常的乏味,又会产生很多重复性代码,于是我们可以使用注解的方式来配置要序列化的POJO对象。
1,最基本的注解:类的别名性注解和字段的别名性注解(XStreamAlias)
有这样一段代码:
import com.thoughtworks.xstream.XStream;
public class XStreamTest3 {
public static void main(String[] args) {
XStream stream = new ...
五、使用别名(Alias)
首先,有这样一段Java代码:
import java.util.ArrayList;
import java.util.List;
import com.thoughtworks.xstream.XStream;
public class XStreamTest2 {
public static void main(String[] args) {
Blog teamBlog = new Blog(new Author("Guilherme Silveira"));
te ...
一、简单介绍
XStream是thoughtworks开发的开源框架,用于实现XML数据于Java对象、Json数据的转换。它不需要schema或其他的mapping文件就可以进行java对象和xml文件之间的转换,API调用起来非常方便,并且扩展功能强大。
1,XStream的特点
a)灵活易用:在更高的层次上提供了简单、灵活、易用的统一接口,用户无需了解项目的底层细节
b)无需映射:大多数对象都可以在无需映射的情况下进行序列化与反序列化的操作
项目地址:
http://sourceforge.net/projects/fastjson/
https://code.google.com/p/json-io/
参考文章:
http://www.oschina.net/p/json-io/similar_projects?lang=0&sort=view
项目地址:
https://github.com/alibaba/fastjson
http://sourceforge.net/projects/fastjson/
下载地址:http://code.alibabatech.com/mvn/releases/com/alibaba/fastjson/
文档帮助:http://code.alibabatech.com/wiki/pages/viewpage.action?pageId=2424946
参考文章:
http://www.cnblogs.com/ChengDong/archive/2012/09/14/2684 ...
项目主页:
https://github.com/FasterXML/jackson
http://jackson.codehaus.org/
在线帮助文档:
http://fasterxml.github.io/jackson-core/javadoc/2.2.0/
http://fasterxml.github.io/jackson-databind/javadoc/2.2.0/index.html
http://fasterxml.github.io/jackson-annotations/javadoc/2.2.0/
下载地址:
http://repo1.maven. ...
Gson是Google的开源项目(项目主页:https://code.google.com/p/google-gson/),
Gson在线帮助文档:http://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/index.html
Gson包下载地址:https://google-gson.googlecode.com/files/google-gson-2.2.4-release.zip
示例:
import java.util.ArrayList;
import java.util.Arrays;
impor ...
一、使用clone复制
public class CloneTest {
public static void main(String[] args) {
Person p1 = new Person("张居正",10,new StringBuffer("男"),new Address("北京",3008));
System.out.println("被clone之前的p1=="+p1);
Person p2 = (Person) p1.clone();
...
该示例是在百度上搜到的:
public class TestEnum{
/*最普通的枚举*/
public enum ColorSelect{
red, green, yellow, blue;
}
/* 枚举也可以象一般的类一样添做加方法和属性,你可以为它添加静态和非静态的属性或方法,这跟类的使用是一样的 */
public enum Season {
// 枚举列表必须写在最前面,否则编译出错
winter, spring, summer, fall;
p ...
java.lang.ThreadLocal类的实例,为每一个使用该实例的线程提供一个变量的副本,在线程的内部共享这个副本,其他线程无法获取该线程的变量,这就好像该线程独立拥有该变量一样。
一、结构介绍
ThreadLocal类定义中有一个静态内部类(详见http://forestqqqq.iteye.com/blog/1906653),即ThreadLocalMap类。每一个线程(Thread)内部都有一个ThreadLocal.ThreadLocalMap对象,
public class Thread implements Runnable {
//……
ThreadLoca ...
JNA全称Java Native Access,是一个建立在经典的JNI技术之上的Java开源框架(https://github.com/twall/jna)。JNA提供一组Java工具类用于在运行期动态访问系统本地库(native library:如Window的dll)而不需要编写任何Native/JNI代码。开发人员只要在一个java接口中描述目标native library的函数与结构,JNA将自动实现Java接口到native function的映射。
JNA包:
https://maven.java.net/content/repositories/releases/net/ ...