自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 UML分析

业务用例是客户业务视角,系统用例是系统视角概念用例视图用于展现从业务用例中经过分析分解出来的关键概念用例,并表示概念用例和业务用例之间的关系。一般来说这些关系有扩展、包含和精化。“分解”较大的业务用例所产生的结果就是概念用例。请注意分解两字的引号,实际上用例不是功能,是不可分解的,同时由于用例具有“原子”性,用例也是不能分解的。正确的说法是抽象。抽象出的概念用例通过包含、泛化、扩展关系连接到基本业务用例。关联关系:在最终的代码里,关联对象通常是以实例变量(成员变量)的形式实现的。在用例模型

2022-02-12 13:10:09 517

转载 网络基础描述

你是一台电脑,你的名字叫 A很久很久之前,你不与任何其他电脑相连接,孤苦伶仃。直到有一天,你希望与另一台电脑 B 建立通信,于是你们各开了一个网口,用一根网线连接了起来。用一根网线连接起来怎么就能"通信"了呢?我可以给你讲 IO、讲中断、讲缓冲区,但这不是研究网络时该关心的问题。如果你纠结,要么去研究一下操作系统是如何处理网络 IO 的,要么去研究一下包是如何被网卡转换成电信号发送出去的,要么就仅仅把它当做电脑里有个小人在开枪吧~反正,你们就是连起来了,并且可以通信。第一

2021-07-08 14:51:55 207

转载 CAP理论

CAP原则又称CAP定理,指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。1.一致性一致性指的是所有节点在同一时间的数据完全一致。2.可用性指服务一直可用,而且是正常响应时间。3、分区容错性分区容错性指在遇到某节点或网络分区故障的时候,仍然能够对外提供满足一致性和可用性的服务。一个分布式系统里面,节点组成的网络本

2021-07-02 10:27:32 162

转载 Java 泛型 T,E,K,V,?

原文链接:https://blog.csdn.net/agonie201218/article/details/110161739前言​ Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许开发者在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。泛型带来的好处​ 在没有泛型的情况的下,通过对类型 Object 的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换

2021-01-15 09:20:45 111

原创 前端知识点

