自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 包装类自动拆箱的Bug

如图:近日在测试的时候遇到在LoanInstallmentBorrow不为空的情况下出现空指针异常的情况,经过反复验证,发现是因为loanProductId这个字段使用的是Long的包装类的原因.具体分析就是:这个字段在遍历的是null值,包装类自动拆箱的时候调用了其longValue方法,造成空指针异常.今天看阿里巴巴代码规范发现包装类的比较是必须要使用equals完成的,因为这是对...

2018-09-25 17:09:01 244

转载 IDEA断点调试技巧(转)

1、这里以一个web工程为例,点击图中按钮开始运行web工程。 2、设置断点 3、使用postman发送http请求 4、请求发送之后会自动跳到断点处,并且在断点之前会有数据结果显示 5、按F8 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则不进入当前方法体内,跳到下一条执行语句。 6、按F7在 Debug 模式下,进入下一...

2018-08-15 17:53:55 579

原创 通过特定的字符截取字符串

情景:获取到详细地址:上海市上海市浦东新区金桥镇金葵新城2223号,需求截取浦东新区之后的地址作为详细地址;方法:    String address = "上海市上海市浦东新区金桥镇金葵新城2223号"; String addressName = "浦东新区"; System.out.println(address.indexOf(addressName)); Syste...

2018-05-14 17:05:53 401

原创 Java中的数据库和mybatis

Q:mybatis中的#和$区别A:#在mybatis是占位符号,可以防止sql注入;$是sql拼接符号.下面我们详细说下这个东西:#是JDBC预编译一个语句,动态解析的时候会将参数设置为?,$会直接将参数进行string替换,动态解析的时候直接进行变量替换.一般情况下$来表示数据库对象,例如表明.例如:select * from ${tablenName} where name=#{};如果表明...

2018-05-03 19:31:25 376

原创 Java中的servlet

Q:什么是servletA:Java Servlet是运行在web服务器或应用服务器上的程序,它是作为web服务器或其他HTTP客户端的请求和HTTP服务端的数据库或应用程序的中间层.Q:作用是什么呢?A:处理客户端请求并将结果返回给客户端,一问一答.Q:servlet的生命周期A:servlet的生命周期分为三个部分:初始化,运行阶段,结束销毁阶段.初始化阶段:servlet容器读取servle...

2018-04-25 01:34:47 1029

原创 Java中的socket编程

Q:什么是socket?A:它是应用层与TCP/IP协议族通信的中间抽象层,它是一组接口,应用层通过它实现数据的收发.一般这种抽象层是由操作系统或者JVM虚拟机自己实现.使用socket可以简单的实现应用程序在网络上的通信.一个机器向socket写入信息,另外一个机器则可以读到.TCP/IP协议族中分两种socket类型,分别是TCP协议和UDP协议.如图:socket抽象层在传输层与应用层之间,...

2018-04-18 15:32:51 228

原创 Java中的线程池(3)

Q:什么是线程池?A:线程池是指在应用程序中创建一个线程集合,然后在执行任务时重用这些线程而不是重新创建新的线程.线程池中的线程数量取决于处理器数目和工作队列的性质,通常数目N+1,Q:为什么要创建线程池?线程池的作用?A:线程池的作用:限制系统中执行线程的数量.创建线程池可以减少创建线程,销毁线程次数,每个线程都可以多次重复使用,执行多个任务.可以合适的设置线程数量,减轻系统负担,防止内存使用过...

2018-04-17 15:37:33 184

原创 Java中的线程(2)

Q:sleep,yield,join,wait,notify,notifyAll区别A:sleep和yield是线程的静态方法,直接用类名就可以调用,join是普通方法,需要实例对象调用,wait,notify,notifyAll是属于Object的方法.下面分开介绍一下他们的用法:sleep:Thread.sleep(long mills),让当前线程进入睡眠状态,不会释放锁和资源,只要等阻塞时...

2018-04-13 11:02:48 150

原创 Java中的线程(1)

Q:什么是线程?什么是进程? A:进程是程序在某个数据集合上的一次活动,线程则是进程中的最小执行单元,进程是需要分配系统资源的,但是线程不必,它只是需要一点在运行中必不可少的资源就可以,支持与同一个进程下的所有线程共享资源.Q:为什么要创建线程?A:由于进程切换时需要消耗系统资源大,效率慢,所以我们就需要创建线程.因为线程是CPU调度和分派的基本单位,创建线程可以提高CPU的利用率,给系统操作减轻...

