展开

关键词

Java转JSON串

昨天在与对端系统调接口时候,对端系统对我们传过去json串老是处理不了,后来查原因是应为我们传过去json串里有json对象数组,因为我们json串存在表里,取出来是作为json字符串放到json 数组里,所以带了双引号,对端认为是字符串,不是json对象所以处理不了。 这种是正确json对象数组,,这种是json字符串数组。 以下总结一下java转JSON串式:1、将java对象转成json串2、通过JSONObject生成json串3、通过json字符串生成json串代码通过阿里fastjson包实现。 代码如下:1、Person类,包含CradListpackage com.doit8.test.jsontest.pojo; import java.util.ArrayList; import java.util.List

98880

Java多线程,循环打印“ABC”10

思路3个线程A,B,C分别打印三个字母,每个线程循环10,首先同步,如果不满足打印条件,则调用wait()函数一直等待;之后打印字母,更新state,调用notifyAll(),进入下一循环。 class MyThread extends Thread { int which; 0:打印A;1:打印B;2:打印C static volatile int state; 线程共有,判断所有打印状态 public MyThread(int which) { this.which = which; } @Override public void run() { for (int i = 0; i < 10 e.printStackTrace(); } } System.out.print(toABC(which)); 执行到这里,表明满足条件,打印 state++; t.notifyAll(); 调用notifyAll

2K40
  • 广告
    关闭

    90+款云产品免费体验

    提供包括云服务器,云数据库在内的90+款云计算产品。打造一站式的云产品试用服务,助力开发者和企业零门槛上云。

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java 疫情期间远程面试记录

    记录真实面试问题 内容重复则不再写——————————————————————————————————————讲讲项目。。。 为什么(印象最深题)对一个10g大文件进行排序,内存只有32m,怎么做java法执行流程虚拟机栈中栈帧存了什么如果A法调用B法 传递给B参数 出现在A栈帧还是B栈帧volatile 关键字了解吗为什么可以保证可见性那使用了 还有什么办法可以解决Hash冲突java有哪些锁synchronized如果加在一个对象两个法上 两个线程访问这个对象不同法,会阻塞吗char double float 占个字节char中 是队列头任务 还是我刚刚提交任务java虚拟机内存分布法区存放什么老年代GC流程什么时候STWvolatile 关键字了解吗(同样问题)为什么可以保证可见性(同样问题)你刚才提到工作内存 对应虚拟机内存那个部分tcp连接建立与断开,分别是握手挥手讲讲4挥手过程timewait发生在什么时候自旋锁和互斥锁了解吗有什么区别吗 —————————————————————————

    18730

    Java创建对象

    有时候,也可能碰到这样面试题,如:Java创建对象有哪法?除了new之外,java创建对象还有哪式? 本文结合例子,给出Java创建对象法,包括:使用new创建使用Object.clone()使用Class.newInstance()使用Constructor.newInstance()使用反序列化 一、使用new创建这是最常用一种。 IOException | ClassNotFoundException e) { TODO Auto-generated catch block e.printStackTrace(); }当然了,除了上述式之外 ,还可以使用JNI等式来创建对象,这边就不一一列举了。

    21420

    Java下载文件

    以流式下载public HttpServletResponse download(String path, HttpServletResponse response) { try { path是指欲下载文件路径 .) + ).toUpperCase(); 以流形式下载文件。 FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } 支持在线打开式 BufferedInputStream(new FileInputStream(f)); byte; int len = ; response.reset(); 非常重要 if (isOnLine) { 在线打开式 response.setHeader(Content-Disposition, inline; filename= + f.getName()); 文件名应该编码成UTF-8 } else { 纯下载

    1.9K20

    Java数组操作10

    (intArray);  print directly will print reference valueSystem.out.println(intArray); 这里重点是说明了Java中数组引用和值得区别 第 4行输出则是真正数组值,因为它经过了Arrays.toString()转化。对Java初学者来说,引用和值仍需重视。 ,其addAll法可以很便地将两个数组连接成一个数组。 5、声明一个数组内链method(new String { a, b, c }, , );System.out.println(j); a, b, c同样利用StringUtils中join法,可以将数组中元素以一个字符串形式输出 ,可以便地将需要类型以集合类型保存在一个变量中,主要应用在显示列表。

    39260

    使用Java 10var类型推断个注意点!

    在运行时,Java与以往一样静态。鉴于使用非常简单,本备忘单将集中在本地类型推断最重要面 - 它实际用途。当您应该使用显式类型以及何时应该考虑类型推断时,它将提供指导。 由于想要编写这个备忘单,OracleJDK工程师Stuart Marks写了一篇完美文章,给出了编码原理和使用类型推理指导,我将它们浓缩成一张备忘单:原则1.阅读代码>编写代码无论是花10分钟还是 10天写一行代码,你乎肯定会在未来许多年里阅读它。 它应该是可以理解,无需工具帮助。决定权在你是否为变量提供显式类型或让Java编译器为自己解决问题选择是一种权衡。一面,你想减少杂乱,样板,仪式。另一面,您不希望损害代码可理解性。 但是,在某些情况下,最好分解长法链。5.不要担心使用局部变量导致“编程接口”太多Java编程中常见习惯用法是构造具体类型实例,但要将其分配给接口类型变量。

    36300

    剑指Offer面试题:10.数值整数

    一、题目:数值整数 题目:实现函数double Power(doublebase, int exponent),求baseexponent。不得使用库函数,同时不需要考虑大数问题。    在.NET Framework提供BCL中,Math类实现了一个Pow法,例如要求2,可以通过以下代码实现: double result = Math.Pow(2, 3);  本题就是要实现一个类似于该 Pow功能。 二、解决思路与实现2.1 不加思索思路  不需要考虑大数问题,可以在30秒内想到思路如下: public double Power(double baseNumber,int exponent) {

    18610

    Java创建类实例

    参考链接: 用Java创建流10Java创建有四种式:  (1)用new 语句创建对象,这是最常用创建对象法。  (2)运用反射手段,调用Java.lang.Class或者java.lang.reflect.Constructor类newInstance()实例法。  (3)调用对象clone()法  (4)运用反序列化手段,调用java.io.ObjectInputStream对象readObject()法。  在面向接口编程模式中,经常用此法来动态创建实例。 发送需要把这个Java对象转换为字节序列,即java对象序列,才能在网络上传送,即序列化过程;接收则需要把字节序列再恢复为java对象,即反序列化。

    56000

    java调用webservice接口

    天看到群里有人问webservice,稍微总结一下! 今天搜索到了非常好 webservice provider列表http:www.webservicex.netWCFdefault.aspx这上面列出了70多个包括很多free webservice 下面我们来看Java如何通过WSDL文件来调用这些web service:注意,以下代码并没有经过真正测试,只是说明这些情况,不同版本Axis相差很大,大家最好以apache网站上例子为准,这里仅仅用于说明其基本用法 1,直接AXIS调用远程web service我觉得这种法比较适合那些高手,他们能直接看懂XML格式WSDL文件,我自己是看不懂,尤其我不是专门搞这行,即使一段时间看懂,后来也就忘记了。 这是像我这种懒人最喜欢式,仍然以前面global weather report为例。

    28K40

    java数据库连接

    JAVA连接数据库式有多种: 根据所需要不同数据库驱动分,分为四种: 1:1类驱动。这就是JDBC-ODBC桥式。但这种式不适合程序重用与维护,不推荐使用。需要数据库ODBC驱动。 这就是JDBC+厂商API形式。厂商API一般使用C编写,所以,这种式也不长使用。 3:3类驱动。 这种法就是在JAVA 与 DATABASE之间价起了一台专门用与数据库连接服务器(一般由数据库厂商提供)。他好处在于能优化连接。 4:4类驱动。这就是纯JDBC+DATABASE连接式。 也是推荐连接式。这使得APPLICATION与数据库分开,开发者只需关心内部逻辑实现而不需注重数据库连接具体实现。 在这其中有两种连接式: 硬编码式,就是在程序中硬性编入数据库连接所须参数。 JNDI DataSource式。

    18830

    Java中类型判断

    前言在Java这种强类型语言中类型转换、类型判断是经常遇到。今天就细数一下Java中类型判断式。 2. instanceofinstanceof是Java一个运算符,用来判断一个对象是否为一个类实例 。 该法是在Java 1.1中引入,因为它可以动态地使用。如果参数不为null,并且可以在不引发ClassCastException情况下成功将其强制转换为左边引用类型时将返回true。4. Class.isAssignableFrom该调用者和参数都是Class对象,调用者为父类,参数为本身或者其子类。 但是请注意,基础类型包装类型用此法判断结果会返回 false。6. 总结这些类型判断除了前两种比较常见,后面两种用到机会还是有限。不知道你用过这里面种?

    83430

    java中创建对象

    java种创建对象式 在java程序中,对象可以被显式地或者隐式地创建. ()实例法 ● 调用对象clone()法 ● 运用序列化手段,调用java.io.ObjectInputStream 对象 readObject()法. 如果一个类只包含基本字段或对不变对象引用,那么通常不需要修改 super.clone 返回对象中字段。 Object 类 clone 法执行特定克隆操作。 否则,此法会创建此对象一个新实例,并像通过分配那样,严格使用此对象相应字段内容初始化该对象所有字段;这些字段内容没有被自我克隆。 所以,此法执行是该对象“浅表复制”,而不“深层复制”操作。

    13510

    Java HashMap进行遍历

    21420

    博客变迁

    本文由腾讯云+社区自动同步,原文地址 https:stackoverflow.clubblog-website-history 介绍了写博客历史以及所用工具 大概是从2017年年末开始写文章。 这些文章涵盖了生活、书评、影评,不过最多应该还是关于技术。 2017年12月份,我博客之旅开始了。 第一阶段 首先查到博客网站是wordpress,为了验证技术,在电脑上用IIS和php搭建了wordpress,只在本地开放,写了篇文章。 这种式对我来说有点好处:首先,自己本地有一份拷贝,不用担心数据丢失问题;其,可以自由地使用本地文本编辑器,wordpress那些文本编辑器插件实在不想吐槽,还有 写到一半服务器宕机可能。 前天给博客增加了公式显示功能、评论功能、百度流量统计。希望可以越走越远。 后来发现github pages网页不能被百度收录,就转向了coding.net。

    21520

    10-nova中概念

    Nova中里概念 Quota 可以编辑项目,选择修改配额 在这里就可以设置它值来进行一个逻辑上限制 Flavor对象 Flavor是一个虚拟机模板,在生成虚拟机时,虚拟机配置信息就是根据模板来 从这张图可以看出来,在openstack中已经预定义好一些模块可以直接使用 也可以根据自己需要来创建新Flavor 在创建云主机时候就可以指定这个云主机类型 主机聚合 可以在管理员选项卡里点击主机聚合 然后创建一个新主机聚合,名字可以自己取 添加后端计算节点 创建好了以后这里会多一个 在创建云主机这里就可以选择刚刚创建cpu可用域

    54040

    Java中定义常量(Constant)

    为了便大家交流Spark大数据,浪尖建了微信群,目前人数过多,只能通过浪尖或者在群里朋友拉入群。纯技术交流,偶有吹水,但是打广告,不提醒,直接踢出。有兴趣加浪尖微信。 1)常亮提取出来有利于代码阅读,而且下再做这种判断不用手写或复制,直接通过常量类就能得到,能够避免有是username,有是name来判断同一个逻辑含义相同变量问题。 不过我觉得提取出来并不会有利于代码性能提升,因为常量分配在内存常亮池中,所以内存不会出现多个相同常量字符串。总来说提取常量主要是为了避免魔法数字和提高代码可读性。 interface中定义常量采用接口(Interface)中变量默认为static final特性。 { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }普通类中定义常量采用了在普通类中使用static final修饰变量

    57740

    java中线程池种实现

    1 : 线程池简介 :多线程技术主要解决处理器单元内多个线程执行问题,它可以显著减少处理器单元闲置时间,增加处理器单元吞吐能力.假设一个服务器完成一项任务所需时间为 : T1创建线程时间,T2 在线程中执行任务时间 ;3 : 任务接口( Task) : 每个任务必须实现接口,以供工作线程调度任务执行,它主要规定了任务入口,任务执行完后收尾工作,任务执行状态等;4 : 任务队列(taskQueue) : 用于存放没有处理任务 .提供一种缓存机制.线程池技术正是关注如何缩短或调整T1,T3时间技术,从而提高服务器程序性能.它把T1,T3分别安排在服务器程序启动和结束时间段或者一些空闲时间段,这样在服务器程序处理客户请求下 ,不会有T1,T3开销了.线程池不仅调整T1,T3产生时间段,而且它还显著减少了创建线程数目,看一个例子:假设一个服务器一天要处理50000个请求,并且每个请求需要一个单独线程完成.在线程池中, 线程数一般是固定,所以产生线程总数不会超过线程池中线程数目,而如果服务器不利用线程池来处理这些请求则线程总数为50000.一般线程池大小是远小于50000.所以利用线程池服务器程序不会为了创建50000

    64750

    Java 对象引用有哪式?

    Java 对象有 4 种引用式,分别是强引用,软引用,弱引用,虚引用,这四种引用强度依减弱。强引用 强引用是最常见,一个变量用等号赋值,就是把这个变量指向强引用。 软引用 软引用引用对象,虽然是可达(存活),但是在 GC 回收时候,会考量这些对象。当 GC 认为内存还足够,那么就不回收这些对象了,但是当 GC 认为内存紧缺不够时候,会强行回收这些对象。 不同点在于,弱引用只要 GC 开始,就会被回收,而软引用只有当 JVM 内存空间不足时候才会被回收。弱引用需要 WeakReference 类来实现。 虚引用 get 法永远返回 null,一个对象是否存在虚引用不会对生存时间构成影响。唯一用处:能在对象被 GC 时能够得知。JAVA 中用 PhantomReference 来实现虚引用。 通过检查 ReferenceQueue 队列中对象来判等对象是否即将被回收,可以记录一些日志之类信息。

    1.7K40

    Java】求最大公约数

    10830

    扫码关注云+社区

    领取腾讯云代金券