import model from "@/common/model";resolve: { // 自动补全的扩展名 extensions: ['.js', '.vue', '.json'], // 默认路径代理 // 例如 import Vue from 'vue',会自动到 'vue/dist/vue.common.js'中寻找 alias: { '@': resolve('src'), '@config': resolve('co...

2021-01-05 09:45:39 839 1

原创 线程

sleep()使当前线程(即调用该方法的线程)暂停执行一段时间,让其他线程有机会继续执行,但它并不释放对象锁。也就是说如果有synchronized同步快,其他线程仍然不能访问共享数据。注意该方法要捕捉异常。join()join()方法阻塞调用此方法的线程,也就是等待该方法的线程执行完毕后再往下继续执行。注意该方法也需要捕捉异常。yield()使当前线程从执行状态(运行状态)变为可执行态(就绪状态)。cpu会从众多的可执行态里选择,也就是说,当前也就是刚刚的那个线程还是有可能会被再.

2020-10-24 14:50:01 64

转载 不懂数据库索引的底层原理?那是因为你心里没点b树

转载自:https://www.cnblogs.com/sujing/p/11110292.html  前几天下班回到家后正在处理一个白天没解决的bug,厕所突然传来对象的声音:  对象:xx,你有《时间简史》吗?  我:我去!妹子,你这啥癖好啊,我有时间也不会去捡屎啊!  对象:...人家说的是霍金的科普著作《时间简史》,是一本书啦!  我:哦,那我没有...  对象:人...

2019-07-29 07:43:42 94

转载 Java 垃圾回收

原文链接:https://yq.aliyun.com/articles/708634之前上学的时候有这个一个梗,说在食堂里吃饭,吃完把餐盘端走清理的,是 C++ 程序员,吃完直接就走的,是 Java 程序员。确实,在 Java 的世界里,似乎我们不用对垃圾回收那么的专注,很多初学者不懂 GC,也依然能写出一个能用甚至还不错的程序或系统。但其实这并不代表 Java 的 GC 就不重要。相...

2019-07-15 10:40:36 114

原创 spring相关注解

@Autowired默认按类型装配,默认情况下必须要求依赖对象必须存在,如果要允许null值,可以设置它的required属性为false,如:@Autowired(required=false) ,如果我们想使用名称装配可以结合@Qualifier注解进行使用,如下:@Autowired@Qualifier("baseDao")private BaseDao baseDao;如...

2019-05-08 21:18:11 83

原创 idea相关快捷键

IDEA新建一行,并且光标移到新行Shift + Enter向上新建一行,并且光标移到新行ctrl+alt+enter行尾加分号,ctrl+Shift +enter

2019-03-18 13:57:53 124

原创 maven配置详解

Maven配置详解:1.<modelVersion>4.0.0</modelVersion>Maven模型的版本号<groupId>公司名或是组织名</groupId><artifactId>项目名</artifactId><version>1.0.0-RC15</version&am

2018-12-03 14:02:26 1237

原创 变量字符串相加后与字符串的比较

public class Test6 { /** * 变量字符串相加后与字符串的比较 * @param args */ public static void main(String[] args) { String s="abcd"; String s2="abc"; String s3="d"; System.out.println((s3+s2)==s...

2018-09-12 17:29:15 595

原创 java stream用法

public class StreamProject { private List<Student> students; @Before public void before(){ students=new ArrayList<>(); for(int i=0;i<5;i++){ S...

2018-09-04 10:11:37 178

转载 restful风格

 转载,原文地址:https://blog.csdn.net/chenxiaochan/article/details/73716617REST是英文representational state transfer(表象性状态转变)或者表述性状态转移;Rest是web服务的一种架构风格;使用HTTP,URI,XML,JSON,HTML等广泛流行的标准和协议;轻量级,跨平台,跨语言的架构设计;它是...

2018-08-27 17:53:28 522

原创 面试题梳理

1.用最有效率的方法算出2乘以8等於几?2 << 3,因为将一个数左移n位,就相当于乘以了2的n次方,那么,一个数乘以8只要将其左移3位即可,而位运算cpu直接支持的,效率最高,所以,2乘以8等於几的最效率的方法是2 << 3。 2.使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?使用final关键字修饰一个变量时,是指引用变量不...

2018-07-05 10:40:31 196

转载 TCP/IP协议、UDP、HTTP协议、SOCKET通讯

UDP,在传送数据前不需要先建立连接,远地的主机在收到UDP报文后也不需要给出任何确认。虽然UDP不提供可靠交付,但是正是因为这样,省去和很多的开销,使得它的速度比较快,比如一些对实时性要求较高的服务,就常常使用的是UDP。对应的应用层的协议主要有 DNS,TFTP,DHCP,SNMP,NFS 等。TCP,提供面向连接的服务,在传送数据之前必须先建立连接,数据传送完成后要释放连接。因此TCP是一种...

2018-06-23 10:31:33 4037

转载 jdk8.0 内存划分

java1.8之前内存区域分为方法区、堆内存、虚拟机栈、本地方法栈、程序计数器。 下图所示:方法区(Method Area)与Java堆一样,是各个线程共享的内存区域,它用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。虽然Java虚拟机规范把方法区描述为堆的一个逻辑部分,但是它却有一个别名叫做Non-Heap(非堆),目的应该是与Java堆区分开来。很多人都更...

2017-12-14 09:57:13 6806

转载 数组 链表 哈希表

数组 链表 哈希表

2017-12-13 15:04:31 1571

转载 Java类加载器ClassLoader总结

JAVA类装载方式,有两种:1.隐式装载, 程序在运行过程中当碰到通过new 等方式生成对象时,隐式调用类装载器加载对应的类到jvm中。 2.显式装载, 通过class.forname()等方法,显式加载需要的类 类加载的动态性体现:一个应用程序总是由n多个类组成,Java程序启动时,并不是一次把所有的类全部加载后再运行,它总是先把保证程序运行的基础类一次性加载到jvm中,其它类等到jvm用到的时

2017-11-14 19:45:58 184

转载 Spring注解原理的详细剖析与实现

一、注解的基本概念和原理及其简单实用注解(Annotation)提供了一种安全的类似注释的机制,为我们在代码中添加信息提供了一种形式化得方法,使我们可以在稍后某个时刻方便的使用这些数据(通过解析注解来使用这些数据),用来将任何的信息或者元数据与程序元素(类、方法、成员变量等)进行关联。其实就是更加直观更加明了的说明,这些说明信息与程序业务逻辑没有关系,并且是供指定的工具或框架使用的。Ann

2017-11-14 09:37:46 1074

转载 虚拟机类加载机制详解

虚拟机类加载机制虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。

2017-11-13 20:45:50 179

原创 spring依赖注入

一.IOC:控制反转DI:依赖注入IOC 是一种思想,而DI 是实现IOC的主要技术途径。DI主要有两种注入方式,即setter注入和构造器注入。Setter注入:调用该bean的setter方法。 构造器注入:调用带参数的构造器,根据参数类型执行相应的构造器。  二.参数值注入1. 注入基本值 元素可以通过字符串指定属性或构造器参数的值

2017-11-04 16:57:58 132

转载 虚拟机类加载机制

虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。与那些在编译时需要进行连接工作的语言不同,在Java语言里面,类型的加载、连接和初始化过程都是在程序运行期间完成的,这种策略虽然会令类加载时稍微增加一些性能开销,但是会为Java应用程序提供高度的灵活性,Java里天生可以动态扩展的语言特性就

2017-09-09 20:35:09 136

转载 Class类文件的结构

Class文件是一组以8位字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在Class文件之中,中间没有添加任何分隔符,这使得整个Class文件中存储的内容几乎全部是程序运行的必要数据,没有空隙存在。当遇到需要占用8位字节以上空间的数据项时,则会按照高位在前 [1] 的方式分割成若干个8位字节进行存储。根据Java虚拟机规范的规定,Class文件格式采用一种类似于C语言结构体的伪结

2017-09-09 20:03:16 178

转载 数据库事务的四大特性以及事务的隔离级别

本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。  如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:⑴ 原子性(Atomicity)  原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。⑵ 一致性(Consistency

2017-09-04 09:28:16 140

转载 java内存模型及volatile关键字解析

一.内存模型的相关概念大家都知道,计算机在执行程序时,每条指令都是在CPU中执行的,而执行指令过程中,势必涉及到数据的读取和写入。由于程序运行过程中的临时数据是存放在主存(物理内存)当中的,这时就存在一个问题,由于CPU执行速度很快,而从内存读取数据和向内存写入数据的过程跟CPU执行指令的速度比起来要慢的多,因此如果任何时候对数据的操作都要通过和内存的交互来进行,会大大降低指令执行的速度。

2017-08-30 17:07:08 183

转载 垃圾收集器与内存分配策略

在堆里面存放着Java世界中几乎所有的对象实例,垃圾收集器在对堆进行回收前,第一件事情就是要确定这些对象之中哪些还“存活”着,哪些已经“死去”(即不可能再被任何途径使用的对象)。可达性分析算法在主流的商用程序语言(Java、C#,甚至包括前面提到的古老的Lisp)的主流实现中,都是称通过可达性分析(Reachability Analysis)来判定对象是否存活的。这个算法的基本

2017-08-26 18:32:46 149

转载 java内存区域

Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。程序计数器程序计数器(Program Counter Register)是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里(

2017-08-26 16:48:08 401

转载 tomcat并发

1、收到一个请求就处理,这个时候就不能处理新的请求,这种为阻塞 这个是单线程模型,无法并发,一个请求没处理完服务器就会阻塞,不会处理下一个请求。一般的服务器不会使用这种方式实现。2、收到一个请求就新开一个线程去处理任务,主线程返回,继续处理下一个任务,这也是阻塞的。它解决了主线程阻塞的问题,有了一定程度的并发量,但是在每个新开的线程中还是阻塞的。如果100个人同时访问,将会开100个线

2017-08-10 11:21:16 313

原创 struts2设置拦截器不拦截某请求

若web.xml配置的是拦截所有请求     struts2    /*  但有的请求不想拦截比如 /services/*可以在struts.xml配置

2016-10-09 14:34:37 3424

原创 jvm内存设置

若myeclipse内存不足则修改myeclipse.ini里的参数如下所示:-vmargs-Xms512m-Xmx1024m-XX:PermSize=512M-XX:MaxPermSize=1024m-XX:ReservedCodeCacheSize=64m-Dosgi.nls.warnings=ignoretomcat设置jvm内存大小(解压版)

2016-09-30 10:58:47 380

原创 java实时推送消息goeasy实现

首先在GoEasy官网上注册一个账号(https://goeasy.io),注册完毕后添加application,GoEasy会自动生成两个key,一个是Super key, 另一个是Subscribe key。    Super key:用于推送或接收         Subscribe key:仅用于接收,不能用来推送信息java项目导包:goeasy-sdk-0.3.1.

2016-07-27 13:59:33 2252 2

转载 java单例多例

1. 什么是单例多例:所谓单例就是所有的请求都用一个对象来处理,比如我们常用的service和dao层的对象通常都是单例的,而多例则指每个请求用一个新的对象来处理,比如action; 2. 如何产生单例多例:    在通用的SSH中,单例在spring中是默认的,如果要产生多例,则在配置文件的bean中添加scope="prototype"; 3. 为什么用单例多例:    之

2016-07-14 14:43:45 301

转载 spring管理hibernate获取session方法

转载自:http://blog.csdn.net/a549324766/article/details/7332818 这个是hibernate与spring整合开发,让DAO继承了spring的HibernateDaoSupport,这样的确能够提高开发效率 ,但是不够灵活,而且使DAO层依赖于spring的api,增加了耦合。但是不考虑复用的话还可以。    下面一个一个的分析: th

2016-07-14 09:52:33 3486 1

空空如也

空空如也

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

TA关注的人

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