现在我定时每五分钟从数据中的表查询出来,然后生成log文件要求如下:
1、字段以|分隔,一条数据为一行。字段顺序按照表格中顺序排列
2、dateTime类型的字段以yyyy-mm-dd hh24:mi:ss格式记录
3、每个文件中记录条数不超过5000条或文件大小不超过5000条记录的文件的大小。
4、文件命名规则:stb_base_info_yyyy_mm_dd_hh_mi_ss_*.log谁有这方面的源码!!! 或者给写个例子!!!谢了!

解决方案 »

  1.   

    1,2 通过resultSet.getMetaData()中取;
    3,4 log4j就能直接配置啊,
    疑问在哪
      

  2.   


    因为没写过这个东西,所以木有头绪
    你说的log4j直接配置,怎么配置?
      

  3.   

    1.你可以设置log4j 配置文件
    2.也可以用java根据时间设置定时生成文件。
      

  4.   

    1、不需要没五分钟从数据库中查询数据然后在写成log文件,可以直接生成 log文件的
    2、你这个可以用log4j来配置啥,配置好了就直接生成。
    你真想从数据库中读取数据的话,
    写个定时器吧。
      

  5.   


    String catalog = con.getCatalog();
          DatabaseMetaData dmd = con.getMetaData();
          ResultSet userTables = 
             dmd.getTables(catalog, null, null, new String[] {"TABLE"});
          List<Table> list = new ArrayList<Table>();      try {
             while(userTables.next()) {
                String tableName = userTables.getString(Table.TABLE_NAME);
                Table table = new Table();
                table.setTableName(tableName);            if(!table.isBackupTable()) {
                   continue;
                }            table.setCatalog(catalog);
                table.setSchema(userTables.getString(Table.SCHEMA));
                ResultSet primaryKeys = dmd.getPrimaryKeys(
                    catalog, table.getSchema(), tableName);
                ResultSet tableColumns = dmd.getColumns(
                    catalog, table.getSchema(), tableName, null);
                String sql = "SELECT * FROM " + tableName;
                ResultSet allTableData = stmt.executeQuery(sql);
                EntityBean bean = Mapping.getTable4bean().get(tableName);
                Calendar c = Calendar.getInstance();
                String currentMonth = Tool.dateFormat("yyyyMM", c.getTime());
                c.add(Calendar.MONTH, -1);
                String lastMonth = Tool.dateFormat("yyyyMM", c.getTime());            if(bean != null) {
                   List<BaseBean> beanList = select(sql);
                   list.add(select(sql));
                }
                catch(Exception e) {
                   e.printStackTrace();
                }
                finally {
                   allTableData.close();
                   primaryKeys.close();
                   tableColumns.close();
                }
             }
          }
          catch(Exception e) {
             e.printStackTrace();
          }
          finally {
             userTables.close();
          }      return list;
       }
    自己改改吧。
      

  6.   

    org.apache.log4j.jdbc.JDBCAppender
    没用过,嘿嘿。