This repository has been archived by the owner on Sep 7, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 57
/
Copy pathDataSource.java
102 lines (91 loc) · 2.97 KB
/
DataSource.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
import java.io.*;
import java.util.*;
class DataSource{
static DataSource dataSource = new DataSource();
private Map<String,User> userMap = new HashMap<>();
private Map<Integer, UserDetail> userDetailMap = new HashMap<>();
private DataSource(){
}
public static DataSource getInstace(){
if (dataSource == null) {
dataSource = new DataSource();
}
return dataSource;
}
private void putUserDetail(){
String data[] = userDetailCollect().split("\n");
for (int i = 0; i < data.length; i++) {
String userDetailData[] = data[i].split(";");
userDetailMap.put(Integer.parseInt(userDetailData[0]), new UserDetail(Integer.parseInt(userDetailData[0]), userDetailData[1], userDetailData[2], userDetailData[3]));
}
}
private void putUser(){
String data[] = userCollect().split("\n");
for (int i = 0; i < data.length; i++) {
String userData[] = data[i].split(";");
userMap.put(userData[1], new User(Integer.parseInt(userData[0]), userData[1], userData[2]));
}
}
public User getUser(String key){
putUser();
return userMap.get(key);
}
public UserDetail getUserDetail(Integer key){
putUserDetail();
return userDetailMap.get(key);
}
private String userDetailCollect(){
FileReader fr = null;
BufferedReader bf = null;
String data = "";
try {
fr = new FileReader("UserDetail.txt");
bf = new BufferedReader(fr);
String lineRead;
while ((lineRead = bf.readLine()) != null ) {
data += lineRead + "\n";
}
} catch (Exception e) {
System.out.println(e.getMessage());
} finally {
try {
if (bf != null){
bf.close();
}
if (fr != null){
fr.close();
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
return data;
}
private String userCollect(){
FileReader fr = null;
BufferedReader bf = null;
String data = "";
try {
fr = new FileReader("User.txt");
bf = new BufferedReader(fr);
String lineRead;
while ((lineRead = bf.readLine()) != null ) {
data += lineRead + "\n";
}
} catch (Exception e) {
System.out.println(e.getMessage());
} finally {
try {
if (bf != null){
bf.close();
}
if (fr != null){
fr.close();
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
return data;
}
}