- 博客(38)
- 收藏
- 关注
原创 业务分析与设计,从UML开始
这几天开发新的项目需求撰写概要设计说明书,涉及到业务分析与设计方面的知识,第一次接触没有方向非常的茫然,于是便对这个方面有了一个初步的学习,写下这篇博客记录学习的过程。业务分析业务分析之前首先会经历一次需求整理的过程,业务分析指应用特定的方式或方法,把复杂的需求拆解成简单且容易理解的对象,并且找出这些对象之间的关系。业务分析是系统开发中最重要,最困难的阶段,只有依据业务分析的结果,运用合理...
2020-01-14 17:26:29
991
原创 查找/插入/删除的速度如何趋于线性且支持高并发——ConcurrentSkipListMap
ConcurrentSkipListMapConcurrentSkipListMap,属于并发集合类,来源于大名鼎鼎的J.U.C,集合并发类的要求是执行速度快,提取数据准,最著名的类便是之前有接触到的ConcurrentHashMap类,通过不断的优化,由刚开始的锁分段到后来的CAS,不断地去提高自身的并发性能,其他便是ConcurrentSkipListMap,CopyOnWriteArra...
2020-01-07 15:26:00
459
原创 从源码开始手撸红黑树(构建与插入)
红黑树红黑树(Red Black Tree)是一种自平衡二叉查找树,是在计算机科学中用到的一种数据结构,是一个有限节点组成的一个具有层次关系的集合,数据就存在这些节点中。树首先我们先来了解一下树(Tree),root是根节点,在分支处有一个节点,指向多个方向,如果某节点下方没有任何分叉的话,就是叶子节点,从某个节点出发,到叶子节点位置,最长简单路径上边的条数,成为该节点的高度,从根节点...
2020-01-03 11:49:58
680
原创 Hibernate(二)
JavaBean规范:1.属性私有化,提供get/set2.提供无参构造器3.基本数据类型建议使用包装类5.不能用final修饰 -> CGlibdailipublic class Customer { private Long cust_id; private String cust_name; private String cust_source; priv...
2019-08-29 19:09:26
271
原创 Hibernate(一)
什么是框架?可以完成一部分功能的半成品项目学习框架的要求:1.配置文件 - 关系、规范2.流程深入:框架原理、源码JavaEE三层架构web service dao5种框架 SSH:Spring + Struts2 + Hibernate SSM:Spring + SpringMVC + MyBatis搭建Hibernate框架的步...
2019-08-26 20:00:09
265
原创 数据库学习笔记以及基本语法总结(二)
emp表格dept表格基本select查询语句-- 查询全部, * 先给解析成每一个字段,再来查询select * from emp;select * from dept;-- 查询全部, 效果同上select empno, ename, job, mgr, hiredate, sal, comm, deptno from emp;-- 筛选 wher...
2019-07-23 17:04:45
544
原创 数据库学习笔记以及基本语法总结(一)
数据库基本原理原始数据:文件、表格 问题:丢失、数据类型不好分类、不好查找 存储数据容量有限制数据库:存数据 本质:软件,特定格式文件,excel数据类型:列:字段 field 属性 行:数据关系型数据库: Oracle - 甲骨文...
2019-07-23 16:56:47
473
原创 java错题及易错点总结(一)
final修饰符final变量:final变量能被显式地初始化并且只能初始化一次,被声明为final的对象的引用不能指向不同的对象,但是final对象里的数据可以被改变。也就是说final对象的引用不能改变,但是里面的值可以改变,final修饰符通常和static修饰符一起来创建类常量。final方法:类中的final方法可以被子类继承,但是不能被子类修改。声明fin...
2019-07-20 11:29:23
417
原创 Java笔记总结(三)
回顾: Map: - key-value键值对 HashMap LinkedHashMap TreeMap Hashtable ConcurrentHashMap Node节点: key value next hash 存储过程 put(key, value) 先定hash位置,确定key的位置,跟位置上的链表,每...
2019-06-10 20:14:46
207
原创 Java笔记总结(二)
类: 英雄机:x、y、img、height、width、life 飞行物:x、y、img、width、height、移动 小蜜蜂:继承 extends 飞行物 速度 移动(斜着) 敌机:继承 extends 飞行物 速度 移动(向下) 子弹:继承 extends 飞行物 移动(向上)主类extends JPanel:主方法 paint(Graphics g)...
2019-06-10 20:13:23
240
原创 Java笔记总结(一)
C Java 面向对象的编程语言Sun -> Oracle1991 1995 1.01998 2004 Java 1.5 5.07 8 9 10Java 可以做什么? No.1服务器端开发的语言。C++ Python C#hadoop 服务器: 硬件:配置很好的电脑 TeamViewer。集群。数据中心 软件:应用程序JavaME JavaE...
2019-06-10 20:11:23
335
原创 HashMap与HashTable异同学习笔记
HashTable底层数组+链表实现无论key还是value都不能为null线程安全,实现线程安全的方式是在修改数据时锁住整个HashTable,效率低初始size为11,扩容:newsize = oldsize * 2 + 1计算index的方法:index = (hash & 0xFFFFFFF)% tab.lengthHashMap底层数组+链表实现K...
2019-05-29 14:44:26
358
原创 JAVA线程学习笔记(一)
/** * @author cdw *//** * 进程是操作系统中运行的一个任务(一个应用程序运行在一个进程中)。 * 进程是一块包含了某些资源的内存区域。操作系统利用进程把它的工作划分为一些功能单元。 * 进程中所包含的一个或多个执行单元称为线程。进程还拥有一个私有的虚拟地址空间,该控件仅能被它所包含的线程访问. * 线程只能归属于一个进程并且它只能访问该进程所拥有的资源。当操...
2019-05-17 16:39:31
238
原创 线程异常处理学习
异常处理try,catch,finally 在JAVA语言出现以前,传统的异常处理方式多采用返回值来表示程序出现的异常情况,这种方式虽然为程序员所熟悉,但却有多个坏处。 首先,一个API可以返回任意的返回值,而这些返回值本身并不能解释该返回值是否代表一个异常情况发生了和该异常的具体情况,需要调用API的程序自己判断并解释返回值的含义。 其次,并没有一...
2019-05-13 18:54:18
277
原创 决心系统学习Python
大二的时候曾经有过一段时间兴起想学习Python,但是当时甚至连环境变量都还没有配置,捣鼓着IDLE学习了一点基础语法知识,这几天突然看到有很多网络抓包做词云都是用Python实现的,特别的感兴趣,想系统学习一下Python有关网络抓包的知识点了,同时也学习一下前端知识,自己需要学习的还很多,这是一个flag博客,还有5个月秋招,冲!...
2019-05-09 11:52:41
202
原创 文件功能学习笔记
/** * 文件操作——File * @author cdw * *//** *java.io.File用于表示文件(目录),也就是说程序员可以通过File类在程序中操作硬盘上的文件和 * 目录。File类只用于表示文件(目录)的信息(名称,大小等),不能对文件的内容进行访问 *//**构造方法:File(String pathname)通过将给定路径名字符串转换成抽象路径名来...
2019-05-08 14:43:24
269
原创 代码证明内特朗箱子悖论
图片来自知乎https://www.zhihu.com/question/26435542/answer/112876996?utm_source=wechat_session&utm_medium=social&utm_oi=855348107909664768import java.util.LinkedList;public class boxQuestion ...
2019-05-01 13:38:44
540
原创 JavaDATE功能学习笔记
import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;import org.junit.Test;public class csdnDem...
2019-04-30 17:01:37
274
原创 正则表达式运用
正则表达式 实际开发中,经常需要对字符串数据进行一些复杂的匹配、查找、替换等操作,通过“正则表达式”,可以方便的实现字符串的复杂操作 正则表达式是一串特定字符,组成一个“规则字符串”,这个“字符串是描述文本规则的工具。 正则表达式就是记录文本规则的代码例如: 正则表达式:“[a-z]”表示a到z的任意一个字符 正则...
2019-04-29 16:21:16
300
原创 StringBuilder详解
import org.junit.Test;/** * StringBuilder及其API *StringBuilder封装可变的字符串,对象创建后可以通过调用方法改变其封装的字符序列。 *StringBuilder有如下常用的构造方式 */public class csdnDemo { /** * StringBuilder append(String str) 追加字...
2019-04-29 10:58:40
991
原创 String详解
import org.junit.Test;public class csdn {/** JDK中包含大量的API类库,所谓API就是一些已写好,可以直接调用的* 功能,JDK-API包含的类库功能强大,经常使用的有:字符串操作、集合* 操作、文件操作、输入输出操作、网络操作、多线程等等*/ /* * Java为了提高性能,静态字符串(字面量/常量/常量连接的结果)在常 *...
2019-04-27 16:35:13
393
原创 学院排序
import java.util.LinkedList;public class Demo10 { public static void main(String[] args) { int c = 18; LinkedList<Integer> list = new LinkedList<Integer>(); for(i...
2019-04-24 13:58:37
328
原创 Java运用Javadoc工具尝试导出帮助文档
/** * 这是一个帮助文档的测试类,内容就是凑字数 * @author caidawei - 作者 * @since - 从哪个版本开始 * @see - 另外参见****类 * 这是个这个类做解释,也不知道写什么,反正就是看着多 * */public class JavaDocDemo { //单行注释 /* *多行注释 */ /** * 文档注释-用来...
2019-04-24 09:53:29
214
原创 给定一个字符串,找出不含有重复字符的,最长子串的长度
import java.util.LinkedList;import java.util.Scanner;import java.util.Stack;public class Demo03 { public static void main(String[] args) { Stack<Character> stack = new Stack<Character...
2019-04-10 16:23:46
556
原创 准备一个长度为9的日期数组,使用1970年-2000年的随机日期初始化该数组,最后按照这些日期的时间进行排序
import java.text.SimpleDateFormat;import java.util.Date;import java.util.GregorianCalendar;public class Demo08{ public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDat...
2019-04-10 16:16:10
852
原创 输入两个整数M和N,求M的N进制表示方式(M大于0且N大于等于2小于等于16)
import java.util.Scanner;import java.util.Stack;public class suanFa02 { public static void main(String[] args) { Scanner console = new Scanner(System.in); Stack<Integer> stack = new Stack...
2019-03-29 15:37:31
1915
原创 一个数可以用二进制表示,也可以用十进制表示,如果该数的二进制表示法所有位数字之和等于十进制表示法所有位数之和,则称该数为神奇数,求小于等于M的神奇数有多少
import java.util.LinkedList;import java.util.Scanner;import java.util.Stack;public class suanFa01 { public static void main(String[] args) { Stack<Integer> stack = new Stack<Integer&g...
2019-03-29 14:25:39
615
原创 java设计四位密码实践
import java.util.LinkedList;import java.util.Scanner;public class Demo06 {public static void main(String[] args) { LinkedList key = new LinkedList(); LinkedList input = new LinkedList(); Linke...
2019-03-29 10:48:31
585
原创 从零开始JAVA数据结构学习笔记(七)
二叉树 二叉树是每个节点最多有两个子树的树结构。通常子树称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找和二叉堆。 定义:二叉树是一个连通的无环图,并且每一个顶点的度不大于3.有根二叉树还要满足根结点的度不大于2.有了根结点之后,每个顶点定义了唯一的父节点,和最多2个子结点。 完全二叉树...
2019-03-25 09:34:58
224
原创 JAVA链表部分排序算法实现
冒泡排序算法import java.util.LinkedList;public class maoPaoSuanFa { public static void main(String[] args) { LinkedList<Integer> list = new LinkedList<Integer>(); for(int i = 0; i <...
2019-03-23 18:28:21
709
原创 运用栈设计一个简单的二进制计算器
import java.util.Scanner;import java.util.Stack;public class erJinZhiJiSuanQi {public static void main(String[] args) { int sum = 0; Stack stack = new Stack(); Scanner console = new Scanner(Sy...
2019-03-22 14:31:46
600
原创 从零开始JAVA数据结构学习笔记(六)
对java自带的stack功能做部分理解import java.util.Stack;public class Demo03 {public static void main(String[] args) { Stack<Integer> stack1 = new Stack<Integer>();//定义一个栈stack1 for(int i = 0...
2019-03-22 14:29:01
122
原创 从零开始JAVA数据结构学习笔记(五)
队列队列的定义 队列是一种特殊的线性表,特殊之处在于它只允许在表的前端进行删除操作,而在表的后端进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾(rear),进行删除操作的端称为队头(front)。队列的特性 队列中没有元素称为空队列(rear == front)。 队列中插入一个元素称为“入队”,从队列...
2019-03-22 12:00:51
180
原创 使用JAVALinkedList解决约瑟夫圆环问题
import java.util.LinkedList;import java.util.Scanner;public class yueSeFuHuan { public static void main(String[] args) { int leftnum = 0; int x = 0; LinkedList list = new LinkedList(); S...
2019-03-22 10:17:00
685
原创 从零开始JAVA数据结构学习笔记(四)
栈的定义: 栈又称为堆栈,是一种受限的线性表,这是因为它仅允许在线性表的固定一端(表尾)进行插入、删除、栈顶元素等运算,不允许在其他任何位置进行运算,限制操作的表尾端称为“栈顶”,另一端称为“栈底”。特点:栈是“后进先出”的线性表或“先进后出”的线性表。顺序存储结构 需要一个数组和整型变量,利用数组来存储元素,利用整型变量存储栈顶元素的下标,通常用TOP表...
2019-03-21 14:56:25
138
原创 从零开始JAVA数据结构学习笔记(二)
import java.util.LinkedList;public class Demo02 { public static void main(String[] args) { LinkedList<Number> list = new LinkedList<Number>();//定义链表list LinkedList<Number> lis...
2019-03-21 10:17:21
150
原创 从零开始JAVA数据结构学习笔记(三)
对动态数组ArrayList部分自带功能进行了实验理解import java.util.ArrayList;import java.util.Arrays;public class Demo1 {public static void main(String[] args) { ArrayList<Number> arr1 = new ArrayList<Numbe...
2019-03-21 10:15:04
167
原创 从零开始JAVA数据结构学习笔记(一)
线性表定义:线性表:由零个或多个元素组成的有限序列如果一个数据元素序列满足:(1)除第一个和最后一个数据元素外,每个数据元素只有一个前区数据元素和一个后继数据元素;(2)第一个数据元素没有前驱数据元素;(3)最后一个数据元素没有后继数据元素。注意:数组从0开始计算,线性表从1开始计算;线性表分支:(1)顺序表:使用顺序结构实现的线性表ps:计算机有两种基本的存储结构(物理):顺序...
2019-03-20 14:15:15
329
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人