自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (1)
  • 收藏
  • 关注

原创 Java容器与容器安全

Java容器与容器安全Java容器关系图idea使用快捷键 ctrl+h 可以查看类之间的继承关系,以上根据类继承接口的关系所绘,其中标绿色的是接口,深蓝色的是线程不安全的实现类,浅蓝色的是线程安全的实现类。List与List不安全只看图中的四个List实现类,正常情况下使用ArrayListList<String> list = new ArrayList<>(); list.add("a"); list.add("b");

2020-10-09 17:43:10 170 1

原创 Lambda表达式与Stream Api

Lambda表达式与Stream Api作为jdk1.8的新特性,优雅的Lambda表达式和高效的Stream Api让人心旷神怡,整理个人学习这些知识的一些感悟,希望能有所帮助。Lambda先来准备我们的测试类LambdaTestInterface : 一个只有一个待实现方法的接口public interface LambdaTestInterface { void lambdaFunction(String str);}LambdaTestClass :里面有一个方法,其一个参数

2020-12-08 23:07:47 170

原创 颠覆世界观的docker

颠覆世界观的Dockerdocker概述docker为什么出现环境配置十分麻烦,发布项目需要配置服务器,部署环境费时费力。项目能否带上环境安装???docker 解决了这些问题docker能干嘛kernel(内核) —> lib(依赖库) —> app(n个)虚拟机技术缺点 :资源占用多;冗余步骤多;启动慢;kernel(内核) —> (lib + app)(n个)容器化技术不是模拟一个完整的操作系统传统虚拟机,虚拟出一套硬件,运行一个完整的操作系统,然后在这个系

2020-07-30 21:57:54 470

原创 Linux安装必做

安装Linux必做开始之前想体验黑苹果,奈何技术有限,驱动问题迟迟得不到解决,又灰溜溜的装回Linux,装回来后参考各篇博客配置各种环境,特此记录换源安装后第一件事情就是换源,这里装的是elementary os,可以直接使用ubuntu的源#编辑源文件,最好在操作之前对源文件进行备份sudo vim /etc/apt/sources.list#修改该文件,删除或注释原来全部内容,添加如下内容# 阿里源deb http://mirrors.aliyun.com/ubuntu/ bio

2020-06-13 17:46:25 167

原创 Git与Github基本操作

Git与GithubGitgit是一个版本管理控制系统(VCS),它可以在任何时间点,将文档的状态作为更新记录保存起来,也可以在任何时间点。将更新记录恢复回来。基本工作流程3.git仓库:用于存放提交记录2.暂存区:临时存放被修改文件1.工作目录:被git管理的项目目录先通过工作目录提交到暂存区,再将暂存区的文件提交到git仓库命令#基本操作#查看git版本git --...

2020-01-01 15:28:55 185

原创 蓝桥杯c/c++组经验整理

常用算法1.欧几里得算法求最大公约数(递归思想的初次使用)先来看百度对欧几里得算法的描述辗转相除法, 又名欧几里德算法(Euclidean algorithm),是求最大公约数的一种方法。它的具体做法是:用较小数除较大数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。如果是求两个数的最大公约数,那么最后的除数就是这两个数的最大公...

2019-11-23 15:23:11 1130

原创 正则表达式(附demo)

正则表达式1.基本操作连接操作:写出 A,表示匹配A,写出B,表示匹配AB;public static void main(String[] args) { String s = "AB"; boolean isMatches = Pattern.matches("AB",s); System.out.println(isMatches);}运行结果true或操作:...

2019-11-23 14:31:03 250

原创 深度优先搜索

深度优先搜索目的:解决是否能从图上一点到另一点的问题注:Bag是基础数据结构背包的实现类,附在文章的最后图的数据结构应该能初始化一个有V个顶点的图,获得顶点和边的个数,添加边,返回与某个点相连的点的集合图的建立API private int V;//顶点的数目 private int E;//边的数目 private Bag<Integer>[] adj;/...

2019-11-20 14:26:45 115

原创 二叉查找树的增删修查实现

