- 博客(32)
- 收藏
- 关注
原创 排序算法之堆排序
//堆排序 public static void heapSort(int[]arr){ if (arr.length<2){ return; } for (int i = 0; i < arr.length; i++) {//将数组构造成一个堆 heapInsert(arr,i)...
2019-04-09 11:18:09
182
原创 二叉树求宽度
一、求每层最多的节点思路:层序遍历,记录每层个数。/** * 二叉树求宽度(求每层最多多少个节点的情况) */ public static int widthOfBinaryTree(TreeNode root) { if (root == null) { return 0; } Queu...
2019-04-07 22:36:25
9785
原创 链表
一、反转链表递归public static LinkNode reverseDigui(LinkNode head) { if (head == null || head.next == null) {//如果链表为空或者链表中只有一个元素 return head; } LinkNode retNode = reve...
2019-04-02 01:49:21
160
原创 二叉树的遍历
一、层序遍历层序遍历思路先将树的根节点入队, 如果队列不空,则进入循环 { 将队首元素出队,并输出它; 如果该队首元素有左孩子,则将其左孩子入队; 如果该队首元素有右孩子,则将其右孩子入队 }public static void level(TreeNode head){ if (head==null){ return; ...
2019-04-01 21:37:38
144
原创 数组实现栈、队列,两个栈实现一个队列,两个队列实现一个栈
一、使用数组实现队列使用数组实现循环队列会出现假溢出的问题,所以将数组首尾相接,构成循环队列。使用数组实现循环队列当rear指针和front指针指向同一位置是无法判断队列是满还是空解决这个问题的方法是牺牲一个空间,当队列为空时rear=front;当队列满时(rear+1)%数组长度=front。如图代码如下public class QueueByArray {...
2019-03-25 17:33:22
467
转载 Redis 持久化之RDB和AOF
Redis 持久化提供了多种不同级别的持久化方式:一种是RDB,另一种是AOF. RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot)。 AOF 持久化记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集。 AOF 文件中的命令全部以 Redis 协议的格式来保存,新命令会被追加到文件的末尾。 Redi...
2018-12-08 00:26:49
112
转载 数据库范式的理解
数据库范式是数据库设计中必不可少的知识,没有对范式的理解,就无法设计出高效率、优雅的数据库。甚至设计出错误的数据库。而想要理解并掌握范式却并不是那么容易。教科书中一般以关系代数的方法来解释数据库范式。这样做虽然能够十分准确的表达数据库范式,但比较抽象,不太直观,不便于理解,更难以记忆。 本文用较为直白的语言介绍范式,旨在便于理解和记忆,这样做可能会出现一些不精确的表述。但对于初学者应该是个不错...
2018-11-18 14:11:35
252
原创 java中的字符串类型(String、StringBuffer、StringBuilder)
一、首先来说一下JVM相关的一些知识我们先来了解一下JVM内存中的栈(stack)、堆(heap)和方法区: 栈中保存的是:基本数据类型的变量、对象的引用、函数调用的现场。 堆中保存的是:通过new关键字和构造器创建的对象。堆是垃圾收集器管理的主要区域。 它们之间的区别是:栈中的数据可以共享、栈空间操作起来最快但是栈很小,通常大量的对象都是放在堆空间,栈和堆的大...
2018-10-31 17:01:39
277
转载 Java多线程学习
林炳文Evankaka原创作品。转载请注明出处http://blog.youkuaiyun.com/evankaka 写在前面的话:此文只能说是java多线程的一个入门,其实Java里头线程完全可以写一本书了,但是如果最基本的你都学掌握好,又怎么能更上一个台阶呢?如果你觉得此文很简单,那推荐你看看Java并发包的的线程池(Java并发编程与技术内幕:线程池深入理解),或者看这个专栏:Ja...
2018-10-15 22:13:45
92
转载 mybatis sql注入问题
sql注入大家都不陌生,是一种常见的攻击方式,攻击者在界面的表单信息或url上输入一些奇怪的sql片段,例如“or ‘1’=’1’”这样的语句,有可能入侵参数校验不足的应用程序。所以在我们的应用中需要做一些工作,来防备这样的攻击方式。在一些安全性很高的应用中,比如银行软件,经常使用将sql语句全部替换为存储过程这样的方式,来防止sql注入,这当然是一种很安全的方式,但我们平时开发中,可能不需要这种...
2018-10-07 11:55:15
601
转载 Java 之 Serializable 序列化和反序列化的概念,作用
遇到这个 Java Serializable 序列化这个接口,我们可能会有如下的问题a,什么叫序列化和反序列化b,作用。为啥要实现这个 Serializable 接口,也就是为啥要序列化c,serialVersionUID 这个的值到底是在怎么设置的,有什么用。有的是1L,有的是一长串数字,迷惑ing。我刚刚见到这个关键字 Serializable 的时候,就有如上的这么些问题。在处...
2018-08-25 22:26:46
113
原创 spring boot配置拦截器
开发中我们可以使用Spring的HandlerInterceptor(拦截器)来实现过滤web请求拦截器可以在request被响应之前、request被响应之后、视图渲染之前以及request全部结束之后进行某些操作spring boot配置拦截器的主要步骤为:1、创建一个继承WebMvcConfigurerAdapter的配置类,并重写 addInterceptors 方法。2、创建...
2018-08-10 18:45:44
167
原创 spring boot使用thymeleaf版本问题
Spring boot默认使用的是thymeleaf的2版本,这个版本比较低,有些功能不支持,需要切换成3版本在properties中加入<thymeleaf.version>3.0.9.RELEASE</thymeleaf.version><thymeleaf-layout-dialect.version>2.1.1</thymeleaf-l...
2018-08-10 10:50:43
6617
5
转载 java String类定义字符串两种方式
Java中的字符串类String是程序中使用十分频繁而且在各大公司招聘笔试中必考的知识点之一。本文主要String的用法进行分析。 用String来定义一个字符串一般有两种方法: 1.String str=”hello world”;, 2.String str=new String (“hello world ”); 第一种方式:String str=”hello world”,生成的st...
2018-08-08 11:50:31
20571
1
原创 java创建数组几种方式
最近得多学学基础了,基础还是很重要的~int[] temp=new int[6];int[] temp={1,2,3,4};int[] temp= new int[]{1,2,3,4,5}; //和第二种差不多持续更新~
2018-08-03 10:39:31
5784
原创 idea使用jrebel插件对spring boot项目热部署
一般更新了Java文件后要手动重启Tomcat服务器才能生效,太浪费声明。idea安装JRebel插件进行热部署能很好的解决这个问题,这样不论是更新类还是更新配置文件都能立即生效,不用重启tomcat的服务器了,大大提高开发效率。安装激活jrebel插件后热部署步骤如下:(插件现在收费了某宝的激活不错) 一,设置1,命令+ SHIFT + A - >查找自动生成项目 - &g...
2018-07-29 21:29:45
336
原创 Springboot 2.0.1 Redis Cache 自定义key value序列化方式
Redis习惯使用 Json格式来存储了,但是RedisCacheManager默认使用的是jdk的序列化方式,若要使用json的需要自己设置spring boot2.0修改RedisCacheManage默认的序列化方式自定义CacheConfiguration 类 import lombok.extern.log4j.Log4j2;import org.springfram...
2018-07-27 00:32:52
1949
1
原创 redis数据类型理解
redis的存储形式是键值对的形式,键为一个字符串(不需要加引号),比如name、age、sex。值便是redis中五大数据类型redis中有五大数据类型:字符串(string)、列表(list)、集合(set)、有序集合(zset)、哈希(hash)一、字符串(String)一个String类型的实例,其中键为hello,值为world: 若一个键对应值的数据类型为strin...
2018-07-21 18:19:41
232
原创 spring mvc 常用注解及使用
@Controllerpublic class TestRequestMappingController { /** * 退出session * */ @ResponseBody @RequestMapping("/quitsession") public String quitsession(HttpSession session...
2018-07-15 11:50:36
153
转载 application.properties详解 --springBoot配置文件常用配置
原文连接# spring boot application.properties配置的各个属性详解# 该示例文件作为标准提供。(官方文档 翻译过来的)# 还是花了些功夫翻译,各位如果转发,请留下本文地址,谢谢# 翻译过程中难免出现翻译错误的地方,如果有哪位大神发现有错误的地方,请您留言指正,感激不尽,共同进步。# created by lpf in 2017/10/19# = = = = = =...
2018-07-14 16:58:38
2468
转载 thymeleaf在js中使用问题
初学thymeleaf,在js中使用时遇到些问题。发现在js中使用var name = [[${user.username}]];在浏览器会报错可能是把中括号解析成数组了在网上查了下,看到这种做法,测试了之后发现,只要有这个<script th:inline="javascript">就可以正常解析var name = [[${user.username}]];替换与否不影响,特殊需求...
2018-07-11 17:24:41
17618
原创 spring boot+mybatis项目org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
移动文件夹后修改配置文件中的MyBat的扫描路径在application.properties中加入以下配置 mybatis.mapper-locations=classpath*:/mapper/*.xml
2018-07-06 11:07:05
154
原创 idea实现自动生成mybatis代码
一、 在build的plugins中添加:<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2<...
2018-07-06 01:27:32
2670
转载 绝对路径${pageContext.request.contextPath}用法及其与web.xml中Servlet的url-pattern匹配过程
原文连接以系统的一个“添加商品”的功能为例加以说明,系统页面为add.jsp,如图一所示:图一 添加商品界面系统的代码目录结构及add.jsp代码如图二所示:图二 系统的代码目录结构及add.jsp代码${pageContext.request.contextPath}用于解决使用相对路径时出现的问题,它的作用是取出所部署项目的名字。对于图片文件,如图二所示“${pageContext.re...
2018-06-13 17:27:48
244
转载 Linux下干净卸载mysql详解
原文地址https://www.cnblogs.com/sevenyuan/p/6349703.html1、使用以下命令查看当前安装mysql情况rpm -qa|grep -i mysql 可以看到如下图的所示:显示之前安装了:MySQL-client-5.5.25a-1.rhel5MySQL-server-5.5.25a-1.rhel52、停止mysql服务、删除之前安装的mysql删除命令:...
2018-06-13 14:57:02
197
转载 Centos7.3 安装Mysql5.7并修改初始密码
网上好多教程都不好用,好不容易找到个详细的,亲测可用 原文地址https://www.jianshu.com/p/4a41a6df19a61、官方安装文档http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/2、下载 Mysql yum包http://dev.mysql.com/downloads/repo/yum/下载到本地再上传到服...
2018-06-13 14:56:33
119
转载 JSONObject和JSONArray区别及基本用法
一、JSONObject和JSONArray的数据表示形式JSONObject的数据是用 { } 来表示的, 例如: { "id" : "123", "courseID" : "huangt-test", "title" : "提交作业", "content" : null } 而JSONArray,顾名思义是由JSONObject构成的数组,用
2018-06-11 21:28:52
1058
原创 Mac 安装多个版本jdk并切换
一、Mac下查看已安装的jdk版本及其安装目录二、安装多个jdk后配置1、打开终端,输入:/usr/libexec/java_home -V 注意:输入命令参数区分大小写(-v是不对的,必须是-V)在Mac OS下打开终端,输入如下命令:[plain] view plain copyvi .bash_profile 这个命令执行完了会进入bash_profile文件里,我...
2018-05-09 21:55:53
3632
3
翻译 mac 查找被占用的端口并关闭
查找8080端口sudo lsof -i :8080然后根据PID杀进程:sudo kill -9 61342(即pid)
2018-05-05 00:15:57
549
转载 解决mysql插入删除报错2013 Lost connection to MySQL server during query’的问题
https://anothercoffee.net/fix-error-code-2013-lost-connection-mysql-server-query/
2018-04-30 11:49:53
2242
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人