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

📄 importtorecording.java.svn-base

📁 利用sip协议
💻 SVN-BASE
字号:
package com.xunlei.callcenter.util;

import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.text.SimpleDateFormat;
import java.util.*;

public class ImportToRecording {
	
	private static String getConfigFilePath(String para) {
		Properties props = new Properties();
		InputStream infile = Thread.currentThread().getContextClassLoader().getResourceAsStream("fileconfig.properties");
		try {
			props.load(infile);
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		String uri = props.getProperty(para);
		return uri;
	}
	
	private static void save() {
		String recordingpath = getConfigFilePath("recording_path");
		File file = new File(recordingpath);
		if (file.isDirectory()) {
			String datas[] = file.list(new java.io.FilenameFilter() {
				public boolean accept(File dir, String name) {
					SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
					java.util.Date d = new java.util.Date();   
					Calendar c = Calendar.getInstance();   
					c.setTime(d);   
					int   td   =   c.get(Calendar.DAY_OF_YEAR);   
					c.set(Calendar.DAY_OF_YEAR,td-1);   
					java.util.Date   ysd   =   c.getTime();
					String filetername = sdf.format(ysd);
					
					return name.indexOf(filetername) != -1;
				}
			});
			
			insertRecording(datas);
			insertUsertrafficstat(datas);
			insertGrouptrafficstat(datas);
		}
	}
	private static void insertGrouptrafficstat(String [] datas){
		SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
		java.util.Date d = new java.util.Date();   
		Calendar c = Calendar.getInstance();   
		c.setTime(d);   
		int   td   =   c.get(Calendar.DAY_OF_YEAR);   
		c.set(Calendar.DAY_OF_YEAR,td-1);   
		java.util.Date   ysd   =   c.getTime();
		String filetername = sdf.format(ysd);
		Map<String,Integer> hashMap = new HashMap<String,Integer>();
		for(int i=0;datas!=null&&i<datas.length;i++){
			String data[] = datas[i].split("-");
			if(data==null||data.length!=5)continue;
			String group = data[0];
			if(hashMap.containsKey(group)){
			    Integer count = (Integer)hashMap.get(group);
				count++;
			    hashMap.put(group, count);
			}
			else hashMap.put(group, new Integer(1));
		}
		Iterator iter = hashMap.keySet().iterator();
		StringBuilder sql =  new StringBuilder("insert into grouptrafficstat (groupid,balancedate,traffic)");
		int len = sql.length();
		while(iter.hasNext()){
			String group = (String)iter.next();
			Integer count = (Integer)hashMap.get(group);
			sql.append(" values('"+group+"','"+filetername+"',"+count+")");
			execute(sql.toString());
			sql.setLength(len);
		}		
	}
	private static void insertUsertrafficstat(String [] datas){
		class Temp{
			private String group;
			private int count;
			private String date;
			public Temp(String group, int count,String date) {
				this.group = group;
				this.count = count;
				this.date = date;
			}
		}
		Map<String,Temp> hashMap = new HashMap<String,Temp>();
		for(int i=0;datas!=null&&i<datas.length;i++){
			String data[] = datas[i].split("-");
			if(data==null||data.length!=5)continue;
			String logno = data[1];
			if(hashMap.containsKey(logno)){
				Temp temp = (Temp)hashMap.get(logno);
				temp.count++;
				hashMap.put(logno, temp);
			}
			
			else hashMap.put(logno, new Temp(data[0],1,data[2]));
		}
		Iterator iter = hashMap.keySet().iterator();
		StringBuilder sql =  new StringBuilder("insert into usertrafficstat (groupid,userlogno,balancedate,traffic)");
		int len = sql.length();
		while(iter.hasNext()){
			String logno = (String)iter.next();
			Temp temp = (Temp) hashMap.get(logno);
			String group = temp.group;
			int count =temp.count;
			String balance = temp.date;
			sql.append(" values('"+group+"','"+logno+"','"+balance+"',"+count+")");
			execute(sql.toString());
			sql.setLength(len);
		}		
	}
	private static void insertRecording(String []datas){
		for(int i=0;datas!=null&&i<datas.length;i++){
			String [] data = datas[i].split("-");
			if(data==null||data.length!=5)continue;
			StringBuilder sql =  new StringBuilder("insert into recording (groupid,userlogno,fileUrl,inputTime)");
			sql.append(" values('"+data[0]+"'"+",'"+data[1]+"','"+datas[i]+"','"+data[2]+data[3]+"')");
			execute(sql.toString());
			
		}
		
	}
	
	private static void execute(String sql){
		try{
			Class.forName("com.mysql.jdbc.Driver");
			Connection conn =DriverManager.getConnection("jdbc:mysql://192.168.3.203:3306/xlcallcenter", "root", "sd-9898w");
			Statement stmt = conn.createStatement();
			stmt.executeUpdate(sql.toString());
			stmt.close();
			conn.close();
			stmt=null;
			conn=null;
			if(conn!=null){
				try{
					if(stmt!=null)stmt.close();
					conn.close();
				}catch(SQLException e){
					e.printStackTrace();
				}
			}
		}catch (Exception e){
			e.printStackTrace();
		}
	}
	public static void main(String args[]){
		save();
	}
	
}

⌨️ 快捷键说明

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