二叉查找树的增删修查实现类的定义如下:Key继承了Comparable接口来保证良好的有序性public class HandTearTree<Key extends Comparable,Value> {}结点内部类private class Node{ Key key; Value value; Node left; ...

2019-11-16 13:25:13 146

原创 基于二分查找与插入排序的符号表容器

基于二分查找与插入排序的符号表容器符号表就是类似于编程常用的map,这里简单实现了一下Api public ST()//构造器 private void expansion()//扩容容器 public Value get(Key key)//根据key获取value public boolean containKey(Key key)//二分查找符号表是否包含这个...

2019-11-15 12:37:03 92

原创 手撕7大排序

手撕7大排序一些小工具 //如果a<b,返回true;对于compareTo()方法,若a>b,返回1,a=b,返回0,a<b,返回-1 public static boolean less(Comparable a,Comparable b){ return a.compareTo(b)<0; } //交换俩个元素 pub...

2019-11-14 13:17:44 110

原创 堆排序

堆排序实现堆排序的前提是实现优先队列优先队列优先队列是一种抽象数据类型,它的功能是添加数据和弹出最大的数据我们使用二叉堆实现优先队列二叉堆在二叉堆里,我们需要保证每一个元素都要大于特定位置的元素,我们把它画成二叉树来表示对于任意一节点N,若它的下标为k,那么它的父节点下标为k/2,子节点下标为2k和2k+1我们使用长度为n+1的数组来实现可容纳N个数据的二叉堆(不使用数组里下标为...

2019-08-11 16:36:13 77

原创 快速排序

快速排序快速排序是一种简单灵巧的算法,算是分而治之思想的集大成者.一个数组有序的基本规则就是在数组里任意选取一个作为基本值,其左边和右边的数据都只可能有大于等于.小于等于俩种情况;根据这条规则,我们可以想到对数组进行排序,即在数组里选取一个值作为基本值,把小于等于(或大于等于)的数字都移到左边,其余的数字移到右边,然后以基本值为准,划分成俩个数组,再对左边和右边的数组执行相同的操作.如图...

2019-08-10 17:17:07 101

原创 使用费曼算法解决算法入门问题(2)-日更ing

使用费曼算法解决算法入门问题(2)-日更ing二分查找传统的查找方式则是把待查找的数据放到数据列表里一个个比对,如果有n个数据,最坏情况下需要的时间为O(n);现在,设想一下,假如你有一个有序数组,在这个数组里查找指定数据,有没有什么比简单查找更快的方法呢?比如,现在你有一组数据{1,2,3,4,5,6,7},要再其中查找6这个数字.使用简单查找一个个比对需要查找6次;而你拿出中间的那个...

2019-07-19 19:39:22 196

原创 使用费曼算法解决算法入门问题(1)-日更ing

使用费曼算法解决算法入门问题(1)-日更ing费曼算法是以著名物理学家理查德.费曼命名的,其步骤如下:将问题写下来好好思考将答案写下来所以,当你面对一块大骨头一筹莫展的时候,多停下来想想办法代码都是看实现思路自己实现的,可能很多地方让人啼笑皆非,希望有心人能指点一下选择排序每次拿出待排序数据中最小/大的数据,将其加入到新数组中也就是说,实现选择排序你只需要做三件事从...

2019-07-16 23:15:43 413

原创 Spring结合Mybatis并加入通知(附ssm完整的pom.xml)

Spring结合Mybatis并加入通知(附ssm完整的pom.xml)配置Spring结合MyBatis创建目录结构如图配置spring-mybatis的核心配置文件applicationContext.xml约束<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springfr...

2019-07-03 21:58:37 272

原创 Mybatis:动态SQL

Mybatis:动态SQLMybatis动态SQL包含以下几种元素if判断语句:用于单条件分支判断choose(when,otherwise)相当于java里switch与case语句trim(where,set)辅助元素:处理SQL拼装问题foreach循环语句:在in语句等列举条件常用虽然动态SQL的元素不多,但却能带来极大地方便,下面来演示一下使用环境搭...

2019-06-24 21:43:58 149

原创 Servlet干货

Servlet干货什么是Servlet呢,抛去百度百科的专业解释,我个人认为是实现客户端与服务器端收发数据,实现资源跳转的一个组件.(欢迎纠正)看完这篇博客,你能:使用Cookie或Session实现服务器端与客户端的交互了解Cookie与Session的异同获取从客户端以get或post方式发送的数据会使用转发和重定向俩种方式跳转资源了解转发和重定向的异同前...

2019-06-15 13:35:41 211 1

原创 Mybatis环境搭建

Mybatis环境搭建在开始之前,先看一下官网对Mybatis的定义 : MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Jav...

2019-06-11 12:11:08 98

原创 代理模式技术终结蔡徐坤

代理模式技术终结蔡徐坤------敏感词过滤在开始进入正题之前,先来简述一下代理模式比如买戴尔电脑,有俩个选项,1:从戴尔总部购买,2:从代理商处购买现在把戴尔总部抽象为一个类,它实现了卖电脑的接口package cm.boke;/** * @author long * @date 5/28/19 - 4:53 PM *///定义卖电脑的接口interface sal...

2019-05-28 20:02:53 244

原创 Tomcat集成IDEA并测试Servlet

Tomcat集成IDEA并测试Servlet安装Tomcat官网下载Tomact,并解压到/opt目录.解压后在浏览器输入:localhost:8080Tomcat默认端口是8080( 端口:用来定位计算机中的软件的标识 )![Screenshot from 2019-05-07 10-35-39](/home/long/Pictures/Screenshot fro...

2019-05-07 11:44:53 993

原创 JDBC笔记

JDBC(java操作数据库java database connectivity)一套统一的java代码可以操作所有的关系型数据库。sun公司定义的接口,数据库厂商提供实现类(数据库驱动)。DriverManager:驱动管理对象注册驱动:mysql5以上会自动注册驱动,可省略,告诉程序该使用哪一个数据库驱动jarClass.forName("com.mysql.cj.jdb...

2019-04-20 12:18:30 102

原创 MySQL笔记

DDL1.操作数据库 : CRUDC(create) : 创建的操作create database 名称;防止重复创建( create database if not exists 数据库名称 )指定字符集( create database 数据库名称 character set 字符集名称 )R(retrieve) : 查询查询所有数据库的名称( show databases...

2019-04-20 12:16:55 108

原创 手写一个聊天室

概要由于我的破电脑同时开浏览器和IDEA会卡死,只能把正文写到代码注释里了,感兴趣可以把代码复制下来运行一下。一共有三个文件:服务器,客户端,工具类。主要知识点:1.多线程:runnable,thread2.匿名表达式lambda3.遍历容器:迭代器,foreach4.基于TCP的简单编程5.IO流的对接操作6.最重要的面向对象封装思想**服务器**package c...

2019-04-08 14:43:29 425

原创 通过手写系统小工具摸清IO流套路

1.IO流通用步骤IO流操作大致可以分为4个步骤:创建源(输入源,输出源)创建流(输入流,输出流)操作流完成任务关闭流IO虽然系统庞大,却有其规律可循,下面就通过一个复制文件的例子来展示。2 创建类创建源:我们这里用函数来演示创建流流可能会创建失败,所以我们用try-catch语句捕获并且抛出异常操作流使用byte类型可以操作任意文件,简单的编码与解码操作关...

2019-03-28 13:40:30 166

原创 java面向对象基础(完结)

java之浅谈面向对象 本文主要以代码为主,建议刚刚学习面向对象时快速浏览。1.静态方法静态方法是多条语句的集合,用来实现某一个特定的功能。查看下列代码,除了main()方法,还多了一个foo()方法。还可以往方法里传递参数。传递多个参数。2.类和对象类是一种自定义的数据类型,可以用来描述客观事物,比如人,汽车等等;而对象是类的实例,即类的具体化,比如汽车是类,李明的...

2019-03-07 00:00:12 177

原创 Linux入门基础01--shell

0.介绍最近对Linux有点发烧,希望让大家了解一下Linux,写一些博客。希望有问题的地方大家可以帮我斧正。 11.shell1.01:什么是shellshell的本义是壳,其实已经很形象的说明了shell在linux系统中的作用,shell就是围绕在linux内核之外的一个"壳“程序,用户在操作系统上完成的所有任务都是通过shell与linux系统内核的交互来实现的。各个操作...

2019-03-02 21:21:11 237

algs4.jar:算法4所用到的类

算法4所需要的类,标准输入/输出,绘图模块.

2019-08-11

空空如也

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

TA关注的人

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