⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 inbookimpl.java

📁 java私塾里的图书进销存项目的源代码,非常不错,J2SE基础知识复习非常有帮助!
💻 JAVA
字号:
package cn.javass.bookmgr.inbook.dao.impl;

import cn.javass.bookmgr.inbook.valueobject.*;
import cn.javass.bookmgr.inbook.dao.dao.*;

import java.io.*;
import java.util.*;
import cn.javass.bookmgr.util.fileutil.FileOpe;
/**
 * 进货模块数据操作的具体实现类
 *
 * <p>Title: Java私塾第一个Java项目——图书进销存系统(单机版)</p>
 * <p>Description: 网址:<a href="http://www.javass.cn">http://www.javass.cn</a>
 * 新电话:010-86835215   新地址:北京市海淀区厂洼路5号院深博达商务楼5层</p>
 * <p>Copyright: Copyright (c) 2008</p>
 * <p>Company: Java私塾</p>
 * @author Java私塾
 * @version 1.0
 */
public class InBookImpl implements InBookDAO{
  /**
   * 用于保存进货模块进货主记录数据的文件名,路径省略,为当前类所在的classpath根路径
   */
  private final String FILE_NAME = "InMain.txt";
  /**
   * 用于保存进货模块进货子记录数据的文件名,路径省略,为当前类所在的classpath根路径
   */
  private final String FILE_DETAIL_NAME = "InDetail.txt";

  public boolean saveData(Map map){
    //拼接用于文件输出的字符串
    StringBuffer buffer = new StringBuffer("");
    //循环目前内存中的Map值
    Iterator it = map.keySet().iterator();
    while(it.hasNext()){
      String key = (String)it.next();
      //获取需要输出的数据
      InBookModel um = (InBookModel)map.get(key);
      //把需要输出的对象变成字符串,并拼接到输出字符串中
      buffer.append(um.toMyString2()+"\n");
    }
    //返回的标志
    boolean flag = true;
    try{
      //先删除文件
      FileOpe.deleteFile(FILE_NAME);
      //输出文件内容
      FileOpe.writeFile(FILE_NAME, buffer.toString());
    }catch(Exception err){
      err.printStackTrace();
      flag = false;
    }
    return flag;
  }
  public Map getData(){
    //返回的文件中的内容对应的map
    Map map = new HashMap();
    try {
      //读取文件的内容,成为一个集合
      Collection col = FileOpe.readFile(this.FILE_NAME);
      //循环集合,把每条值变成对应的对象
      Iterator it = col.iterator();
      while(it.hasNext()){
        String str = (String)it.next();
        //把字符串的值转变成为新的对象
        InBookModel um = new InBookModel(str);
        //设置到需要返回的map中
        map.put(um.getId(),um);
      }
    }catch (Exception ex) {
      ex.printStackTrace();
    }

    return map;
  }

  public boolean saveDetailData(Map map){
    //拼接用于文件输出的字符串
    StringBuffer buffer = new StringBuffer("");
    //循环目前内存中的Map值
    Iterator it = map.keySet().iterator();
    while(it.hasNext()){
      String key = (String)it.next();
      //获取需要输出的数据
      InBookDetailModel um = (InBookDetailModel)map.get(key);
      //把需要输出的对象变成字符串,并拼接到输出字符串中
      buffer.append(um.toMyString()+"\n");
    }
    //返回的标志
    boolean flag = true;
    try{
      //先删除文件
      FileOpe.deleteFile(FILE_DETAIL_NAME);
      //输出文件内容
      FileOpe.writeFile(FILE_DETAIL_NAME, buffer.toString());
    }catch(Exception err){
      err.printStackTrace();
      flag = false;
    }
    return flag;

  }
  public Map getDetailMap(){
    //返回的文件中的内容对应的map
    Map map = new HashMap();
   try {
     //读取文件的内容,成为一个集合
     Collection col = FileOpe.readFile(this.FILE_DETAIL_NAME);
     //循环集合,把每条值变成对应的对象
     Iterator it = col.iterator();
     while(it.hasNext()){
       String str = (String)it.next();
       //把字符串的值转变成为新的对象
       InBookDetailModel um = new InBookDetailModel(str);
       //设置到需要返回的map中
       map.put(um.getId(),um);
     }
   }catch (Exception ex) {
     ex.printStackTrace();
   }
   return map;
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -