jsonarray

DTO改造为JsonObject

*爱你&永不变心* 提交于 2020-04-05 17:54:51
曾经有个项目,遇到一个情况就是DTO需要“频繁”的转成JsonObject进行传递(因为用的框架是 Vert.x,用EventBus通信)存在明显的性能消耗。或者使用框架带的DTO自定义,但是一看就没麻烦就没有操作。 需要频繁的操作如下: JSONObject jo= (JSONObject) JSONObject.toJSON(fooBean); FooBean fooBean= (FooBean)JSONObject.toBean(jo, FooBean.class); 为了提高性能,做的就是改造DTO,思路如下: 本来DTO的属性是本来是以全局变量存在各自的类中,现在把这类全部去掉,改成维护在JsonObject 中。因为操作相同,把所有的DTO都改成继承同一个基础的DTO ,在基础的DTO中统一维护。 1.为了适配其他框架的实例化,还是要保留相应的get/set,但是get/set操作的其实是JsonObject 2.为了非String类型的数据,做相关方法的改写。 //-----------BaseJsonDTO .java----- public class BaseJsonDTO { private static Logger logger = LoggerFactory.getLogger(RespGenerator.class); private static

JSON简介

社会主义新天地 提交于 2020-03-29 17:14:21
1.什么是JSON JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。 2.JSON语法 {“属性1” : ”值1” , ”属性2” : ”值2”} 属性值数据类型: 数值 : 2 2.3 -5 字符串:”jack” 数组 : [] boolean: true/false 对象 : {} 3.页面处理json数据 <script type="text/javascript"> //数值和字符串类型 var json = {"name":"张珊","age": 18 ,"sex":"女"}; //alert(json.name); //alert(json.age); //alert(json.sex); //对象类型 var json2 = {"person" : {"name":"张珊","age": 18 ,"sex":"女"} } //alert(json2.person.name); //数组类型 var json3 = {"list" : [{"name":

json使用

China☆狼群 提交于 2020-03-24 18:44:56
3 月,跳不动了?>>> 转载自: https://www.cnblogs.com/LearnAndGet/p/10009646.html 1.创建json对象 # 1.1 创建JSONObject对象 # 使用map初始化json @Test public void test1() { Map <String, Object> map = new LinkedHashMap<String, Object> (); map.put( "name", "孙笑川" ); map.put( "age", 25 ); map.put( "height", 1.70 ); map.put( "major", new String[] { "理发", "挖掘机" }); map.put( "hasGirlFriend", false ); map.put( "car", null ); map.put( "house", null ); // null作为value时,转换成json后不会保存 JSONObject json1 = new JSONObject(map); System.out.println(json1.toString()); Map map2 = json1.toMap(); System.out.println(map2.toString()); } 可以看到

利用服务器实现疫情查询小系统(Web版+APP)

生来就可爱ヽ(ⅴ<●) 提交于 2020-03-22 20:39:49
  本次任务要求:结合之前的数据可视化,数据爬取,配合服务器实现外网访问,并做出一个手机app实现访问数据。!!!【由于写该博客时插入图片出现问题,因此效果无法展示,部分地方会进行文字描述】   思路分析:数据可视化和数据爬取沿用前两周任务代码即可,问题在于服务器搭建和app的制作。服务器我在阿里云以学生价租用了一个, app使用Android Studio制作即可,需要解决的问题是Android访问远程MySQL数据库。   关于使用服务器实现外网访问Web项目:要实现外网访问Web项目,需要在服务器上搭建jdk和Tomcat,将本机上相应Web项目打包成war文件后,复制到远程服务器上Tomcat中webapps文件夹下。随后要在服务器上配置信息:找到服务器实例的安全组,在配置规则里加入端口8080/8080的自定义TCP,入方向和出方向我都设置了一次。在一切配置完之后,即可通过【http://+你的公网ip地址+/项目名/项目名下xx.html或xx.jsp】格式外网访问你的项目。   要实现实时更新数据信息,数据爬取入库和读取MySQL数据库操作需要在远程服务器上实现,因此要在远程服务器上下载MySQL和Python相关应用,我使用的是Navicat for MySQL配合MySQL数据库进行使用。在配置时会出现连接数据库失败的情况,解决方法如下

聊聊skywalking的register-receiver-plugin

