我想讲数据库的某个表的记录备份到XML文件中,如果记录很多时,会不会造成outOfMemory?

airlulu 2003-08-31 08:30:29
我是用JDOM的,先从数据库把记录都读出来,然后用JDOM根据记录生成Element,最后一次过写到文件中.
问题是,如果记录条数很多时,岂不是要用JDOM生成大量的对象?比如1W条记录,就需要实例化6W个对象(每条记录有5个属性),这样会不会造成out of memory?
如果会的话,怎么解决?
(最好能有示范代码)
谢谢!!!
...全文
64 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
airlulu 2003-09-03
  • 打赏
  • 举报
回复
测试过,当数据为100000时,仍然可以工作~~
neuhawk 2003-09-03
  • 打赏
  • 举报
回复
jdom慢,也耗内存,不是很好,换!
airlulu 2003-09-03
  • 打赏
  • 举报
回复
应该是用 jdk的io类吧,JDOM没有提供直接操作文件的方法。
  • 打赏
  • 举报
回复
shine333(shine):你好,我也碰到楼主遇到的问题,请问如何将几个文件合并到一起,是用JAVA的文件处理类,还是用JDOM的文件处理类,这一点我一直没有明白。请您详细说明一下不知可可以!

静静等待你的回音,谢谢!
shine333 2003-09-01
  • 打赏
  • 举报
回复
分n次,将纪录写道n个文件中,然后合并文件,把重复的头尾去掉
airlulu 2003-09-01
  • 打赏
  • 举报
回复
那有什么解决方法?
airlulu 2003-09-01
  • 打赏
  • 举报
回复
嗯...
虽然麻烦,但也是个方法.
有没有更加简便的方法?
asdmonster 2003-08-31
  • 打赏
  • 举报
回复
jdom会把整个对象全读进内存的,找你的做法即使不会造成out fo memory也会慢的一塌糊涂。
测试管理与QualityCenter培训手册 1、测试流程管理、测试度量方法 按照尽早进行测试的原则,测试人员应该在需求阶段就介入,并贯穿软件开发的全过程。就测试过程本身而言,应该包含以s下几个阶段。  -测试需求的分析和确定。  -测试计划。  -测试设计。  -测试执行。  -测试记录和缺陷跟踪。  -回归测试。  -测试总结和报告。 一个好的测试管理工具应该能把以上几个阶段都管理起来。 测试人员每每刻都在度量别人的工作成果,而测试人员的工作成果又由谁来度量呢?度量的标准和依据是什么呢?软件测试的度量是测试管理必须仔细思考的问题。缺乏尺度让测试失去平衡,缺乏标准让测试工作难以衡量。 2、如何搭建测试管理平台? 首要问题是流程的规范化。 (1) 测试进入和退出标准。 (2) 协作流程。 (3) 缺陷跟踪管理流程。 (4) 工具平台的引入。 目前主流测试管理平台与缺陷跟踪工具: 3、QC(Quality Center)介绍 QC标准测试管理流程 QC支持的应用服务器:Jboss、WebLogic、WebSphere QC支持的数据库:Oracle、SQLServer QC支持的操作系统:Windows、Linux、Solaris 支持群集: 服务器端硬件和数据库要求: Windows: Linux: Solaris: 客户端系统要求: 练习1:安装QC 详见《Mercury Quality Center 9.0 Installation Guide》 Win2003+SQLServerSp4+QC9.0安装示例 1、安装Windows Server 2003 Enterprise Edition、安装IIS邮件服务器 2、安装SQL Server 2000、打上补丁Sp4 安装好SQL Server 2000后注意启动SQLServer服务器 3、安装QC9.0 服务器名称也可以是IP地址 4、启动QC9.0 5、QC9.0安装问题解决 - JBOSS启动不了 原因:8080端口被其他应用程序占用。 用netstat查看谁占用了8080端口 netstat -ano 解决办法1:修改其他程序的端口使用 解决办法2:修改JBOSS的启动端口 JBOSS_HOME\server\default\deploy\jbossweb-tomcat55.sar\server.xml 6、修改IP地址后不能登录QC 解决办法: 在C:\Program Files\Mercury\Quality Center\jboss\server\default\deploy目录下找到10sabin.war 进入10sabin.war\WEB-INF,修改siteadmin.xml的IP地址: 修改数据库的数据: 修改后可以登陆 但是还需要修改以前Project的数据库连接属性 否则提示错误 然后还要修改 C:\Program Files\Mercury\Quality Center\repository\qc的dbcon.txt: qcsiteadmin_db@192.168.1.12.1433. 还有 C:\Program Files\Mercury\Quality Center\repository\qc\Default\QualityCenter_Demo_db的dbid.xml 192.168.1.12 7、Mercury Tours 样例程序 启动:http://192.168.1.2:8080/mtours 注意安装JVM才能“View Calendar” 4、创建和定义测试需求、测试需求管理、跟踪 定义需求 1、查看需求 视图->需求树 2、添加需求 需求->新建需求 输入以下内容 3、添加子需求项 查看需求 ZooIn : CTRL + I ZooOut : CTRL + O 视图->编号 视图->需求网格 视图->筛选/排序->设置筛选器/排序 设置排序字段 设置过滤条件 修改需求 拷贝需求项Cruise Reservation 重命名需求项Cruise Reservation_Copy_1为Hotel Reservation 移动需求项
本课程深入MySQL 分库分各个环节,2023年最新课程。每个章节都以原理深入+实际案例进行解。内容数据库安装,主从同步,和分详解和对应的应用场景及注意事项MySQL在金融互联网行业的企业级安装部署1 安装方式2 安装用户3 目录规范4 操作系统配置5 创建用户6 创建目录7 安装8 配置文件9 安装依赖包10 配置环境变量11 初始化数据库12 重置密码 主从复制,gtid,并行复制_半同步复制_实操案例_常用命令_故障处理1 主从复制原理深入解2 主从复制相关参数3 主从复制架构部署4 从库状态详解5 过滤复制6 什么是GTID?7 GTID主从配置8 gtid维护9 GTID的特点10 工作原理11 gtid相关状态行和变量 MySQL分库分目录章节1.MyCAT分布式架构入门及双主架构1.1 主从架构1.2 MyCAT安装1.3 启动和连接1.4 配置文件介绍2.MyCAT读写分离架构2.1 架构说明2.2 创建用户2.3 schema.xml2.4 连接说明2.5 读写测试2.6 当前是单节点3.MyCAT高可用读写分离架构3.1 架构说明3.3 schema.xml(配置)3.4 文件详解3.4.1 schema标签3.4.2 table标签3.4.3 dataNode标签3.4.4 dataHost3.4 读写测试3.5 故障转移4.MyCAT垂直分4.1 架构4.2 新建4.3 配置mycat4.4 验证6. MyCAT水平分-取模分片取模分片7. MyCAT水平分-枚举分片枚举分片字符枚举配置执行计划的分析8. MyCAT全局与ER全局与ER8.1 全局8.1.1 特性8.1.2 建8.1.3 配置8.1.4 验证8.1.5 分析总结(执行计划)8.2 ER8.2.1 特性8.2.2 建8.2.3 配置8.2.4 测试验证,子是否跟随父记录分片8.2.5 分析总结(执行计划)

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