- 浏览: 748315 次
- 性别:
- 来自: 上海
-
文章分类
- 全部博客 (419)
- 杂软粉墨 (2)
- 创意灵感 (3)
- 经验记录 (137)
- 开源轨迹 (2)
- sip-communicator (2)
- 闲侃杂谈 (8)
- 问题交流 (24)
- 概念模式 (32)
- 难点备案 (5)
- JwChat (1)
- 中国象棋 (1)
- 教育探索 (6)
- 英语研究 (58)
- 星际争霸 (1)
- 电信知识 (1)
- 软件架构 (3)
- 哲学探索 (26)
- 算法灵魂 (8)
- 近视探索 (6)
- 数学数学 (3)
- 牛角钻尖 (23)
- 至强文言 (3)
- 数据结构 (1)
- 宇宙物理 (2)
- 网络架构 (3)
- 游戏领域 (4)
- 图形处理 (2)
- 修炼之路 (8)
- 读书天地 (20)
- 编解乱码 (2)
- 概念探索 (8)
- 格物致知 (1)
- 其它语言 (1)
- 测试领域 (3)
- 文化风流 (1)
- JQuery (1)
- 網頁領域 (1)
- Unix/Linux (1)
- Inside JVM (1)
- 异常分析 (1)
最新评论
-
suyujie:
引用
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
iamzhoug37:
您能说一下"局部变量不受文本顺序限制" 是 ...
声明前为什么能赋值却不能输出,都是使用
import java.io.IOException; import javax.xml.bind.JAXBException; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; @XmlAccessorType(XmlAccessType.NONE) @XmlRootElement(name = "jmeld") public class JMeldSettings { // class variables: public static JMeldSettings instance; // Instance variables: @XmlElement(name = "editor") private String editor = "editor"; @XmlElement(name = "filter") private String filter = "filter"; @XmlElement(name = "folder") private String folder = "folder"; public JMeldSettings() { } public static synchronized JMeldSettings getInstance() { if(instance == null) { synchronized(JMeldSettings.class) { if(instance == null) { instance = new JMeldSettings(); } } } return instance; } /** * Save a configuration to a file. */ public void save(JMeldSettings configuration) throws JAXBException, IOException { JaxbPersister.getInstance().save(configuration); } public static void main(String[] args) { try { getInstance().save(getInstance()); } catch(JAXBException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch(IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.Writer; import java.util.HashMap; import java.util.Map; import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; import javax.xml.bind.Marshaller; import javax.xml.bind.Unmarshaller; public class JaxbPersister { // class variables: private static JaxbPersister instance = new JaxbPersister(); // instance variables: private Map<Class, Context> contexts = new HashMap<Class, Context>(); private JaxbPersister() { } public static JaxbPersister getInstance() { return instance; } /** * Load a object of type 'clazz' from a file. */ public <T> T load(Class<T> clazz, File file) throws FileNotFoundException, JAXBException { return load(clazz, new FileInputStream(file)); } /** * Load a object of type 'clazz' from a file. */ public <T> T load(Class<T> clazz, InputStream is) throws JAXBException { Context context; T object; context = getContext(clazz); synchronized(context) { object = (T) context.unmarshal(is); return object; } } /** * Save an object to a file. */ public void save(Object object) throws JAXBException, IOException { OutputStream os; File file = new File("JMeldSettings.xml"); os = new FileOutputStream(file); save(object, os); os.close(); } /** * Save a object to a outputstream. */ private void save(Object object, OutputStream os) throws JAXBException, IOException { Writer writer; Context context; writer = new OutputStreamWriter(os); context = getContext(object.getClass()); synchronized(context) { context.marshal(object, writer); } } /** * Each class has it's own context to marshal and unmarshal. The context * contains a jaxbcontext. */ private Context getContext(Class clazz) { Context c; synchronized(contexts) { c = contexts.get(clazz); if(c == null) { c = new Context(clazz); contexts.put(clazz, c); } } return c; } class Context { private JAXBContext jaxbContext; private Marshaller marshaller; private Unmarshaller unmarshaller; Context(Class clazz) { try { jaxbContext = JAXBContext.newInstance(clazz); marshaller = jaxbContext.createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); marshaller.setSchema(null); unmarshaller = jaxbContext.createUnmarshaller(); unmarshaller.setSchema(null); } catch(JAXBException e) { e.printStackTrace(); } } public void marshal(Object object, Writer writer) throws JAXBException { marshaller.marshal(object, writer); } public Object unmarshal(InputStream is) throws JAXBException { return unmarshaller.unmarshal(is); } } }
两个类,将内存中的xml信息持久化入文件
发表评论
-
关于方法访问控制符protected
2012-11-29 10:38 1268http://bbs.csdn.net/topics/3902 ... -
一个基本问题关于引用的
2012-05-15 10:20 1130问: int a = 1; Integer b = new ... -
我對面向對象和過程的理解。
2012-05-02 08:30 1068我的一些理解。 面向过程,是对客观现象的描述,感觉是有一个上 ... -
stack and heap
2012-01-13 23:17 1054我觉得是根据应用方式 和本身特性 才将内存分区的,目的是提 ... -
program experience conclusion
2011-07-11 15:35 10681. check parameters for validit ... -
PreparedStatement's possible designated parameter
2011-04-29 13:45 991though it's nearly impossible t ... -
clean Log4j
2011-04-12 11:19 1069import org.apache.log4j.BasicCo ... -
about abstract class
2011-04-02 10:34 871yes, we do know abstract class ... -
cvs operations on linux
2011-03-25 09:40 1016http://www.linuxhowtos.org/Syst ... -
regex to exchange two parts
2011-03-24 17:09 1096public class Test { public ... -
About the database locking
2011-03-09 11:02 967http://en.wikipedia.org/wiki/Lo ... -
how to send soap message in java
2011-03-08 10:29 1898import java.io.BufferedReader; ... -
About ShutDownDemo
2011-03-07 15:02 985public class ShutdownDemo { p ... -
How do you know if an explicit object casting is needed
2011-02-24 16:33 1192通俗来讲,不可能将一只是猫的动物强转为狗 再说Graphic ... -
有关MimeUtility
2011-02-24 13:11 3368import java.io.UnsupportedEncod ... -
C#连接sql server 2008的一件2事
2011-02-24 09:01 2157once upon a time, i came upon o ... -
Shadowing, Overriding, Hiding and Obscuring
2011-02-22 15:15 1168当子类属性与父类属性重叠时 这种叫法上是shadowi ... -
JAXP usage
2011-02-16 16:07 1104import java.io.ByteArrayInputSt ... -
运行一个类,如果classpath中路径带空格就加双引号
2011-02-11 11:25 2810注意是这样加: java -cp .;"d:\my ... -
关于ClassPath中的current directory
2011-01-28 16:40 1156Given: 1. package com.company. ...
相关推荐
在实际项目中,XML序列化器可以用于保存应用状态、持久化数据、在网络请求中传递数据等场景。使用一个简洁的库可以极大地提高开发效率,同时减少错误的可能性。"12xml序列化器"作为一个专为Android设计的工具,可能...
在Java持久化领域,Hibernate是一个不可或缺的框架,它提供了强大的对象关系映射(ORM)能力。本文将深入探讨Hibernate中的组件映射,包括使用注解(Annotation)和XML配置两种方式,以帮助开发者更好地理解和应用这...
Hibernate是Java领域的一个持久化框架,主要用于数据库操作。在Hibernate3.5.1版本中,注解(@Entity、@Table、@Id等)可以用来标注实体类和属性,实现ORM(对象关系映射)。同时,Hibernate也可以通过hibernate.cfg....
以上是对Hibernate Annotation的简要介绍,深入理解和熟练应用这些注解,将有助于提升你在Java持久化领域的专业技能。对于更详细的用法和高级特性,建议查阅《Hibernate Annotations参考文档-3.20》这份资料,以获取...
本设计源码提供了一个基于Java的Hibernate MySQL数据持久化示例。项目包含47个文件,主要使用Java编程语言。文件类型包括30个Java源代码文件、13个XML配置文件、2个Properties配置文件、1个Git忽略文件和1个Markdown...
在Java的持久化框架Hibernate中,一对一双向外键关联是一种常见的关系映射方式,用于表示两个实体类之间一对一的关联关系。在这个场景下,每个实体都有一个引用指向另一个实体,形成双向关联。本篇文章将深入探讨...
在Java的持久化框架Hibernate中,多对多(Many-to-Many)关联是一种常见的关系映射类型,它用于表示两个实体之间可以有多个对应的关系。本篇将详细讲解如何使用Hibernate实现多对多单向关联,包括注解(Annotation)...
在IT领域,序列化与反序列化是两个关键的概念,特别是在数据存储、网络传输和对象持久化中。这里我们关注的是用友U8系统中的XML序列化和反序列化。用友U8是一款广泛应用于企业管理的ERP(企业资源计划)系统,而XML...
在Java的持久化框架Hibernate中,一对多(Many-to-One)和多对一(One-to-...通过注解或XML配置,开发者可以灵活地定义实体间的关联,实现数据的持久化。同时,注意级联操作、懒加载策略等细节,能够有效优化应用性能。
在Java的持久化框架Hibernate中,多对多(Many-to-Many)关联是常见的关系映射类型,尤其在处理数据库中的复杂关系时显得尤为重要。本主题将深入探讨使用Hibernate进行多对多双向关联的实现,既可以通过注解...
本篇文章将探讨如何在Spring中实现定时调度,并将调度信息持久化到数据库中,这在实际业务场景中非常重要,因为能够确保任务的稳定性和可管理性。 首先,我们需要理解Spring的定时任务调度机制。Spring提供了`@...
在Java的持久化框架Hibernate中,多对一的单向关联是一种常见的关系映射方式,它主要用于处理数据库中两个实体间的一种关联关系。在这种关系中,一个实体(多个实例)可以与另一个实体(单个实例)相关联。本文将...
HIBERNATE - 符合Java习惯的关系数据库持久化 Hibernate参考文档 3.2 -------------------------------------------------------------------------------- 目录 前言 1. 翻译说明 2. 版权声明 1. Hibernate...
5. **持久化更新**:如果你的处理器需要在不同编译周期之间保持状态,可以使用`ProcessingEnvironment`中的`Options`来存储信息。这在处理复杂的元数据模型时非常有用。 6. **测试与使用**:为了确保处理器正确工作...
在Java的持久化框架中,Hibernate是一个非常重要的工具,它提供了强大的对象关系映射(ORM)功能,使得开发者可以通过面向对象的方式操作数据库。本案例主要探讨的是Hibernate 4.3.8版本中如何使用注解和XML配置实现...
工具可以分析注解并自动生成代码、XML 文件等,如生成序列化代码、持久化代码、客户端代码等。 ### 结论 Java Annotation 提供了一种强大的机制,让开发者能够更有效地管理代码,减少模板代码,提高代码的可读性...
在Java的持久化框架Hibernate中,一对多关系是常见的实体关联类型,表示一个实体可以与多个其他实体相关联。在本教程中,我们将探讨如何使用注解和XML配置实现Hibernate的一对多单向关联。 首先,让我们理解一对多...
* 不需要定义持久化类对应的*.hbm.xml 文件,直接以注解方式写入在持久化类中来实现。 * 提供一种强大及灵活的方法来声明持久性映射。 要使用 Hibernate Annotation,您至少需要具备 Hibernate 3.2 和 Java 5。可以...
Hibernate是一个流行的Java持久化框架,它简化了数据库操作,使得开发者可以更专注于业务逻辑而不是底层的数据访问细节。在Hibernate 3.3版本中,引入了Annotation API,这是一种更加直观、简洁的方式来声明对象-...