-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathFunctionParameter.java
executable file
·84 lines (72 loc) · 2.44 KB
/
FunctionParameter.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
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
/** класс, который отвечает за сохранение объектов в базе и получение этих объектов из базы */
public class FunctionParameter implements Serializable{
private final static long serialVersionUID=1L;
private Class<?>[] classes;
private Object[] objects;
private String className;
public FunctionParameter(String className, Class<?>[] classes, FunctionParameter[] objects){
this.className=className;
this.classes=classes;
this.objects=objects;
}
public Class<?>[] getClasses() {
return classes;
}
public void setClasses(Class<?>[] classes) {
this.classes = classes;
}
public Object[] getObjects() {
return objects;
}
public void setObjects(Object[] objects) {
this.objects = objects;
}
public String getClassName() {
return className;
}
public void setClassName(String className) {
this.className = className;
}
/** возвращает массив из байт с двоичным представлением объекта
* @param Object - object for save
* @return null - возникла ошибка при сохранении
* */
public static byte[] getBytesFromObject(Serializable object){
byte[] returnValue=null;
try{
ByteArrayOutputStream baos=new ByteArrayOutputStream();
ObjectOutputStream oos=new ObjectOutputStream(baos);
oos.writeObject(object);
oos.flush();
oos.close();
baos.close();
return baos.toByteArray();
}catch(Exception ex){
System.err.println("getBytesFromObject:"+ex.getMessage());
}
return returnValue;
}
/**
* Преобразовать двоичные данные в объект
* @param bytes - двоичное представление
* @return - объект, либо же null, если что-либо не удалось сделать
*/
public static Object getObjectFromBytes(byte[] bytes){
Object returnValue=null;
try{
ByteArrayInputStream bais=new ByteArrayInputStream(bytes);
ObjectInputStream ois=new ObjectInputStream(bais);
returnValue=ois.readObject();
ois.close();
bais.close();
}catch(Exception ex){
System.err.println("getObjectFromBytes");
}
return returnValue;
}
}