Skip to content

Commit ae70cd5

Browse files
authored
Merge pull request #158 from biezhi/dev
Dev
2 parents c522fc9 + 93e5596 commit ae70cd5

15 files changed

+314
-73
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ Create a basic `Maven` project
6060
<dependency>
6161
<groupId>com.bladejava</groupId>
6262
<artifactId>blade-mvc</artifactId>
63-
<version>2.0.5-BETA1</version>
63+
<version>2.0.5-BETA2</version>
6464
</dependency>
6565
```
6666

@@ -69,7 +69,7 @@ Create a basic `Maven` project
6969
or `Gradle`:
7070

7171
```sh
72-
compile 'com.bladejava:blade-mvc:2.0.5-BETA1'
72+
compile 'com.bladejava:blade-mvc:2.0.5-BETA2'
7373
```
7474

7575
Write `main` method, try `Hello World`

README_CN.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@
6060
<dependency>
6161
<groupId>com.bladejava</groupId>
6262
<artifactId>blade-mvc</artifactId>
63-
<version>2.0.5-BETA1</version>
63+
<version>2.0.5-BETA2</version>
6464
</dependency>
6565
```
6666

@@ -69,7 +69,7 @@
6969
或者 `Gradle`:
7070

7171
```sh
72-
compile 'com.bladejava:blade-mvc:2.0.5-BETA1'
72+
compile 'com.bladejava:blade-mvc:2.0.5-BETA2'
7373
```
7474

7575
编写 `main` 函数写一个 `Hello World`

pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>com.bladejava</groupId>
77
<artifactId>blade-mvc</artifactId>
8-
<version>2.0.5-BETA1</version>
8+
<version>2.0.5-BETA2</version>
99
<packaging>jar</packaging>
1010

1111
<name>blade</name>
@@ -36,7 +36,7 @@
3636
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
3737
<junit.version>4.12</junit.version>
3838
<slf4j-api.version>1.7.21</slf4j-api.version>
39-
<netty.version>4.1.16.Final</netty.version>
39+
<netty.version>4.1.18.Final</netty.version>
4040
<blade-asm.version>0.0.1</blade-asm.version>
4141
<blade-log.version>0.0.6</blade-log.version>
4242
</properties>
Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
package com.blade.kit;
2+
3+
import lombok.NoArgsConstructor;
4+
5+
import java.util.*;
6+
import java.util.concurrent.ConcurrentHashMap;
7+
import java.util.concurrent.ConcurrentMap;
8+
9+
/**
10+
* Collection kit
11+
*
12+
* @author biezhi
13+
* @date 2017/12/15
14+
*/
15+
@NoArgsConstructor
16+
public final class CollectionKit {
17+
18+
/**
19+
* Determines whether an array is empty
20+
*
21+
* @param array array object
22+
* @param <T> array type
23+
* @return return array is empty
24+
*/
25+
public static <T> boolean isEmpty(T[] array) {
26+
return null == array || array.length == 0;
27+
}
28+
29+
/**
30+
* Determines whether an array is not empty
31+
*
32+
* @param array array object
33+
* @param <T> array type
34+
* @return return array is not empty
35+
*/
36+
public static <T> boolean isNotEmpty(T[] array) {
37+
return null != array && array.length > 0;
38+
}
39+
40+
/**
41+
* Determines whether an collection is empty
42+
*
43+
* @param collection collection object
44+
* @param <T> collection type
45+
* @return return collection is empty
46+
*/
47+
public static <T> boolean isEmpty(Collection<T> collection) {
48+
return null == collection || collection.size() == 0;
49+
}
50+
51+
/**
52+
* Determines whether an collection is not empty
53+
*
54+
* @param collection collection object
55+
* @param <T> collection type
56+
* @return return collection is not empty
57+
*/
58+
public static <T> boolean isNotEmpty(Collection<T> collection) {
59+
return null != collection && collection.size() > 0;
60+
}
61+
62+
/**
63+
* New HashMap
64+
*
65+
* @param <K> HashMap Key type
66+
* @param <V> HashMap Value type
67+
* @return return HashMap
68+
*/
69+
public static <K, V> HashMap<K, V> newMap() {
70+
return new HashMap<>();
71+
}
72+
73+
/**
74+
* New HashMap and initialCapacity
75+
*
76+
* @param initialCapacity initialCapacity
77+
* @param <K> HashMap Key type
78+
* @param <V> HashMap Value type
79+
* @return return HashMap
80+
*/
81+
public static <K, V> HashMap<K, V> newMap(int initialCapacity) {
82+
return new HashMap<>(initialCapacity);
83+
}
84+
85+
/**
86+
* New ConcurrentMap
87+
*
88+
* @param <K> ConcurrentMap Key type
89+
* @param <V> ConcurrentMap Value type
90+
* @return return ConcurrentMap
91+
*/
92+
public static <K, V> ConcurrentMap<K, V> newConcurrentMap() {
93+
return new ConcurrentHashMap<>();
94+
}
95+
96+
/**
97+
* New ConcurrentMap and initialCapacity
98+
*
99+
* @param initialCapacity initialCapacity
100+
* @param <K> ConcurrentMap Key type
101+
* @param <V> ConcurrentMap Value type
102+
* @return return ConcurrentMap
103+
*/
104+
public static <K, V> ConcurrentMap<K, V> newConcurrentMap(int initialCapacity) {
105+
return new ConcurrentHashMap<>(initialCapacity);
106+
}
107+
108+
/**
109+
* New List and add values
110+
*
111+
* @param values list values
112+
* @param <T> list type
113+
* @return return array list
114+
*/
115+
public static <T> List<T> newLists(T... values) {
116+
return Arrays.asList(values);
117+
}
118+
119+
/**
120+
* New Set and add values
121+
*
122+
* @param values set values
123+
* @param <T> set type
124+
* @return return HashSet
125+
*/
126+
public static <T> Set<T> newSets(T... values) {
127+
return new HashSet<>(Arrays.asList(values));
128+
}
129+
130+
}
Lines changed: 14 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
package com.blade.kit;
22

