自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 DataStructures - 02:查找算法

文章目录1、线性查找算法2、 二分查找算法1. 递归方式2. 非递归方式3、插值查找算法4、斐波那契查找算法 1、线性查找算法 /** * 找到一个就返回 */ public static int seqSearch(int arr[],int value){ //线性查找逐一对比,发...

2020-03-31 20:09:01 84 0

原创 DataStructures - 01:排序算法

文章目录一、冒泡排序 常见的排序算法分类: 一、冒泡排序

2020-03-29 23:12:49 74 0

原创 JVM:类加载器

文章目录一、类加载阶段1. 加载2. 连接1、验证2、准备3、解析3. 初始化二、类加载器1. 启动类加载器2. 扩展类加载器3. 双亲委派模型4. 线程上下文类加载器5. 自定义类加载器 一、类加载阶段 1. 加载 将类的字节码载入方法区中,内部采用 C++ 的 instanceKlass 描...

2020-03-28 18:00:48 107 1

原创 JVM:字节码指令

文章目录字节码指令1. 入门2. 图解方法执行流程1、原始的java代码2、编译后的字节码文件3、常量池载入运行时常量池4、方法字节码载入方法区5、main 线程开始运行,分配栈帧内存6、执行引擎开始执行字节码3. 字节码角度分析 a++4. 条件判断指令5. 循环控制指令6. 练习----判断结...

2020-03-28 14:49:46 186 0

原创 JVM:类文件结构

文章目录一、类文件结构1. 魔数2. 版本3. 常量池 一、类文件结构 一个简单的 HelloWorld.java // 二进制字节码(类基本信息,常量池,类方法定义,包含了虚拟机指令) public class HelloWorld { public static void main(...

2020-03-27 17:55:10 78 0

原创 JVM:垃圾回收器

文章目录1、垃圾回收器1. 串行2. 吞吐量优先3. 响应时间优先4. G1垃圾回收器(Garbage First)4.1 G1垃圾回收阶段 1、垃圾回收器 串行 单线程 堆内存较小,适合个人电脑 吞吐量优先 多线程 堆内存较大,多核 cpu 单位时间内,STW 的时间最短 0.2 0.2 =...

2020-03-27 11:34:57 100 0

原创 MathType与World2016不兼容,报错找不到MathPage.wll

在mathtype安装目录下找到下面三个文件: C:\Program Files(x86)\MathType\Office Support\64\WordCmds.dot C:\Program Files(x86)\MathType\Office Support\64\MathType Comma...

2020-03-26 19:45:23 93 0

原创 JVM:垃圾回收算法

文章目录1、如何判断对象可以回收?1. 引用计数法2. 可达性分析算法3. 五种引用3.1 软引用3.2 弱引用2、垃圾回收算法1. 标记-清除算法2. 标记-整理算法3. 标记-复制算法4. 结论3、分代垃圾回收1. 新生代与老年代2. 分代垃圾回收的工作原理3. GC相关参数3.1 小对象晋升...

2020-03-26 15:45:44 112 0

原创 JVM:JVM内存结构

文章目录一、JVM内存结构1. 程序计数器2. 虚拟机栈2.1 定义2.2 栈内存溢出2.3 线程运行诊断3. 本地方法栈4. 虚拟机堆4.1 定义4.2 堆内存溢出4.3 堆内存诊断5. 方法区 一、JVM内存结构 程序计数器 虚拟机栈 本地方法栈 堆 方法 1. 程序计数器 Progr...

2020-03-25 15:06:54 106 0

原创 Windows系统如何逐步查看CPU占用过高的线程?

在windows下只能查看进程的cpu占用率,要查看线程的cpu占用率要借助其他的工具,我这里用的是微软提供的 Process Explorer v15.3 下载地址http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx 下载后解...

2020-03-25 13:32:42 1241 0

原创 MySQL高级-06:MySQL锁问题

文章目录一、MySQL锁问题1. 锁分类2. MySQL锁3. MyISAM 表锁3.1 如何加表锁3.2 读锁案例 一、MySQL锁问题 锁是计算机协调多个进程或线程并发访问某一资源的机制(避免争抢)。 在数据库中,除传统的计算资源(如 CPU、RAM、I/O 等)的争用以外,数据也是一种供许多...

2020-03-24 23:25:29 69 0

原创 MySQL高级-05:应用优化_MySQL中查询缓存优化_内存管理及优化_并发参数调整

文章目录一、 应用优化1. 使用连接池2. 减少对MySQL的访问3. 负载均衡二、Mysql中查询缓存优化1. 查询缓存配置2. 开启查询缓存3. 查询缓存SELECT选项4. 查询缓存失效的情况三、Mysql内存管理及优化1. 内存优化原则2. MyISAM 内存优化2. InnoDB 内存优...

2020-03-24 16:59:10 92 0

原创 MySQl高级-04:索引使用_SQL优化

文章目录一、索引的使用1. 环境准备2. 避免索引失效3. 查看索引使用情况二、SQL优化1. 大批量插入数据2. 优化insert语句3. 优化order by语句4. 优化group by 语句5. 优化嵌套查询6. 优化OR条件7. 优化分页查询 一、索引的使用 索引是数据库优化最常用也...

2020-03-24 14:51:21 187 0

原创 MySQL高级-03:存储引擎_SQL优化步骤

文章目录一、存储引擎1. InnoDB2. MyISAM二、优化SQL步骤1. 查看SQL执行频率2. 定位低效率执行SQL3. explain分析执行计划4. show profile分析SQL5. trace分析优化器执行计划 一、存储引擎 和大多数的数据库不同, MySQL中有一个存储引擎...

2020-03-24 09:59:06 50 0

原创 Navicat连接不上远程数据库

1、先授予权限 权限不足问题 第一步:重启mysql服务 service mysql restart 第二步:进入mysql的bin目录下,输入命令,在输入密码,进入mysql mysql -u root -p 第三步:输入,意思就是给IP-xxx.xxx.xxx.xxx赋予了所有的权限,包括...

2020-03-24 09:07:19 566 0

原创 MySQL高级-02:存储过程和函数_触发器

文章目录一、存储过程和函数1、创建存储过程2、调用存储过程3、查看存储过程4、删除存储过程5、语法1. 变量2. if条件判断3. 传递参数4. case结构5. while循环6. repeat循环 一、存储过程和函数 存储过程和函数是 事先经过编译并存储在数据库中的一段 SQL 语句的集合,...

2020-03-23 21:46:05 60 0

原创 MySQL高级-01:索引_视图

文章目录一、索引1. 索引概述2. 索引结构1. BTree结构 一、索引 1. 索引概述 MySQL官方对索引的定义为:索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护者满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据, 这样就可以...

2020-03-23 16:13:10 69 0

原创 报错:nat -A DOCKER -p tcp -d 0/0 -dport 3306 -j DNAT --to-destination 172.17.0.2:3306

docker: Error response from daemon: driver failed programming external connectivity on endpoint tensquare_mysql (83328102ca96365aa455c994239587acefd...

2020-03-23 09:07:42 756 0

原创 面试题-05:ConcurrentHashMap & HashMap & Collections.synchronizedMap

文章目录1. 线程安全集合类1. HashTab与Vector2. Collections.synchronizedMap3. ConcurrentHashMap2. ConcurrentHashMap原理1. JDK 7 HashMap 并发死链2. ConcurrentHashMap 1. 线...

2020-03-22 20:12:40 69 0

原创 Concurrent Program-05:不可变类_线程池(ThreadPoolExcutor & Fork/Join)_AQS

文章目录1. 不可变类2. 线程池(重要)1. 自定义线程池2. ThreadPoolExcutor线程池3. Fork/Join线程池 1. 不可变类 如果一个对象不能够修改其内部状态(属性),那么它就是线程安全的,因为不存在并发修改啊!这样的对象在Java 中有很多,例如在 Java 8 后,...

2020-03-21 21:54:37 96 0

原创 Concurrent Program-04:JMM(Java内存模型)_无锁(CAS)

文章目录1. Java内存模型1. 可见性2. 可见性 vs 原子性3. 有序性4. volatile原理5. happens-before6. 相关习题 1. Java内存模型 1. 可见性 退不出的循环: 先来看一个现象,main 线程对 run 变量的修改对于 t 线程不可见,导致了 t ...

2020-03-21 16:30:18 107 0

原创 Concurrent Program-03:Wait/Notify_线程状态_多把锁_活跃态_ReentranLock

文章目录一、 wait/notify1. 原理和API2. wait/notify的使用1、wait(n)与sleep(n)的区别2、使用过程3. 保护性暂停模式4. 生产者消费者模式二、park / unpark三、 线程状态装换 一、 wait/notify 1. 原理和API wait()...

2020-03-21 10:19:03 91 0

原创 Concurrent Program-02:共享问题_Synchronized同步_线程安全_Monitor_Synchronized原理

文章目录1. 共享带来的问题2. synchronized 同步代码块3. synchronized 同步方法4. 变量的线程安全分析5. Monitor概念6. Synchronized原理1、轻量级锁2、锁膨胀3、自旋优化4、偏向锁 1. 共享带来的问题 1、分析问题: 下面的代码打印的结果...

2020-03-20 17:53:43 56 0

原创 Concurrent Program-01:进程与线程_Java多线程

文章目录一、进程和线程1. 进程和线程2. 并行和并发3. 应用二、Java多线程1. 创建和运行线程2. 查看进程和线程的方法3. 线程运行的原理4. start & run5. sleep & yield6. 线程优先级7. join8. interrupt9. 不推荐的方法1...

2020-03-20 09:44:11 310 0

原创 面试题-04:HashMap

阿里面试题1,阿里面试题2,阿里面试题3,阿里面试题4 1、HashMap的默认容量为2^4=16 2、如果创建HashMap对象时,数组大小如果不是2的幂次方,底层会把它变成2的幂次方。HashMap的数组大小为什么一定是2的幂次方: (1) 取模是为了得到数组的索引值(m%n的范围一定是:0~...

2020-03-19 17:36:55 49 0

原创 面试题-03:AVL树_红黑树_哈希表

文章目录1、红黑树的查找时间复杂度1. 平衡二叉搜索树2. 自平衡二叉搜索树(AVL树)4. B树5. 红黑树 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 阿里面试题1 阿里面试题2 阿里面试题3 阿里面试题4 腾讯面试题1 。。。。。。。。。。。。。。。。。。。...

2020-03-18 23:24:09 296 0

原创 面试题-02:动态数组_链表_二叉搜索树

文章目录1、ArrayList底层怎么实现的?2、LinkedList底层怎么实现的?3、Arraylist 和 LinkedList的区别?4、Comparator与Comparable比较1. 树的概念和性质2. 二叉搜索树(包含Comparator与Comparable) 。。。。。。。。。...

2020-03-18 16:47:38 52 0

原创 LeetCode_141:给定一个链表,判断链表中是否有环

https://leetcode-cn.com/problems/linked-list-cycle/ 使用快慢指针: /** * Definition for singly-linked list. * class ListNode { * int val; * Lis...

2020-03-17 21:28:15 55 0

原创 LeetCode_206:反转链表

https://leetcode-cn.com/problems/reverse-linked-list/ 假如输入的为5,输出的应该为5,4,3,2,1 假如输入的为4,输出的应该为:4,3,2,1 使用递归方法实现: /** * Definition for singly-linked...

2020-03-17 21:07:51 30 0

原创 LeetCode_237:删除链表中的节点

/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } ...

2020-03-17 20:22:30 30 0

原创 面试题-01:快手面试题_同步函数_Spring中IOC容器_Http常用状态码

点击进入本文快手面试题地址 文章目录一、快手面经1、synchronized的代码分析和实现(锁对象和锁类)2. Spring的IOC?怎么实现依赖注入的?bean的生命周期等等1、谈谈对Spring的理解2、容器中获取bean对象的2种方式3、谈谈你对IOC容器和DI依赖注入的理解4、依赖注入的...

2020-03-16 22:17:37 392 2

原创 SpringBoot-17:卖家扫码登录

文章目录1、SellerInfoRepository2、SellerService3、SellerServiceImpl4、WechatAccountConfig5、WechatOpenConfig6、ProjectUrlConfig7、登录与登出 1、SellerInfoRepository p...

2020-03-14 16:46:18 357 1

原创 SpringBoot-16:卖家商品与商品类目的实现

文章目录1、ProductService中新增商品上下架功能2、SellProductController1. 商品列表的方法2. 商品上架的方法3. 新增商品信息页面展示的方法4. 商品信息保存方法3、商品类目 卖家端对商品的操作主要有以下几个方面: 1、ProductService中新增商品上...

2020-03-14 08:45:19 189 0

原创 SpringBoot-15:卖家订单的实现

文章目录1. OrderService接口2. OrderServiceImpl3. SellOrderController1. 查询订单列表方法2. 取消订单的方法3. 订单详情的方法4. 完结订单的方法 卖家端主要完成几个功能: 查询所有买家的订单列表,查询某个买家的订单详情类表,完结订单,取...

2020-03-13 17:05:05 364 1

原创 Model、ModelMap、MododelAndView

Controller层执行业务逻辑,用于产生模型数据Model,而视图View用于渲染模型数据。 Model只是用来传输数据的,并不会进行业务的寻址。 ModelAndView 却是可以进行业务寻址的,就是设置对应的要请求的静态文件,这里的静态文件指的是类似jsp的文件。 1、Model: 如果...

2020-03-13 16:08:30 57 0

原创 SpringBoot-14:微信支付与退款

待续。。。。。。。 http://proxy.springboot.cn/pay?openid=oTgZpwenC6lwO2eTDDf_-UYyFtqI&orderId=1583819907160146055&returnUrl=http://www.imooc.com ...

2020-03-13 08:51:49 361 3

原创 SpringBoot中使用模板引擎freemarker报错404

真的想吐槽一下,浪费我时间:由此可见访问路径是没错的: @Controller @RequestMapping("/pay") public class payController { @Autowired private OrderService order...

2020-03-12 20:20:38 184 0

原创 SpringBoot-13:fiddler抓包工具实现微信网页授权前端调试

在网页上随便填写一个openid,可以访问出来前端页面: 现在我们将cookie去掉,访问不了sell.com网站了: 根据前端API: 当我们访问sell.com时,前端会重定向到/sell/wechat/authorize,现在需要到前端来配置这个地址: 再次在电脑上访问sell....

2020-03-12 10:17:28 376 0

原创 SpringBoot-12:微信授权

1、进行域名购买: 2、购买成功后进入配置选项,绑定二级域名: 3、绑定域名请需要注册一个二级域名: 4、下面进行域名注册: 5、注册完以后进行绑定: 6、绑定好以后,需要启动SpringBoot中的Tomcat,然后进行访问一个页面,我在启动时发现端口被占用了,可以在cmd窗口输入n...

2020-03-11 22:47:36 217 4

原创 SpringBoot启动访问localhost:8080报错404

1、确定本地网络是通的: 2、确定SpringBootq启动后是不报错的 3、查看是不是自己在配置文件中加入了项目路径: 如果加入了项目路径的话,直接访问localhost:8080是不会到欢迎页面的,需要加上项目路径才能访问到欢迎页面,即localhost:8080/sell ...

2020-03-11 10:26:45 2133 0

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