oracle查询数据,以asci写入文件

 

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class JdbcOutFile
{
    public static void main(String[] args)
    {
        Date today=new Date();//得到当前时间
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String dateStr=sdf.format(today);
        String backName=dateStr.substring(0, 10);
        System.out.println(backName);

        System.out.println("当前时间:"+ dateStr);
        //1 Oracle链接
        Connection conn = null;
        PreparedStatement ps = null;
        List list = new ArrayList();
        FileWriter fw=null;
        BufferedWriter bw=null;
        try
        {
            Class.forName("oracle.jdbc.driver.OracleDriver");
            conn = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:xe",
                    "hr",
                    "hr");
            String sql = "select * from workorderdone where state=2";
            ps = conn.prepareStatement(sql);
            ResultSet rs = ps.executeQuery();
           
            while (rs.next())
            {
                WorkorderDone workorderDone = new WorkorderDone();
                workorderDone.setLogkey(rs.getString("logkey"));
                workorderDone.setWorktype(rs.getInt("worktype"));
                workorderDone.setMobileno(rs.getString("mobileno"));
                workorderDone.setState(rs.getInt("state"));
                list.add(workorderDone);
                System.out.println(rs.getString("logkey"));
            }
            File file=new File("user_"+backName+".txt");
            if(file.exists())
            {
                file.delete();
            }
            //FileWriter对象
            fw=new FileWriter("user_"+backName+".txt");
           

            //BufferedWriter对象
            bw=new  BufferedWriter(fw);
            String line=null;//null与""
         
            for (int i = 0; i < list.size(); i++)
            {
                WorkorderDone workorderDone = (WorkorderDone) list.get(i);
                line = workorderDone.getLogkey() + "|"
                        + workorderDone.getWorktype() + "|"
                        + workorderDone.getMobileno() + "|"
                        + workorderDone.getState() + "\n";
                //写入
                bw.write(line);
            }
           
        }
        catch (Exception e)
        {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        finally
        {
           
            try
            {
                if (ps != null)
                {
                    ps.close();
                }
                if (conn != null)
                {
                    conn.close();
                }
                bw.close();
                fw.close();
            }
            catch (Exception e)
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
       
    }
   
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值