public static Map<Integer, HashMap<String, Double>> getDocListTFMap(List<Integer> docList, List<String> wordList) {
		Map<Integer, HashMap<String, Double>> docListTFMap = new HashMap<Integer, HashMap<String, Double>>();
		
		StringBuilder docListBuf = new StringBuilder();
		docListBuf.append("(");
		for(Integer docId: docList) {
			docListBuf.append(docId).append(",");
		}
		docListBuf.deleteCharAt(docListBuf.length() - 1);
		docListBuf.append(")");
		
//		System.out.println(docListBuf.toString());
		
		StringBuilder wordListBuf = new StringBuilder();
		wordListBuf.append("(");
		for(String word: wordList) {
			wordListBuf.append("'").append(word).append("'").append(",");
		}
		wordListBuf.deleteCharAt(wordListBuf.length() - 1);
		wordListBuf.append(")");
//		System.out.println(wordListBuf.toString());
		
		StringBuilder sqlBuf = new StringBuilder();
		sqlBuf.append("select docId, word, termfre from forward_index where docId in ").append(docListBuf.toString()).append("and word in ").append(wordListBuf.toString());
		String sql = sqlBuf.toString();
		System.out.println(sql);
		
		try{
			conn = DBConnection.getConnectionInstance();
			
			
			PreparedStatement preparedStatement = conn.prepareStatement(sql);
			
			ResultSet rs = preparedStatement.executeQuery();
			while(rs.next()) {
				Integer docId = rs.getInt(1);
				String word = rs.getString(2);
				Double termFre = rs.getDouble(3);
				
				HashMap<String, Double> docIdWordMap = docListTFMap.get(docId);
				if(docIdWordMap == null) {
					HashMap<String, Double> wordTFMap = new HashMap<String, Double>();
					wordTFMap.put(word, termFre);
					docListTFMap.put(docId, wordTFMap);
				}
				else {
					docIdWordMap.put(word, termFre);
				}
				
			
			}
			
		}
		catch(Exception e) {
			
			System.out.println("getDocListTFMap failure !");
			e.printStackTrace();
		}
		
		return docListTFMap;
	}