
java
文章平均质量分 54
丶顶峰
不为失败找借口,只为成功找方法。
展开
-
linux crontab与spring quartz
Linux crontab 命令格式基本格式 :* * * * * command分 时 日 月 周 命令第1列表示分钟1~59 每分钟用*或者 */1表示第2列表示小时1~23(0表示0点)第3列表示日期1~31第4列表示月份1~12第5列标识号星期0~6(0表示星期天)第6列要运行的命令详细例子30 21 * * * /usr/local/etc/rc....转载 2019-10-24 11:07:51 · 390 阅读 · 0 评论 -
Java 代码性能优化
代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。代码优化也是一样,如果项目着眼于尽快无BUG上线,那么此时可以抓大放小,代码的细节可以不精打细磨;但是如果有足够的时间开发、维护代码,这时候就必须考虑每个可转载 2016-11-04 16:39:30 · 228 阅读 · 0 评论 -
Split()---"." "|" "*" "\" "]"
关于点的问题是用string.split("[.]") 解决。关于竖线的问题用 string.split("\\|")解决。关于星号的问题用 string.split("\\*")解决。关于斜线的问题用 sring.split("\\\\")解决。关于中括号的问题用 sring.split("\\[\\]")解决。原创 2016-10-08 12:45:03 · 235 阅读 · 0 评论 -
Eclipse Gradle配置
Eclipse Gradle配置一、Gradle简介Gradle 是以 Groovy 语言为基础,面向Java应用为主。基于DSL(领域特定语言)语法的自动化构建工具。 二、配置步骤如下:1、资源下载:Grandle官网下载Gradle,地址:http://www.gradle.org/downloads提示:如果只是运行可以只下载bin,为了扩展开发还是下载a转载 2016-11-28 17:52:55 · 1115 阅读 · 0 评论 -
InputStreamReader 和FileReader的区别及InputStream和Reader的区别
首先给大家介绍InputStreamReader 和FileReader的区别,具体内容如下所示:InputStreamReader 和 BufferedReader 。其中最重要的类是 InputStreamReader ,它是字节转换为字符的桥梁。 你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编码方式,例如 GBK 等。FileReader 与 I转载 2017-02-08 16:17:33 · 4403 阅读 · 0 评论 -
浏览器预览Excel、PPT、Word
浏览器预览Excel、PPT、Word原创 2017-02-17 12:31:20 · 4310 阅读 · 1 评论 -
根据对象的某个字段对List<Object>排序
根据对象的某个字段对List<Object>排序转载 2017-03-20 11:01:47 · 975 阅读 · 0 评论 -
删除list中某些元素
删除list中某些元素转载 2017-06-20 11:43:27 · 465 阅读 · 0 评论 -
JSON解析的三种方式
JSON解析三种方式一、什么是JSON?JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度。JSON就是一串字符串 只不过元素会使用特定的符号标注。{} 双括号表示对象[] 中括号表示数组"" 双引号内是属性或值: 冒号表示后者是前者的值(这个值可以是字符串、数字、也可以转载 2017-07-24 11:00:43 · 252 阅读 · 0 评论 -
正则隐藏手机号中间4位
phone.replaceAll("(\\d{3})\\d{4}(\\d{4})","$1****$2");138****8888原创 2017-08-04 11:46:02 · 1005 阅读 · 0 评论 -
JS判断是否是微信浏览器打开
JS判断是否是微信浏览器打开,JS判断是什么移动端打开,java判断是什么端打开原创 2017-09-11 11:48:09 · 323 阅读 · 0 评论 -
int为什么不是2的32次方
关于int(4字节)的取值范围由来(-2^31~2^31-1)?1.【32位】一个字节占8位,所以4字节总共是占32位,然后去掉第一位,也即符号位(1:负,0:正),也就剩下31位!2.【最大值:2^31-1】为什么不是2^31?(1)假设只有三位,其中首位为符号位的话,最大值的情况不就是011吗?也即表示3.3 = 2^(3-1)-1.(2)32位的时候同理,01转载 2017-11-23 11:12:35 · 11814 阅读 · 1 评论 -
Redis 分布式锁的正确实现方式Java
前言分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇博客将详细介绍如何正确地实现Redis分布式锁。可靠性首先,为了确保分布式锁可用,我们至转载 2018-01-30 17:59:33 · 196 阅读 · 0 评论 -
JSON 字符串 与 java 对象的转换
1. 把java 对象列表转换为json对象数组,并转为字符串 JSONArray array = JSONArray.fromObject(list); String jsonstr = array.toString(); 2. 把java对象转换成json对象,并转化为字符串 JSONObject object = JSONObject.fromObject(use...原创 2018-08-03 16:01:27 · 151 阅读 · 0 评论 -
jsonobject和objectMapper
1、jackson 框架:这个框架提供了JsonGenerator ,ObjectMapper两个类通过这两个类提供的方法可以将java 对象转化为json 对象,json 数组格式,也可以将json对象、数组格式转化为java对象。2、json-lib框架也可以进行json格式和java 对象之间的相互转化,json-lib提供的类主要有:JSONObject ,JSONArray......转载 2018-08-03 16:11:06 · 6703 阅读 · 0 评论 -
java 字节流与字符流的区别
字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢?实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用了缓冲区,通过缓冲区再操作文件,如图12-6所示。下面以两个写文件的操作为主进行比较,但是在操作时字节流和字符流的操作完成之后都不关闭输出流。范例:使用字节流不关闭执行Java代码 packageorg....转载 2019-03-05 13:22:42 · 260 阅读 · 0 评论 -
支付宝 app 支付的签名订单信息
请求参数组装分下列3步,以最后第三步获取到的请求为准1.请求参数按照key=value&key=value方式拼接的未签名原始字符串:app_id=2015052600090779&biz_content={"timeout_express":"30m","product_code":"QUICK_MSECURITY_PAY","total_amount":"0.01"...原创 2019-10-10 10:37:41 · 1767 阅读 · 0 评论 -
tomcat远程调试服务器
1、linux下打开tomcat下面startup.sh,在最前面添加:declare -x CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000"2、调试端口号我这边设置的是8000,可以自己更改。3、进入eclipse下Run-》Debug Configurations.原创 2016-09-09 18:45:31 · 259 阅读 · 0 评论 -
java时间转换
1、long型转换成StringSimpleDateFormat formatter = new SimpleDateFormat("yyyy年-MM月dd日-HH时mm分ss秒");Date data=new Date(System.currentTimeMillis());String sTime = formatter.format(data);2、String转原创 2016-01-13 15:02:33 · 285 阅读 · 0 评论 -
spring中context:property-placeholder/元素
1.有些参数在某些阶段中是常量 比如 :a、在开发阶段我们连接数据库时的连接url,username,password,driverClass等 b、分布式应用中client端访问server端所用的server地址,port,service等 c、配置文件的位置2.而这些参数在不同阶段之转载 2016-04-13 11:56:17 · 252 阅读 · 0 评论 -
接口和抽象类区别 .
1.概述一个软件设计的好坏,我想很大程度上取决于它的整体架构,而这个整体架构其实就是你对整个宏观商业业务的抽象框架,当代表业务逻辑的高层抽象层结构 合理时,你底层的具体实现需要考虑的就仅仅是一些算法和一些具体的业务实现了。当你需要再开发另一个相近的项目时,你以前的抽象层说不定还可以再次利用 。面对对象的设计,复用的重点其实应该是抽象层的复用,而不是具体某一个代码块的复用。说到了抽象,我就不转载 2015-06-30 21:51:34 · 446 阅读 · 0 评论 -
多线程中synchronized作用
先看一个例子://模仿火车售票系统,假设有4个售票点同时售票,我们可以把四个售票点定义为四个独立线程class Test{ public static void main(String[] args) { TestThread tt=new TestThread(); new Thread(tt).start(); //每一个售票点定义为一个转载 2015-07-07 15:44:25 · 596 阅读 · 0 评论 -
简述上转型对象和接口回调
本来只是想写一些对象上转型,由于和接口回调相仿,简单提一下接口回调。1、上转型对象:父类声明子类实例化 接口回调:接口声明实现类实例化上转型对象class A{void a(){System.out.println("This is A");}}class B extends A{void a(){System.out.println("Thi原创 2015-07-15 16:55:46 · 2440 阅读 · 0 评论 -
简述sleep()函数与wait()函数的区别
1、sleep()函数是Thread类的静态方法2、wait()是object类的方法 3、sleep()方法没有释放锁,而wait()方法释放了锁,使得其他线程可以使用同步控制块或者方法4、wait()函数只能在同步代码块中调用原创 2015-07-17 17:19:55 · 788 阅读 · 0 评论 -
简述HashMap和Hashtable的区别
1、HashMap继承AbstractMap类。 Hashtable继承了Dictionary类。2、HashMap允许有null的键和值。 Hashtable不允许有null的键和值。3、Hashtable的方法是synchronized的,HashMap不是。 Hashtable是线程安全的,HashMap是非线程安全的。4原创 2015-07-30 16:00:20 · 1610 阅读 · 0 评论 -
ArrayList和LinkedList的区别
1、ArrayList是基于动态数组的数据结构。 LinkedList是基于链表的数据机构。 2、ArraryList的查询优于LinkedList,LinkedList查询需要移动指针,因此查询会慢一些。 3、LinkedList的插入和删除会优于ArraryList,ArraryList插入和删除需要移动数据,因此插入和删除会慢一些。原创 2015-07-05 10:53:47 · 361 阅读 · 0 评论 -
String,StringBuffer与StringBuilder的区别
1、String String是final修饰的,因此是不可变的。当String被修改时,实际是生成了一个新的String,指针指向了这个新的String。 2、StringBuffer StringBuffer是可变的,因此当经常对一个字符串进行修改时最好使用StringBuffer,而不使用String。StringBuffer是线程安全的。 3、S原创 2015-07-05 11:28:18 · 351 阅读 · 0 评论 -
简述堆栈的区别
1、栈中的对象可以共享;堆中的对象不可以共享。2、栈中的数据大小和生命周期是可以确定的,当没有引用指向数据时,这个数据就会消失。 堆中的数据大小和生命周期不需要确定,堆中对象由垃圾回收器负责回收。 3、栈中存一些基本类型的变量数据和对象的引用变量。堆中用来存放由new创建的对象和数组。原创 2015-07-10 10:44:28 · 825 阅读 · 0 评论 -
super与this的异同
super和this的异同:1)super(参数):调用基类中的某一个构造函数(应该为构造函数中的第一条语句) 2)this(参数):调用本类中另一种形成的构造函数(应该为构造函数中的第一条语句)3)super: 它引用当前对象的直接父类中的成员(用来访问直接父类中被隐藏的父类中成员数据或函数,基类与派生类中有相同成员定义时如:super.变量名 super.成员转载 2015-07-23 16:06:47 · 454 阅读 · 0 评论 -
简述数组和链表的区别
简述数组和链表的区别原创 2015-08-31 21:08:45 · 1757 阅读 · 0 评论 -
简述==和equles的区别
java中的数据类型,可分为两类: 1.基本数据类型,也称原始数据类型。byte,short,char,int,long,float,double,boolean 他们之间的比较,应用双等号(==),比较的是他们的值。 2.复合数据类型(类) 当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址,所以,除非是同一个new出来的对象,他们的比较后的结果为true,否转载 2015-08-20 17:47:40 · 2627 阅读 · 0 评论 -
MyBatis插入MySQL中文乱码
今天刚刚学习MyBatis,做到插入的时候发现插入到数据库中的中文为乱码。下面是解决方案。xml中数据连接如上,当插入数据库中显示如下: 由此看出插入数据为????乱码,因此修改xml数据库连接为useUnicode=true&characterEncoding=UTF-8" />查询数据库发现乱码问题原创 2015-10-05 21:38:34 · 1183 阅读 · 0 评论 -
Java基础面试十道题(一)
1)面向对象的特征1. 抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象包括两个方面,一是过程抽象,二是数据抽象。2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。3.封装:封装是把过程和数原创 2015-09-28 16:19:08 · 792 阅读 · 0 评论 -
Java基础面试十道题(二)
1)说出一些常用的类,包,接口,请各举5个常用的类:String,BufferedReader,Integer,ArrayList,Vector常用的包:java.lang ,java.awt ,java.io ,java.util ,java.sql常用的接口:Collection,List,Map,Serializable,Runnable2)接口有什么优点?答:接原创 2015-09-28 16:30:28 · 408 阅读 · 0 评论 -
Spring事务管理只对出现运行期异常进行回滚
一、结论 Spring的事务管理默认只对出现运行期异常(java.lang.RuntimeException及其子类)进行回滚。 如果一个方法抛出Exception或者Checked异常,Spring事务管理默认不进行回滚。 关于异常的分类一下详细介绍: 1、基本概念 看java的异常结构图 Throwable是所有异常的根,java.lang.Throwable转载 2016-02-17 18:44:43 · 490 阅读 · 0 评论 -
运行时异常和一般异常的区别
Java提供了两类主要的异常:runtime exception和checked exception。checked 异常也就是我们经常遇到的IO异常,以及SQL异常都是这种异常。对于这种异常,JAVA编译器强制要求我们必需对出现的这些异常进行catch。所以,面对这种异常不管我们是否愿意,只能自己去写一大堆catch块去处理可能的异常。 但是另外一种异常:runtime exc转载 2016-02-17 18:46:46 · 7617 阅读 · 0 评论 -
synchronized在多线程中的使用
先看一个例子://模仿火车售票系统,假设有4个售票点同时售票,我们可以把四个售票点定义为四个独立线程class Test{ public static void main(String[] args) { TestThread tt=new TestThread(); new Thread(tt).start(); //每一个售票点定义为一个转载 2015-07-01 16:39:10 · 535 阅读 · 0 评论