2018-04-08 21:48:52 190

原创 同一主体下的公众号和小程序用户打通

     现在微信小程序十分火热,已经拥有公众号的商家想加入进来,同时实现公众号和小程序用户互通这个功能应该怎么做呢?    熟悉API的开发都知道这个应该是通过unionId来实现这一功能,因为同一开放平台下的移动应用,公众账号,网页应用的用户unionId是相同的.明确了这一概念,那么我们应该就去创建一个开放平台,这样我们就可以获取到我们打通用户信息的关键----unionId.    但实际...

2018-04-04 17:38:43 9092 7

原创 浅谈IO和NIO

    首先我们需要明确一点,那就是JAVA中我们常说的输入输出都是相对于内存来说的,写入内存就是我们常说的输入流,写出内存就是我们说的输出流.只有明确了这个概念我们说的输入流和输出流才是有意义的.    下面我们通过一张图来认识一下我们的输入流和输出流:    看了上面的图片,相信我们会对IO的分类有一个详细的认识:字节流和字符流,输入流还是有输出流.下面我们通过一些demo来认识一下这个流的使...

2018-04-02 22:30:13 208

原创 浅谈Java中的Exception

什么是异常:当我们运用实体和其他进行交互的时候,发生不能正常运行的情况,Java把中断程序正常运行的这类错误称为异常.异常类:Throwable是异常主类,主要分为Error和ExceptionError:这是系统自身问题导致的,因此我们无法对这个进行处理,是不可以控制的.Exception:分为两大块一:Checked Exception和RuntimeExceptionChecked Exce...

2018-03-28 23:31:54 148

原创 Collection和Map

arays是操作array的类,其中arrays拥有一组static函数equals():比较两个array是否相等,拥有元素个数是否相等,相等的下标是否相等fill():将元素添加到array中sort():对数组进行排序System.arraycopy:array的复制数组是最有效的存储和随机访问一串对象的做法,但是他的缺点同样十分明显,那就是容量固定切无法动态改变,需要进行扩容才可以,不然在...

2018-03-26 23:32:43 202

原创 面向对象

面向对象有三大基本特征:封装,继承,多态.封装很好理解,作为面向对象的基本特征之一,封装就是将客观事务抽象成类,并将这些方法属性只开放给自己信赖的对象,对不可信的对象隐藏.常用的修饰关键字有public protected default private.public 修饰类,方法,属性,作用域是所有用户protected 修饰类,方法,属性,作用域是同一个包下面的类和子类default 修饰类,...

2018-03-21 00:48:40 188

原创 String,StringBuilder和StringBuffer

String(线程不安全)是字符串常量,StringBuilder和StringBuffer均是字符串变量.String是final修饰的,意味着它是不可以更改的,当我们创建一个不改变的字符串时,我们通常是用String来表示,因为String在创建 字符串时,JVM会把这样的创建方式:String test="s1" + "test" + "work"当成一个字符串常量来进行处理,例如test=...

2018-03-18 00:08:02 161

原创 对象是null还是空对象

今天写代码遇到一个问题,是以前没有注意到的,就是在判断UserInfo对象是不是空的时候,我的方法是new UserInfo去接受返回值,然后我在判断这个对象是不是null的时候,一直返回的是这个这个对象不是空.然后我查询了一下,发现这个new出来的对象并不是null,它拥有UserInfo对象所有的方法和属性,所以我将接受的对象和返回的对象全部设置为null才可以进行业务逻辑的判断.所以,在写...

2018-03-12 21:36:44 2827

原创 String常量池

