自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

坚持不懈做贡献

走过路过 ,不要错过,

  • 博客(148)
  • 收藏
  • 关注

原创 Node.js学习

借鉴:https://www.jianshu.com/p/c36666b306aaNode.js 安装参见https://www.runoob.com/nodejs/nodejs-http-server.htmlnode.js组成引入 required 模块:我们可以使用 require 指令来载入 Node.js 模块。创建服务器:服务器可以监听客户端的请求,类似于 Apache 、Nginx 等 HTTP 服务器。接收请求与响应请求 服务器很容易创建,客户端可以使用浏览器或终端发送 HTT

2020-06-24 11:11:21 926

原创 创建基本的webpack 4.X项目

学习来源:黑马程序员webpack 4.x新建一个文件夹用vs code打开在命令行运行:npm init -y初始化项目在项目根目录创建目录结构:src源代码目录,dist产品目录创建html页面在src目录下,如:index.html新建一个index.js文件为打包入口文件在命令行:cnpm i webpack -D -cli- 全局运行npm i cnpm -g在根目录下创建一个:webpack.config.js文件在该文件中输入:module.exports = {mode

2020-06-24 11:10:29 906

原创 react学习

参考来源菜鸟教程前期需要Node.js和webpackReact安装React 可以直接下载使用,下载包中也提供了很多学习的实例。本教程使用了 React 的版本为 16.4.0,你可以在官网 https://reactjs.org/ 下载最新版。你也可以直接使用 Staticfile CDN 的 React CDN 库,地址如下:引用时写到部分<script src="https://cdn.staticfile.org/react/16.4.0/umd/react.developme

2020-06-19 18:13:50 890

原创 git新手常用命令

建立本地仓库git init让本地仓库和远程仓库进行关联git remote add origin git +库名进行添加和提交操作git commitpush到远程git push从远程仓库拉分支代码到本地git clone +库名在IDE中上传gitVCS->Git->commit file ->push...

2019-06-27 14:32:57 900

原创 从业测试开发应该掌握哪些基本技能

测试开发顾名思义需要我们掌握测试技能and开发技能。一、测试测试按测试通常工作范畴通常分:单元测试、接口测试、集成测试、功能测试等。从我们软件开发过程中测试人员的主要作用来看。【需求】我们需要了解这个项目的需求,也就是说,用户需要这个软件最终要实现哪些功能、有哪些要求。【质量解决方案】然后我们需要根据需求评审、技术方案评审提供出一系列测试用例。解决方案的给出要尽可能覆盖所有场景。从而保...

2019-06-17 12:14:15 4120 2

原创 spring基本操作

1.如果要项目中使用spring要先导入spring相关基本的jar包主要有:commons-logging-1.1.3.jar 日志管理spring-beans-3.2.5.RELEASE.jar bean节点spring-context-3.2.5.RELEASE.jar spring上下文节点spring-core-3.2.5.RELEASE.jar spring核心功能pri...

2019-05-25 17:52:38 849

原创 HTML CSS标签基础

HTML是超文本标记语言可以标记网页中字体格式、视频、音频等HTML中的标签一般都是成对出现的我们随便打开一个网页,单击右键查看源所以。我们来说一下HTML的标准框架。<html> --根标签 <head> --头标签:指定当前网页的编码格式以及当前窗口标题 <...

2019-04-26 20:49:04 811

原创 spring mvc的工作流程

MVC即模型-视图-控制器(1)模型:模型持有所有的数据、状态和程序逻辑;模型独立于视图和控制器。一个模型提供多个不同的视图表现形式,当一个模型创建新的视图也无须重写模型。一旦模型的数据发生变化,模型将通知有关的视图,每个视图相应地刷新自己。(2)视图:用来呈现模型。视图通常直接从模型中取得它需要显示的状态与数据。对于相同的信息可以有多个不同的显示形式或视图。(3)控制器:位于视图和模型中...

2019-04-25 22:32:34 1033

原创 如何安装配置python和selenium环境

1.安装python到Python官网下载Python安装包:https://www.python.org/ 到官网下载安装包 本人使安装是2.7版本,不建议太新的版本。傻瓜式安装。记得如果C盘不够大。可以修改安装的目录。但是,记住哦。配环境要用配python环境打开我的电脑。单击右键点击属性进入左侧的高级系统设置点击环境变量在系统误差path中添加你的python路径。验证是否...

2019-04-24 15:00:13 832

原创 自动化测试的基本流程

测试如果按照是否手工划分可以分为手工测试和自动化测试。手工测试执行效率慢,容易出错。但是可以进行探索性测试和发散性测试。自动化测试则是和手工测试对立互补。实施自动化测试的基本步骤首先,需要已经完成了功能测试,此时测试版本稳定,属性、功能稳定。根据项目的特点、选择合适的自动化测试工具,并搭建测试环境提取手工测试的测试用例 转化为自动化测试用例通过工具、代码实现自动化的构造输入、自动检测输...

2019-03-25 19:55:11 17739

原创 "访达"文件搜索助手

基于java语言模拟实现本地的快速文件搜索神器。首先windows下的桌面搜索软件是遍历式查找,速度较慢。如果想要提高速度,我采用的是通过连接数据库,在查找之前将文件的目录信息经过全盘符遍历存入数据库中,待查找的时候便从...

2019-03-11 11:06:32 1483

原创 局域网文件文本在线传输助手

局域网文件文本在线传输助手具体实现代码链接下面我将详细记录,我在完成该项目涉及的具体问题的具体分析实现。要进行局域网通信首先要做的就是客户端和局域网建立链接。链接过程服务器端是无法知道都有哪些客户端要和其建立连接的。所以必须客户端首先拿到服务器的ip和端口号发起建立请求。但是,这也有个要求,就是服务器这个时候已经启动等待客户端发来请求。所以我们在最终启动的时候,应先启动服务器。客户端:...

2019-03-09 12:30:49 2381

原创 java虚拟机jvm垃圾回收机制

首先在java虚拟机jvm中主要包含五类内存结构:程序计数器、虚拟机栈、本地方法栈。这三类随线程生和灭。所以不需要考虑其回收问题。随着线程终止,其自然而然就销毁了。其次还有堆区和方法区。垃圾回收器主要针对的就是堆区和方法区来回收前来确定具体哪些对象需要回收。引用计数法被引用则计数器+1,解除绑定则计数器-1, = 0 时及该对象可以被释放。但是引用计数法无法解决循环引用的问题。可达性分析...

2019-03-08 23:33:31 829

原创 java 常用集合类详解

java中的类集框架主要在jdk1.2中 在util包中。为了解决数组定长问题产生。在集合框架中有两个顶层的父接口Collection 和 MapCollectionCollection下有四个子接口 List 、Queue、Set和IteratorList 允许数据重复Set 通过底层Map 不允许数据重复QueueIterator 集合遍历迭代接口,只有Collection有...

2019-02-21 10:42:38 857

原创 数据库-事务管理详解

为什么要引入事务管理举个例子:显示生活中我们经常有多个用户访问修改同一段数据的现象比如超卖,就是大家看这个物品还有1个货,都买的。但实际只有一个,卖的大于货的数量。火车票啊,网购啊,演出座位啊,这些出现这种显示都是很可怕的。所以数据库引入事务管理来避免这种事情的发生。什么是事务事务就是一组DML(数据操作语句)组成的整体。在使用过程中,这组语句的操作是一个整体,要么一起成功,要么一起失败的原...

2018-12-27 17:02:02 998

原创 数据库-索引详解

数据库为什么引入索引在数据库操作中我们最常用的就是查询,因为数据量庞大,为了提高查询速度,提高数据库性能。引入索引。 但是查询速度的提高的代价-空间换时间-就是 插入,更新,删除速度的降低。索引分类主键索引(primary key) 主键约束就是通过主键索引实现的1.主键索引尽量为int,效率高2.一个表中只能创建一个主键索引3.创建主键索引的属性列 不但不能重复而且不能为空inn...

2018-12-27 12:21:37 838

原创 数据库-表操作和属性相关约束

创建表create table [表名]( 属性名称 属性约束... )character set [字符集] collate [检验规则] engine [引擎] ;--没有设置也会有默认的show create table [ 表名]; 类似于:desc [表名];修改表列alter table 【表操作add modify drop】 属性 属性约束add:添加列...

2018-12-24 17:41:55 1272 1

原创 数据库基础

为什么引入数据库文件存储缺点:1.存在安全性问题2.不利于数据查询和管理3.不利于存储海量数据4.在程序中不利于控制数据库的存储介质1.磁盘2.内存 典型的是redis数据库 特点:快,性能高。缺点:一些数据库系统还会定期将数据复制到磁盘系统,就是为了应对上述突然断电或系统宕机的情况。主流数据库SQL Server :微软的产品,适用于中大型项目Oracle:甲骨文的产...

2018-12-24 16:19:07 762 1

原创 java-IO操作详解

java中提供5个关于IO操作的类File、OutputStream、inputStream、Reader、Wirter

2018-12-08 14:11:32 793 1

原创 测试和缺陷

什么是bug如果规格说明书存在且正确的情况下,程序和规格说明之间的不一致、不匹配就是bug当没有规格说明书时,当程序没有实现其最终用户合理预期的功能要求时,就是bug那么测试人员如何描述一个缺陷呢一个完整的bug描述要包括几部分:1.发现问题的版本2.问题出现的环境:操作系统、浏览器版本等3.错误重现的步骤、描述问题重现的最短步骤4.预期行为的描述 -预期结果5.错误行为的描述-...

2018-12-02 13:50:59 1356

原创 Java反射详解

什么是反射以往我们使用类和对象的顺序都是,先创建好类,然后再通过类创建对象。和这不同的是,反射的工作主要是先拿到对象然后根据对象倒推类的组成。也许你会问,虽然我拿到了对象,但是我怎么知道类里有啥呢?发射的核心处理在于每个类都继承了Object类这种操作就很像盗版的操作:原创是先有的构想,然后设计图纸,然后创建出模型,再生产出产品。而盗版却是已经拿到了产品,但是想利用这个产品倒退出模型然后再创...

2018-11-28 10:54:19 753

原创 java-通过AQS理解独占锁的实现机制

详细分析如何利用AQS实现独占锁的获取与释放独占式非公平锁的获取独占锁默认就是非公平锁,我们要想了解独占锁的获取是否,首先必须知道同步队列为一个有头尾节点的双向链表1.通过new ReentrantLock().lock();进入lock的的代码实现区public void lock() { sync.lock(); } ...... sync = new ...

2018-11-26 21:11:32 1908

原创 java中lock锁使用以及AQS理解

lock锁和关键字synchronized内建锁不同,Lock锁是完全由java语言实现的,Lock锁的代码在Java.util包下来完成我们同步访问临界资源。synchronized锁会使得其他线程阻塞等待等待被唤醒,而Lock使得其他请求访问的线程自旋等待竞争锁。Lock体系拥有可中断的获取锁以及超时获取锁以及共享锁等内建锁不具备的特性。lock锁,使用方法lock lock = new...

2018-11-26 15:51:41 1869

原创 剑指offer--矩阵中的路径

题目请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则之后不能再次进入这个格子。 例如 a b c e s f c s a d e e 这样的3 X 4 矩阵中包含一条字符串"bcced"的路径,但是矩阵中不包含...

2018-11-23 20:33:37 688

原创 剑指offer-两个链表的第一个公共结点

题目输入两个链表,找出它们的第一个公共结点。/*struct ListNode {&nbsp;int val;&nbsp;struct ListNode *next;&nbsp;ListNode(int x) :&nbsp;&nbsp;&nbsp;val(x), next(NULL) {&nbsp;}};*/class Solution {public:&nbsp;&nbs...

2018-11-23 20:19:21 716

原创 剑指offer--整数中1出现的次数(从1到n整数中1出现的次数)

题目求出1-13的整数中1出现的次数,并算出100-1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数(从1 到 n 中1出现的次数)。class Solution {public: int Number...

2018-11-23 20:16:08 715

原创 java-生产者消费者模型

利用Object类提供的wait和notify方法实现生产者消费者模型wait()方法wait方法用于同步代码块或者同步方法中,且锁必须是内建锁synchronized,如果使用wait时没有锁,则会抛出异常。wait方法使得调用该方法的线程停止运行进入等待,释放对象锁,运行其他线程竞争该锁,从运行态到阻塞态,并且将该线程置入该锁对象的等待队列中,直到接收到notify()或者被中断、终止...

2018-11-23 19:54:20 1545

原创 java中锁的几种分类

锁的分类java中锁按竞争状态、竞争程度可以分为4种锁,分别为无锁、偏向锁、轻量级锁、重量级锁,这些锁只能按照竞争激烈程度自动升级,不能降级,以提高锁的获取与释放效率。在java中,对象在内存中存储的布局可以分为三块区域:对象头(Header)、实例数据(Instance Data)和对齐填充(Padding)。在对象头的MarkWord字段中,存储着对象的Hashcode(地址映射),分代年...

2018-11-23 17:50:18 1818 1

原创 java中乐观锁CAS操作详解

什么是乐观锁乐观锁就是假设所有线程访问共享资源都不会出现冲突,由于不会出现冲突所以就不会也不需要去阻塞其他线程。因此线程不会出现阻塞等待的状态。但是一旦发生冲突时,无锁操作,会使用CAS操作来鉴别线程是否出现冲突,出现冲突了就重复尝试,直到没有冲突为止。什么时CAS操作。CAS操作就是Compare And Swap比较交换操作。在CAS中操作中,有三个值。V,O,N。V:当前内存中存放...

2018-11-21 16:28:51 1327

原创 java中用synchronized实现同步处理

synchronizedJava中提供synchronized关键字实现同步处理,用synchoronized可以修饰代码块,修饰方法,来完成对 对象加锁,对类加锁的操作。synchoronized是重量级锁。意思就是当有一个线程A进入时其他想访问的线程阻塞师等待,等待该线程A执行完整个加锁区间,系统自动释放锁,并唤醒等待的其他线程竞争锁。对象锁synchronized修饰同步代码块 --锁...

2018-11-21 09:01:42 1483

原创 java中线程状态转化以及转换方法

线程中状态和进程意义。线程从启动到终止一种由5个状态。分别时创建状态,就绪状态,运行状态,阻塞状态和终止状态。状态转换常用方法创建状态-&amp;gt;(start()方法)-&amp;gt;就绪状态就绪状态-&amp;gt;(系统调度)-&amp;gt;运行状态运行状态-&amp;gt;(yiekd()方法)-&amp;gt;运行状态运行状态-&amp;gt;(sleep()\join()\wait()方法)-&amp

2018-11-20 23:17:12 1101

原创 java中的线程概念以及线程创建

什么是线程要想知道什么是线程,就要知道什么是进程。那什么是进程呢?进程指的是操作系统中一个程序的执行生命周期,也就是从他点击run程序创建中,直到程序运行结束退出。整个执行过程叫做进程。那什么是线程呢。一个进程中肯定不止有一个线程,那么通俗的将进程的每一个子任务就是一个线程。对比进程和线程1.与进程相比,线程更加的轻量级。线程的创建、撤销相比较于进程的开销要小的多。2.没有进程就没有线程...

2018-11-19 21:17:56 734

原创 初步了解软件测试

什么是软件测试软件测试的主要工作就是验证软件功能是否满足用户需求。那么软件测试和软件的调试又没什么区别呢?1.目的不同软件测试的目的测试找出和程序的缺陷,而软件调试过程是为了定位问题,并解决问题。2.参与角色不同软件测试是由测试人员主要参与的,而软件调试是又开发人员完成的3.执行阶段不同测试要贯穿整个软件的开发生命周期,而调试只在开发阶段。软件测试又有哪些岗位呢有软件测试开发工...

2018-11-18 22:18:26 1217

原创 LeetCode-905.按奇偶排序数组

给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。你可以返回满足此条件的任何数组作为答案。 示例:输入:[3,1,2,4]输出:[2,4,3,1]输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。提示:1 &amp;lt;= A.length &amp;lt;= 50000 &amp;lt;= A[i] &amp;lt;= 5000代码实现c...

2018-11-14 19:55:08 700

原创 LeetCode-709.转换成小写字母

实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。示例 1:输入: “Hello”输出: &quot;hello&quot;示例 2:输入: “here”输出: &quot;here&quot;示例 3:输入: “LOVELY”输出: “lovely”代码实现class Solution { public String toLowerC...

2018-11-14 19:51:30 658

原创 LeetCode-804.唯一摩尔斯密码词

国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串, 比如: “a&quot;对应 “.-”, “b” 对应 “-…”, “c” 对应 “-.-.”, 等等。为了方便,所有26个英文字母对应摩尔斯密码表如下:[”.-&quot;,&quot;-…&quot;,&quot;-.-.&quot;,&quot;-…&quot;,&quot;.&quot;,&quot;…-.&quot;

2018-11-14 19:40:38 726

原创 LeetCode-476.数字的补数

给定一个正整数,输出它的补数。补数是对该数的二进制表示取反。注意:给定的整数保证在32位带符号整数的范围内。你可以假定二进制数不包含前导零位。示例 1:输入: 5输出: 2解释: 5的二进制表示为101(没有前导零位),其补数为010。所以你需要输出2。示例 2:输入: 1输出: 0解释: 1的二进制表示为1(没有前导零位),其补数为0。所以你需要输出0。代码实现:class Sol...

2018-11-14 19:38:50 749

原创 java-泛型和通配符详解

为什么引入泛型在我们代码编写中我们一个类常理来说一个属性只能接受一种类型。而我们如果需要多个类型转换就需要多个属性。而对应这个属性又有多个方法对之对应。这样就是的代码的复用性差。为了节省代码量,提供泛型。泛型的定义泛型有两种形式。泛型类和泛型方法。泛型类的类型擦除所谓的泛型类其实只是语法糖,也就是说泛型类仅存在用源码阶段,当代码进行编译后泛型就会被类型擦除,当进入JVM虚拟机后,和泛型有...

2018-11-13 17:40:06 1011

原创 java-链表详解

##java实现链表的主要操作interface ILink{ boolean add(Object data); void printLink(); Object remove(Object data); Object set(int index,Object data); Object get(int index); boolean cont...

2018-11-10 21:34:18 4821

原创 LeetCode-395. 至少有K个重复字符的最长子串

找到给定字符串(由小写字符组成)中的最长子串 T , 要求 T 中的每一字符出现次数都不少于 k 。输出 T 的长度。示例 1:输入:s = “aaabb”, k = 3输出:3最长子串为 “aaa” ,其中 ‘a’ 重复了 3 次。示例 2:输入:s = “ababbc”, k = 2输出:5最长子串为 “ababb” ,其中 ‘a’ 重复了 2 次, ‘b’ 重复了 3 次。...

2018-11-09 21:10:43 3241

空空如也

空空如也

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

TA关注的人

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