33
import com.blade.kit.json.Ason;
4-
import com.blade.kit.json.BeanSerializer;
5-
import com.blade.kit.json.JsonSerializer;
6-
import com.blade.kit.json.SerializeMapping;
7-
import lombok.NoArgsConstructor;
4+
import com.blade.kit.json.DefaultJsonSupport;
5+
import com.blade.kit.json.JsonSupport;
86
import lombok.extern.slf4j.Slf4j;
97

108
/**
@@ -14,31 +12,26 @@
1412
* 2017/6/2
1513
*/
1614
@Slf4j
17-
@NoArgsConstructor
1815
public final class JsonKit {
1916

20-
public static String toString(Object object) {
21-
return toString(object, SerializeMapping.defaultMapping());
22-
}
17+
private static final DefaultJsonSupport defaultJsonSupport = new DefaultJsonSupport();
18+
19+
private static JsonSupport jsonSupport = new DefaultJsonSupport();
2320

24-
public static String toString(Object object, SerializeMapping serializeMapping) {
25-
try {
26-
Object jsonObj = BeanSerializer.serialize(serializeMapping, object);
27-
return JsonSerializer.serialize(jsonObj);
28-
} catch (Exception e) {
29-
log.error("object to json string error", e);
30-
return null;
31-
}
21+
public static void jsonSupprt(JsonSupport jsonSupport) {
22+
JsonKit.jsonSupport = jsonSupport;
3223
}
3324

34-
public static Ason toAson(String json) {
35-
Object jsonObj = JsonSerializer.deserialize(json);
36-
return (Ason) jsonObj;
25+
public static String toString(Object object) {
26+
return jsonSupport.toString(object);
3727
}
3828

3929
public static <T> T formJson(String json, Class<T> cls) {
40-
Object jsonObj = JsonSerializer.deserialize(json);
41-
return BeanSerializer.deserialize(cls, jsonObj);
30+
return jsonSupport.formJson(json, cls);
31+
}
32+
33+
public static Ason toAson(String value) {
34+
return defaultJsonSupport.toAson(value);
4235
}
4336

4437
}

0 commit comments

Comments
 (0)