首先我们看一段简单的代码:package com.hydee.yss.inint.main;public class StringTest { public static void main(String[] args) { String s1= "HelloWorld"; String s2 ="HelloWorld"; String s3 = "Hello" + "World"; S...

2018-03-11 23:04:45 231

原创 Java常量池

今天做了一个测试 代码如下package com.hydee.yss.inint.main;public class IntegerTest { public static void main(String[] args) { IntegerTest i = new IntegerTest(); i.test(); } public void test() { int s1 = 40; ...

2018-03-10 23:36:34 184

原创 比较两个字符串是否相等

如果是比较两者的引用是否相等,就用==,如果是比较两者的内容是否相等,就用equals.

2018-03-05 18:02:59 589

原创 判断字符串是否为空的方法

Java中常用的几种判断字符串是否为空的方法:方法一:最常用的方法if(null == str || "".equals(str))方法二:比较字符串的长度if(null == str || str.length 方法三:判断字符串是否为空if(null == str || str.isEmpty)方法四:调用StringUtils方法if(StringUtils.

2018-02-26 21:34:33 1631

转载 “该公众号提供的服务出现故障,请稍后再试”

微信公众号开发出现,该公众号提供的服务出现故障,请稍后再试。同时之前配置的自动回复和自定义菜单也都没有了! bug出现的场景: 在开发微信H5支付的时候出现的这种情况。解决方案: 查了一些资料,都是关于返回值格式或者from user 填写不正确导致的。但是我这个应该不是这个问题导致的。因为我是支付方面的开发后来,无意间点击到了公众平台的【自定义菜单】一栏, 

2017-10-30 18:00:57 1360 1

原创 此微信号没有绑定到任公众号上,请更换微信号再试

今天申请了一个微信公众号,在测试第三方平台进行授权的时候,微信提示:此微信号没有绑定到任公众号上,请更换微信号再试.上网上查询相关信息,但是一直没有找到相关的答案,后来看到一个回答说是到第三方添加公众号id.我试了一下是可以的,具体情况是这样子的:先到微信公众平台的公众号设置中找到原始id,再到微信开放平台中找到你的测试第三方平台(未全网发布),在授权测试公众号列表中添加公众号的原始id.

2017-10-30 17:41:28 9190 1

转载 [置顶] 微信开发出现“该公众号暂时无法提供服务,请稍后再试”的坑

从刚开始接触微信开发就发现网上都在吐槽,微信开发到处是坑!在开发的过程中也确实不断的遇到各种大小的坑,跌跌撞撞也都过来了。今天又发现了一个坑,这个坑一般不容易被发现,网上也没任何资料,觉得必须记录下来,否则说不定下次又掉这坑里了!废话少说,开始填坑吧!问题描述:1.        凡是扫描带参数的二维码,无论是长期还是临时的二维码都出现“该公众号暂时无法提供服务,请稍后再试”。并且是扫

2017-10-13 11:38:36 520

转载 基于JavaMail的Java邮件发送:复杂邮件发送

一封复杂的邮件内容可以看做是由很多节点(或者可以说是“片段”/“部分”/“零件”)组成,文本、图片、附件等都可以看成是邮件内容中的一个节点。这些节点之间又可以相互关联组合成一个节点。最终组合成一个大节点就是邮件的正文内容。完整代码演示:package com.xiets.javamaildemo;import java.io.FileOutputStream;import java.

2017-04-21 09:45:52 339

转载 基于JavaMail的Java邮件发送:简单邮件发送

电子邮件的应用非常广泛,例如在某网站注册了一个账户,自动发送一封欢迎邮件,通过邮件找回密码,自动批量发送活动信息等。但这些应用不可能和我们自己平时发邮件一样,先打开浏览器,登录邮箱,创建邮件再发送。本文将简单介绍如果通过Java 代码来创建电子邮件,并连接邮件服务器发送邮件。1. 电子邮件协议电子邮件的在网络中传输和网页一样需要遵从特定的协议,常用的电子邮件协议包括 SMTP,PO

2017-04-21 09:44:00 334

转载 ${pageContext.request.contextPath}JSP取得绝对路径

一.问题     JSP中究竟采用绝对路径还是采用相对路径随着所采用技术的越来越复杂,这个问题也变得越来越难以解决。1)采用相对路径遇到的问题      相对路径固然比较灵活,但如果想复制页面内的代码却变得比较困难,因为不同的页面具有不同的相对路径,复制后必须修改每一个连接的路径。如果页面被多于一个的页面所包含,那么被包含页面中的相对路径将是不正确的。 如果采用Stru

2017-04-01 15:30:29 458

转载 浅谈Session与Cookie的区别与联系

一、Session的概念Session 是存放在服务器端的,类似于Session结构来存放用户数据,当浏览器 第一次发送请求时,服务器自动生成了一个Session和一个Session ID用来唯一标识这个Session,并将其通过响应发送到浏览器。当浏览器第二次发送请求,会将前一次服务器响应中的Session ID放在请求中一并发送到服务器上,服务器从请求中提取出Session ID,并和保存

2017-03-27 15:07:35 1073

原创 JAVA学习笔记0011----404

2017-03-23 19:34:51 323

原创 JAVA学习笔记0010----请求和响应

1、Servlet的生命周期   Servlet的生命周期可以分为三个阶段,分别是初始化阶段,运行阶段和销毁阶段。    初始化阶段是客户端接到请求后会想web服务器发送HTTP请求,然后web容器会根据客户端的请求进行解析,如果发现内部没有创建servlet对象,会调用init()方法new出来一个servlet对象,注意init()方法只可以被调用一次。    运行阶段是servl

2017-03-21 20:18:56 377

原创 JAVA学习笔记0008----递归查询目录

下面简单介绍一个递归查询目录的方法:package com.dayuanit.Filelist;import java.io.File;public class File{public static void main(String args[]) {File f = new File("F:/workspace/day017");//需要查询的目录SOP(f.ge

2017-03-06 09:34:39 283

原创 JAVA学习笔记0007----输入输出流

输入输出:InputStream & OutputStream1、文件copy 和 照片的copy:package com.dayuanit;import java.io.IOException;import java.io.File;import java.io.InputStream;import java.io.OutputStream;import java

2017-03-05 19:54:36 260

原创 JAVA学习笔记0006----String的简单用法

在java的编程过程中,查看API文档的能力是基本技能之一。其中有一个类是我们经常用到的,它就是String类,在这里我们简单介绍一下它的类型和用法:在一个类中构造函数是比较重要的,通过查看API文档我们可以看出String类有一系列的构造函数供大家使用,这里我就不一一赘述了。下面讲一些常见的String方法。常用类:字符串类(String StringBuffer)基

2017-03-05 18:21:39 339

原创 JAVA学习笔记0005

final关键字和类中方法体方法块执行先后问题final 修饰类、方法、变量package com.dayuanit.animal;public class Dog {    public  String name;    public static int age;    public static final int AGE = 13;    public

2017-02-23 20:26:33 300

原创 JAVA学习笔记0004

任务:家住南京市浦口区天润城的一位21岁男性小明骑着一辆蓝色的OFO自行车前往星火路9号的浦口外国语学校考试,使用价值8800的ThinkPad黑色电脑进行答题,10题选择题,2题判断题,5题作图题。功能:1、小明骑着自行车去学校; 2、使用笔记本考试。要求:使用封装和导入包。首先我们需要对信息进行提取,经过归纳可以总结出5个主要的对象:Person;Bike;School;Compu

2017-02-23 19:21:42 310

原创 JAVA学习笔记0003

任务:家住南京市浦口区天润城的一位21岁男性小明骑着一辆蓝色的OFO自行车前往星火路9号的浦口外国语学校考试,使用价值8800的ThinkPad黑色电脑进行答题,10题选择题,2题判断题,5题作图题。功能:1、小明骑着自行车去学校; 2、使用笔记本考试。首先我们要学会分析提取文章中的关键信息,经过筛选,我们一共选取了小明、自行车、学校、电脑、考试这五个具有属性的对象,形成了Pers

2017-02-20 20:41:37 265

原创 JAVA学习笔记0002

复习部分:跨平台是需要版本号一致!(JVM=JRE)JAVA(作为程序员我们主要操作的是这一部分)-->JVM-->OS环境变量:JAVA_HOME;Path(echo %Path%检查path是否正确);classpath找到字节码文件。一个Java源文件可以有多个class,但是只有一个public;main是程序入口方法;public static void main(Strin

2017-02-14 19:56:00 291

原创 JAVA学习笔记0001

class HelloWorld{     public static void main(String[] args){         System.out.println("HelloWorld");    } }这是我第一天学习写出的第一个程序----你好世界!这表示我开始跨入这个以前我十分陌生的世界的第一篇,这也是我作为java程序员的开始!今天王夫子上午给我

2017-02-13 18:56:47 331

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除