aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/database/ResultSetConverter.java
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2015-04-25 11:02:26 +1200
committerAnton Tananaev <anton.tananaev@gmail.com>2015-04-25 11:02:26 +1200
commit9ea2dbe8400bd1ab30451e3dc2b85aa7a583a8e1 (patch)
treeb9d71935821a7c895c11f87b1eb1fe3579f5289b /src/org/traccar/database/ResultSetConverter.java
parent5859529fa396cf74bdddc714ea1936c972d01579 (diff)
downloadtrackermap-server-9ea2dbe8400bd1ab30451e3dc2b85aa7a583a8e1.tar.gz
trackermap-server-9ea2dbe8400bd1ab30451e3dc2b85aa7a583a8e1.tar.bz2
trackermap-server-9ea2dbe8400bd1ab30451e3dc2b85aa7a583a8e1.zip
Use Java standard Json library
Diffstat (limited to 'src/org/traccar/database/ResultSetConverter.java')
-rw-r--r--src/org/traccar/database/ResultSetConverter.java42
1 files changed, 23 insertions, 19 deletions
diff --git a/src/org/traccar/database/ResultSetConverter.java b/src/org/traccar/database/ResultSetConverter.java
index 32289f756..e4aec956c 100644
--- a/src/org/traccar/database/ResultSetConverter.java
+++ b/src/org/traccar/database/ResultSetConverter.java
@@ -15,24 +15,29 @@
*/
package org.traccar.database;
-import org.json.JSONArray;
-import org.json.JSONObject;
-
-import java.sql.SQLException;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
+import java.sql.SQLException;
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
+import javax.json.Json;
+import javax.json.JsonArray;
+import javax.json.JsonArrayBuilder;
+import javax.json.JsonObjectBuilder;
public class ResultSetConverter {
+
+ private static final DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ssZ");
- public static JSONArray convert(ResultSet rs) throws SQLException {
+ public static JsonArray convert(ResultSet rs) throws SQLException {
- JSONArray json = new JSONArray();
+ JsonArrayBuilder json = Json.createArrayBuilder();
ResultSetMetaData rsmd = rs.getMetaData();
while (rs.next()) {
int numColumns = rsmd.getColumnCount();
- JSONObject obj = new JSONObject();
+ JsonObjectBuilder obj = Json.createObjectBuilder();
for (int i = 1; i <= numColumns; i++) {
@@ -40,41 +45,40 @@ public class ResultSetConverter {
switch (rsmd.getColumnType(i)) {
case java.sql.Types.BIGINT:
- obj.put(columnName, rs.getInt(columnName));
+ obj.add(columnName, rs.getInt(columnName));
break;
case java.sql.Types.BOOLEAN:
- obj.put(columnName, rs.getBoolean(columnName));
+ obj.add(columnName, rs.getBoolean(columnName));
break;
case java.sql.Types.DOUBLE:
- obj.put(columnName, rs.getDouble(columnName));
+ obj.add(columnName, rs.getDouble(columnName));
break;
case java.sql.Types.FLOAT:
- obj.put(columnName, rs.getFloat(columnName));
+ obj.add(columnName, rs.getFloat(columnName));
break;
case java.sql.Types.INTEGER:
- obj.put(columnName, rs.getInt(columnName));
+ obj.add(columnName, rs.getInt(columnName));
break;
case java.sql.Types.NVARCHAR:
- obj.put(columnName, rs.getNString(columnName));
+ obj.add(columnName, rs.getNString(columnName));
break;
case java.sql.Types.VARCHAR:
- obj.put(columnName, rs.getString(columnName));
+ obj.add(columnName, rs.getString(columnName));
break;
case java.sql.Types.DATE:
- obj.put(columnName, rs.getDate(columnName));
+ obj.add(columnName, dateFormat.format(rs.getDate(columnName)));
break;
case java.sql.Types.TIMESTAMP:
- obj.put(columnName, rs.getTimestamp(columnName));
+ obj.add(columnName, dateFormat.format(rs.getTimestamp(columnName)));
break;
default:
- obj.put(columnName, rs.getObject(columnName));
break;
}
}
- json.put(obj);
+ json.add(obj.build());
}
- return json;
+ return json.build();
}
}