有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

sql Java创建将写入文件的增量textobject

我需要一些关于如何以一种好的方式做到这一点的意见

我的应用程序今天是这样工作的

它从sql server读取一个记录集,循环遍历该记录集,并创建以分号分隔的数据行,并将其放入ArrayList<String>

我将此ArrayList发送给一个输出类,该类打开一个filewriter,并在ArrayList中循环打印所有行,并在每行添加一个换行符

但是现在我想用这种方式编辑函数

记录集出现时,每次分号行完成时,我都会在该行上输入一些验证方法,以检查其有效性。如果行有效,则上面的内容不应更改。但如果该行无效,则应将整个“文档”(连接到此无效行的所有行)发送到错误输出

因此,我正在寻找如何建立一种良好的机制,以便能够为记录集的每个循环保存数据行,然后将文档(所有附加行)发送给好数据或坏数据编写器

这里的技巧是,创建的分号行由header和X行组成,有时由header、Subheader和X行组成。因此,如果其中一行失败,我希望本应附加到该标题的所有行都归入错误输出

我认为有更好的方法来应用我试图做的事情,可能是用JAVA的方式,因为我主要是一名PHP程序员,在我的JAVA技能达到现在的水平之前很久我就开始了这个项目


共 (1) 个答案

  1. # 1 楼答案

    如果验证逻辑不太复杂,我会过滤sql语句中的行。 另一种方法是放弃分号表示,转而使用对象,这样您就可以简单地删除对象及其子对象。考虑使用类似对象列表:

    public class Data {
    
        private Object header;
        private Object subHeader;
        private List<Object> rowData;
        private List<Data> children;
        //Constructors, getters setters, equal, hash, toString
    }
    

    通过在示例a List<Data>中构建层次结构,您可以简单地删除一个对象(或将其发送到任何您想要的地方),并且通过重写toString,您根本不需要构建字符串数组。如果需要,equal和hash等方法也是如此