烈酒焚心 提交于 2020-03-22 10:54:35
3 月,跳不动了?>>> 序 本文主要研究一下skywalking的register-receiver-plugin RegisterModuleProvider skywalking-6.6.0/oap-server/server-receiver-plugin/skywalking-register-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/register/provider/RegisterModuleProvider.java public class RegisterModuleProvider extends ModuleProvider { @Override public String name() { return "default"; } @Override public Class<? extends ModuleDefine> module() { return RegisterModule.class; } @Override public ModuleConfig createConfigBeanIfAbsent() { return null; } @Override public void prepare() { } @Override public

Java:数据转Json数据

怎甘沉沦 提交于 2020-03-12 03:31:10
1. List集合转换成json代码 List list = new ArrayList(); list.add( "first" ); list.add( "second" ); JSONArray jsonArray2 = JSONArray.fromObject( list ); 2. Map集合转换成json代码 Map map = new HashMap(); map.put("name", "json"); map.put("bool", Boolean.TRUE); map.put("int", new Integer(1)); map.put("arr", new String[] { "a", "b" }); map.put("func", "function(i){ return this.arr[i]; }"); JSONObject json = JSONObject.fromObject(map); 3. Bean转换成json代码 JSONObject jsonObject = JSONObject.fromObject(new JsonBean()); 4. 数组转换成json代码 boolean[] boolArray = new boolean[] { true, false, true }; JSONArray jsonArray1 =

Java的JSON文件解析

扶醉桌前 提交于 2020-03-10 20:43:56
1. JSON格式概述 JSON  JavaScript  JavaScript Object Notation  (JavaScript Object Notation,JavaScript对象表示法,读作/ˈdʒeɪsən/)是一种由道格拉斯·克罗克福特构想和设计、轻量级的数据交换语言,该语言以易于让人阅读的文字为基础,用来传输由属性值或者序列性的值组成的数据对象。尽管JSON是JavaScript的一个子集,但JSON是独立于语言的文本格式,并且采用了类似于C语言家族的一些习惯。   { { "firstName" : "John" , "lastName" : "Smith" , "sex" : "male" , "age" : 25 , "married" : false , "address" : { "streetAddress" : "21 2nd Street" , "city" : "New York" , "state" : "NY" , "postalCode" : "10021" } , "phoneNumber" : [ { "type" : "home" , "number" : "212 555-1234" } , { "type" : "fax" , "number" : "646 555-4567" } ] } 2. 数据格式 2.1

从零开始,构建电子地图网站:0_10_try-catch+配置log日志

江枫思渺然 提交于 2020-03-10 00:26:51
接上篇,给程序加上注释、try-catch、log日志等。 注释非常简单。 在接口方法上输入/**,按下回车,该写什么就写什么吧。 Try-catch 在觉得会出问题的地方,加上try-catch,try没成功,就会catch异常,将异常log出来,用以排查问题。 我把注释、try-catch、log都加在了controller上。 一、新建日志配置文件 在resource下新建logback-boot.xml文件。 D:\gismap\java\gismap\src\main\resources\logback-boot.xml 别的都使用默认的就好,注意logger name="com.history.gismap",配置成自己的包名。 <configuration> <!-- %m 输出的信息,%p日志级别,%t线程名,%d日期,%c类的全名,%i索引【从数字0开始递增】,,, --> <!-- appender是configuration的子节点,是负责写日志的组件。 --> <!-- ConsoleAppender:把日志输出到控制台 --> <appender name ="STDOUT" class ="ch.qos.logback.core.ConsoleAppender" > <encoder> <pattern> %d %p (%file:%line\)- %m

从零开始,构建电子地图网站:0_11_引用geojson

被刻印的时光 ゝ 提交于 2020-03-10 00:15:40
在上篇中,我在MapController类中新建了一个方法JSONObject geometryToJson(Geometry geometry),用以将geometry对象转为json。 这个方法有点问题,首先,point是一个点,只有一组坐标,polygon如果有孔洞,怎么表示?multipolygon都是多部件还好,要是有带孔洞的polygon怎么办?polyline怎么表示? 而且我在这个方法里新建了太多对象JSONObejct、JSONArray等,最后也没有回收,会造成一些JVM性能问题。 综上,没事儿别自己瞎造轮子,自己瞎造的轮子,有可能掉到沟里。 Geojson这种数据格式,是有标准规范的,参见,https://www.oschina.net/translate/geojson-spec?cmp 也有一个专用的jar包将wkt等格式的数据转为geojson。 我们就用这个现成的gt-geojson来进行geojson的生成。 一、引入jar包 D:\gismap\java\master\gismap\pom.xml Maven依赖: <dependency> <groupId> org.geotools </groupId> <artifactId> gt-geojson </artifactId> <version> 9.3 </version> <

Java的JSON文件解析

流过昼夜 提交于 2020-03-09 21:55:28
1. JSON格式概述 JSON  JavaScript  JavaScript Object Notation  (JavaScript Object Notation,JavaScript对象表示法,读作/ˈdʒeɪsən/)是一种由道格拉斯·克罗克福特构想和设计、轻量级的数据交换语言,该语言以易于让人阅读的文字为基础,用来传输由属性值或者序列性的值组成的数据对象。尽管JSON是JavaScript的一个子集,但JSON是独立于语言的文本格式,并且采用了类似于C语言家族的一些习惯。 { { "firstName": "John", "lastName": "Smith", "sex": "male", "age": 25, "married": false, "address": { "streetAddress": "21 2nd Street", "city": "New York", "state": "NY", "postalCode": "10021" }, "phoneNumber": [ { "type": "home", "number": "212 555-1234" }, { "type": "fax", "number": "646 555-4567" } ] } 2. 数据格式 2.1 JSON对象 { “ID”:001, “name”:“骚磊”,