java
codeing_doc
这个作者很懒,什么都没留下…
展开
-
JAVA核心技术36讲笔记
谈谈你对Java平台的理解?“Java是解释执行”,这句话正确吗?一次编译、到处运行”说的是Java语言跨平台的特性,Java的跨平台特性与Java虚拟机的存在密不可分,可在不同的环境中运行。比如说Windows平台和Linux平台都有相应的JDK,安装 好JDK后也就有了Java语言的运行环境。其实Java语言本身与其他的编程语言没有特别大的差异,并不是说Java语言可以跨平台,而是在不同的...原创 2019-04-10 09:55:40 · 775 阅读 · 0 评论 -
spring利用Druid实现sql监控界面
sprng配置文件<!-- alibab数据源 --> <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> <property name="drive原创 2018-06-07 11:17:40 · 3720 阅读 · 0 评论 -
Java注解解析以及自定义注解
Java中常见的注解@Override 覆盖父类的方法@Deprecated 方法已过时@SuppressWarnings("deprecation") 忽略Deprecated警告注解按照运行机制划分源码注解:注解只在源码中存在,编译成.class文件就不存在了;编译时注解:注解在源码和.class文件中都存在(如:@Override、@Deprecated、@Sup...原创 2018-06-21 10:27:35 · 873 阅读 · 0 评论 -
01并发编程的挑战
上下文切换CPU通过时间片分配算法循环执行任务,当前任务执行一个时间片后会切换到下一个任务。但是,在切换前会保存上一个任务的状态,以便下次切换回来这个任务时,可以再次加载这个任务的状态。所以任务从保存到再加载的过程就是一次上下文切换。频繁的上下文切换会影响多线程的执行速度如何减少上下文切换减少上下文切换的方法有无锁并发编程,CAS算法,使用最少线程和协程。无锁并发编程:多线程竞...原创 2018-04-26 16:53:44 · 236 阅读 · 0 评论 -
分布式锁的多种实现方式
目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们“任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足两项。”所以,很多系统在设计之初就要对这三者做出取舍。在互联网领域的绝大多数的场景中,都需要牺牲强...原创 2018-04-03 09:58:57 · 292 阅读 · 0 评论 -
深入理解ArrayList源码解析
package com.test.effectiveJava;import java.util.AbstractList;import java.util.Arrays;import java.util.Collection;import java.util.List;import java.util.Objects;import java.util.RandomAccess;/**原创 2017-12-05 18:01:06 · 246 阅读 · 0 评论 -
java操纵redis工具类(切片链接池方式)
package com.redis;import java.util.ArrayList;import java.util.List;import java.util.Map;import java.util.ResourceBundle;import java.util.Set;import com.alibaba.fastjson.JSON;import redis原创 2015-09-05 09:50:52 · 829 阅读 · 0 评论 -
java 操作redis基本工具类
package com.redis;import java.io.IOException;import java.util.Map;import java.util.ResourceBundle;import com.alibaba.fastjson.JSON;import redis.clients.jedis.Jedis;import redis.clients.jedis.JedisP原创 2017-09-20 14:22:59 · 723 阅读 · 0 评论 -
微服务springBoot项目搭建
http://www.ityouknow.com/ 作者博客网址SpringBoot (一) :入门篇SpringBoot(二) :web综合开发SpringBoot(三) :Spring boot 中 Redis 的使用SpringBoot (四) :thymeleaf 使用详解SpringBoot(五) :spring data jpa 的使用SpringBoot (六) :如何优雅原创 2017-09-20 10:12:56 · 620 阅读 · 0 评论 -
javaWeb自定义Jetty服务启动项目
pom.xml 添加jetty <dependency> <groupId>org.eclipse.jetty.aggregate</groupId> <artifactId>jetty-all</artifactId> <version>9.2...原创 2018-06-29 13:37:47 · 1223 阅读 · 0 评论 -
【Interview】什么是AQS队列同步器
什么是AQSAbstractQueuedSynchronizer是一个队列同步器,是用来构建锁和其它同步组件的基础框架,它使用一个volatile修饰的int成员变量表示同步状态,通过内置的FIFO队列来完成资源获取线程排队的工作通过改变int成员变量state来表示锁是否获取成功,当state>0表示锁获取成功,当state=0时说明锁释放成功。提供了三个方法(getState()、...原创 2019-03-19 11:18:17 · 693 阅读 · 0 评论 -
重拾数据结构与算法(一)顺序表和单链表的比较
线性查找法线性查找又称顺序查。基本思路是从第一个记录开始,逐个比较记录的关键字,直到和给定的K值相等,则查找成功;若比较结果与文件中n个记录的关键字都不等,则查找失败。时间复杂度:O(N)二分查找法二分查找法又叫折半查找法。比如小时候玩的猜数字游戏胖虎说:大熊你猜猜我现在心中想的数字是什么。给你一个范围1-100之间,不限次数猜,猜不中就打你一次,看你需要被我打多少次才可...原创 2019-02-03 19:34:40 · 810 阅读 · 0 评论 -
深入理解JVM
原文链接:https://a870439570.github.io/interview-docs/#/2019/深入理解JVM博客:https://blog.qinxuewu.club/#思维导图1. 运行时数据区域Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区...原创 2019-01-25 21:13:22 · 310 阅读 · 0 评论 -
leetcode我们必知必会的SQL面试题
获取Employee第n高的薪水编写一个 SQL 查询,获取 Employee 表中第 n 高的薪水(Salary)+----+--------+| Id | Salary |+----+--------+| 1 | 100 || 2 | 200 || 3 | 300 |+----+--------+例如上述 Employee 表,n = 2 时,应返回...原创 2019-01-15 14:58:53 · 635 阅读 · 0 评论 -
一款简单微信小程序个人博客。后端基于SpringBoot实现
项目介绍简单微信笔记小程序.文档https://a870439570.github.io/blog-sharon/项目架构SpringBoot2.0 h2数据库html2wxml 用于微信小程序的HTML和Markdown格式的富文本渲染组件,支持代码高亮(https://gitee.com/qwqoffice/html2wxml)部署小程序需要集成插件效果图如下首页...原创 2019-01-11 09:24:35 · 2868 阅读 · 11 评论 -
Github+docsify打造个人文档web工具
简介在日常开发中 前后端对接时 经常要写很多文档Api。docsify就是一个强大的文档生成工具 界面清新好 支持语法高亮和Markdown 语法,并且docsify 扩展了一些 Markdown 语法可以让文档更易读。像vue.js官网(https://cn.vuejs.org/)就是docsify 其中的一种注意 并且是目前用的的最多的主题效果图如下预览链接:http://docs.qi...原创 2019-01-04 11:16:53 · 2147 阅读 · 0 评论 -
jdk并发工具l类Fork&Join框架
Fork -join框架叉/加入框架是JAVA7提供的一个用于并行执行任务的框架,是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架。其思想和MapReduce的的思想非常类似。对于任务的分割,要求各个子任务之间相互独立,能够并行独立地执行任务,互相之间不影响。ForkJoinPoolForkJoinPool是ForkJoin框架中的任务调度器,和Th...原创 2018-08-28 21:55:38 · 258 阅读 · 0 评论 -
Java面试题大全
码云地址:https://gitee.com/qinxuewu/basic_induction_of_java常用集合Map系:HashMap, LinkedHashMap, TreeMap, WeakHashMap, EnumMapList系:ArrayList, LinkedList, Vector, Stack;Set系:HashSet, LinkedHashSet, Tree...原创 2018-08-24 11:40:36 · 514 阅读 · 0 评论 -
java.net.BindException: Address already in use: bind
使用springboot时想集成tomcat jar包支持发现提示java.net.BindException: Address already in use: bind这个错误。基本上是因为上一个启动的Tomcat,没有关掉。 当然也可能是其它应用占用了8080端口。 关闭javaw.exe进程就行<!-- tomcat 的支持.--> <dependency>原创 2017-09-20 09:59:01 · 684 阅读 · 0 评论 -
mongodb聚合函数aggregate操作 分组分页查询统计
MongoDB 聚合 MongoDB中聚合(aggregate)主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果。有点类似sql语句中的 count(*)。管道的概念管道在Unix和Linux中一般用于将当前命令的输出结果作为下一个命令的参数。MongoDB的聚合管道将MongoDB文档在一个管道处理完毕后将结果传递给下一个管道处理。管道操作是可以重复的。表达式:处理输入文原创 2017-04-13 11:50:16 · 17960 阅读 · 0 评论 -
java内存模型(JMM)
在并发编程中,需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指线程之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。在共享内存的并发模型里,线程之间共享程序的公共状态,通过写-读内存中的公共状态进行隐式通信。在消息传递的并发模型里,线程之间没有公共状态,线程之间必须通过发送消息来显式进行通信同步是指程原创 2017-03-23 14:46:30 · 355 阅读 · 0 评论 -
Java多线程(1)-线程的创建和使用
进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1--n个线程。线程:同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换开销小。线程和进程一样分为五个阶段:创建 ,就绪,运行,阻塞,结束在java中创建一个线程有两种方法:1 :实现java.lang.Runnable接口 重写run方法 启动 new Thr...原创 2017-03-23 10:09:39 · 261 阅读 · 0 评论 -
java手机号码归属地查询
https://www.juhe.cn/docs/api/id/11 网址代码描述:基于JAVA的手机号码归属地接口调用代码实例关联数据:手机号码归属地接口地址:http://www.juhe.cn/docs/api/id/11import java.io.BufferedReader;import java.io.DataOutputStream;import java.io.IOExc原创 2017-03-29 11:31:48 · 3004 阅读 · 0 评论 -
java集合框架解析
Java集合框架如下图所示 http://blog.csdn.net/u013256816/article http://blog.csdn.net/jackfrued/article/details/44921941Map系:HashMap, LinkedHashMap, TreeMap, WeakHashMap, EnumMap; List系:ArrayList, LinkedList,转载 2016-08-29 18:14:35 · 350 阅读 · 0 评论 -
mongodb Java 工具类
package com.mongodb;import java.util.ArrayList;import java.util.List;import java.util.Map;import org.bson.Document;import org.bson.conversions.Bson;import org.bson.types.ObjectId;import org.slf4原创 2016-07-29 10:12:27 · 1425 阅读 · 0 评论 -
MongoDB 基本教程
MongoDB 是一个基于分布式文件存储的数据库 MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。接下来介绍 window平台安装 MongoDB 很简单 下载地址:http://www.mongodb.org/downloads 下载解压 直接运行bin文件的mongod.exe 服务就开启了,我们不用mongod自带的命令原创 2016-08-29 10:54:27 · 531 阅读 · 0 评论 -
java 操作mongodb
package com.mongodb;import java.util.ArrayList;import java.util.List;import java.util.Map;import org.bson.Document;import org.bson.conversions.Bson;import org.bson.types.ObjectId;import原创 2015-09-05 09:53:35 · 490 阅读 · 0 评论 -
redis缓存
Redis虽然是一个内存数据库,但也可以将数据持久化到硬盘,有两种持久化方式:RDB和AOF。 RDB持久化方式定时将数据快照写入磁盘。这种方式并不是非常可靠,因为可能丢失数据,但非常快速。 AOF持久化方式更加可靠,将服务端收到的每个写操作都写入磁盘。在服务器重启时,这些写操作被重新执行来 重新构建数据集。String类型set name 1get na原创 2015-09-05 09:47:53 · 360 阅读 · 0 评论 -
mongodb实现lbs地理位置查找附近的商家
本文借鉴 http://blog.csdn.net/fdipzone/article/details/46285521Java 代码//查询地理位置的条件 List<JSONObject> listJson=new ArrayList<>(); Double lng = 113.323568d; //经度 Double l原创 2017-03-25 13:41:10 · 2383 阅读 · 0 评论 -
Java 冒泡排序List<Object>泛型集合对象
public static void main(String[] args) { List<JSONObject> list=new ArrayList<>(); JSONObject j0=new JSONObject(); j0.put("id", 1); j0.put("distance",原创 2017-03-25 14:04:41 · 1198 阅读 · 0 评论 -
java多线程小抄(记录)
多线程的概念进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1--n个线程。线程:同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换开销小。线程和进程一样分为五个阶段:创建、就绪、运行、阻塞、终止。多进程是 指操作系统能同时运行多个任务(程序)。多线程是指在同一程序中有多个顺序流在执行。在java中创建一个线程有原创 2017-09-13 14:13:37 · 225 阅读 · 0 评论 -
mysql 索引篇
索引类型唯一索引:唯一索引不允许两行具有相同的索引值主键索引:为表定义一个主键将自动创建主键索引,主键索引是唯一索引的特殊类型。主键索引要求主键中的每个值是唯一的,并且不能为空聚集索引(Clustered):表中各行的物理顺序与键值的逻辑(索引)顺序相同,每个表只能有一个非聚集索引(Non-clustered):非聚集索引指定表的逻辑顺序。数据存储在一个位置,索引存储在另一个位置,索引中包含指向数据原创 2017-09-13 15:07:14 · 234 阅读 · 0 评论 -
微信支付demo
https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=11_1原创 2017-09-04 15:29:33 · 588 阅读 · 0 评论 -
Java操作 ActiveMQ 远程监控JMX设置
activemq.xml设置 第一个配置: 在你下载activemq文件夹下的config中,找到activemq.xml,在broker节点增加useJmx=”true” useJmx表示开启jmx监控 2.在managementContext节点更改3.修改bin/文件夹中的启动脚本activemq1,Windows SUNJMX=-Dcom.sun.management.jmxrem原创 2017-09-04 14:55:19 · 5811 阅读 · 0 评论 -
Java主线程等待所有子线程执行完毕再执行解决办法
Java主线程等待所有子线程执行完毕在执行,其实在我们的工作中经常的用到,比如说主线程要返回一个响应用户的值,但这个值得赋值过程是由过个子线程来完成的(模拟一个实际开发的情景),所以主线程必须等待子线程执行完毕,再响应用户;否则,响应用户的是一个无意义的值。那么如何确保所有的子线程执行完毕了。一般的有如下方法:1 让主线程等待,或着睡眠几分钟。用Thread.sleep()或者TimeUnit.S转载 2017-04-24 10:57:29 · 714 阅读 · 0 评论 -
数据类型String常量池的特性
package com.test.Thread.StringAndSyn;/** * synchronized(string)同步块与String联合使用 * @author admin * 2017年4月20日 */public class Service { public static void print(String parm) throws InterruptedExc原创 2017-04-20 15:14:03 · 722 阅读 · 1 评论 -
synchronized关键字加到static静态方法和非static静态方法区别
synchronized关键字加到static静态方法上是给Class类上锁 而加到非static静态方法是给对象加锁 为了验证不是同一个锁 验证代码如下package com.test.Thread.t10;/** * @author admin * 2017年4月20日 */public class Service { synchronized public static原创 2017-04-20 14:30:19 · 5769 阅读 · 1 评论 -
Java多线程编程核心技术之---停止线程
在Java中有三种方法可以终止正在运行的线程 1,使用退出标志使线程退出,也就是run方法完成后线程终止 2,使用stop方法强行终止线程,但不推荐,因为stop和suspend及resume一样,都是作废过期的方法,使用它们会产生不可预料的效果 3,使用interrupt中断线程(只是打了一个停止标记,不是真正停止)interrupt方法停止线程操作package com.test.Thre原创 2017-04-13 19:02:28 · 440 阅读 · 0 评论 -
微信api接口常用操作
微信接入指南 https://mp.weixin.qq.com/wiki/8/f9a0b8382e0b77d87b3bcc1ce6fbc104.html 目录 1 概述 2 第一步:填写服务器配置 3 第二步:验证服务器地址的有效性package com.web.wexin;import java.io.IOException;import java.io.PrintWriter;原创 2017-04-13 14:18:25 · 23859 阅读 · 0 评论 -
Mac 搭建nginx+tomcat 实现负载均衡
首页 使用brew install nginx 下载nginx 下载完成后文件路径会显示在终端界面然后把tomcat 复制两份 修改service.xml 其中一份把默认端口号8080修改成没被占用8080改为8009改为8005改为然后 cd /usr/local/etc/nginxNginx配置文件ngi原创 2015-09-08 20:54:11 · 450 阅读 · 0 评论