自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 JS实现列表数据左右、上下移动功能

本文主要介绍JS实现将左边下拉框列表选中项数据添加到右边的功能,支持多选移动。文章中提供了两种方案,一种是将左侧选中项复制到右边,左侧数据不发生变化,同时阻止数据重复添加到右侧;另一种是数据添加到右边的同时从左边移除,从右边移除的同时向左边追加,并对右侧列表数据实现了上下移动功能。 一、效果图 ...

2018-04-13 16:46:51 5410 0

原创 PDF.js使用总结

PDF.js使用总结 PDF.js是为html5实现的在线预览pdf框架,所以使用的前提是浏览器要支持html5。该插件不需要任何本地支持,对浏览器的兼容性也比较好(低版本的IE浏览器请绕行)。 本文记录了pdf.js插件使用方式和框架构建过程中遇到的一些问题,主要实现了以文件路径和文件流...

2018-03-15 17:03:37 11697 3

原创 Select2学习总结

本文主要是对Select2插件常用使用方法的一些总结。包括其单选、多选、分组显示、按照拼音搜索功能。并通过测试示例对其效果进行了验证。 一、效果图 二、 使用方式 1.使用前需要引入下面几个插件: select2.css或者select2.min.css select2....

2017-12-12 11:56:14 18211 5

原创 C#实现Word转PDF

本文主要是采用C#将wps文件转为PDF。需要提前安装好WPS,并在程序中添加引用using Microsoft.Office.Interop.Word; 具体源码如下所示:using System; using System.Collections.Generic; using System....

2017-10-10 11:39:26 7668 1

原创 Java实现文件上传下载工具类

本篇文章在Eclipse环境下采用Java语言实现文件上传下载工具类。上传时,为避免文件名在服务器中重复,采用“服务器时间(定义到毫秒)+文件名+文件后缀“的方式作为服务器上的文件名;下载过程中利用 spring mvc ResponseEntity 做文件下载,返回的是字节流,下载成功后可自定义...

2017-10-10 08:52:54 5924 0

原创 C#实现文件上传下载工具类

本篇文章在VS2013环境下采用C#语言实现将文件上传和下载功能。上传时,为避免文件名在服务器中重复,采用“服务器时间+8位随机码+文件名+文件后缀“的方式作为服务器上的文件名;下载采用的是WebAPI的方式进行的,下载成功后可自定义文件的保存路径。具体源码如下所示:using System; u...

2017-10-09 17:24:05 4081 0

原创 session过期后自动跳转到登陆页

**通过过滤器的方式实现 session过期后自动跳转到登陆页** 过滤器只在与servlet规范2.3版兼容的服务器上有作用。如果你的Web应用需要支持旧版服务器,就不能使用过滤器。 一. 建立基本过滤器建立一个过滤器涉及下列五个步骤: 1)建立一个实现Filter接口的类Session...

2016-11-14 11:38:22 18407 2

原创 面试总结------黑盒、白盒测试相关

黑盒、白盒测试黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。 白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。一、黑盒测试(又叫功能测试或数据驱动测试) 软件的黑盒测试意味着测试要在软件的接口处进...

2016-11-14 11:15:06 6518 0

原创 面试总结-----工程化软件项目开发的流程、步骤

工程化软件项目开发的流程、步骤 需求分析 (1)相关系统分析员向用户初步了解需求,然后用相关的工具软件列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。 (2)系统分析员深入了解和分析需求,根据自己的经验和需求...

2016-11-14 11:11:59 2078 0

原创 面试总结------常用SQL语句

面试总结——常用SQL语句 说明:创建数据库 CREATE DATABASE database-name; 说明:删除数据库 DROP DATABASE database-name; 说明:创建新表 create table depart (dept_id int(11) NOT NULL ...

2016-11-14 11:09:48 19840 1

原创 面试总结------Spring框架相关

1. spring IOC与AOP思想的理解控制反转(IOC):所谓控制反转就是应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部容器负责的。这样控制权就由应用转移到了外部容器,控制权的转移就是所谓反转。依赖注入(DI):在运行期,由外部容器动态地将依赖对象注入到组件中,从而创建用对...

2016-11-14 10:40:15 7933 1

原创 面试总结------Java基础

1.为什么内部类访问的外部变量需要使用final修饰 ? 因为生命周期的原因。方法中的局部变量,方法结束后这个变量就要释放掉,final保证这个变量始终指向一个对象。 首先,内部类和外部类其实是处于同一个级别,内部类不会因为定义在方法中就会随着方法的执行完毕而跟随者被销毁。问题就来了,如果外部...

2016-11-14 10:30:26 1103 0

原创 面试总结------Java内存管理与多线程

面试总结——Java内存管理与多线程1. 什么是线程?什么是进程?同一进程下的线程共享线程:程序在执行过程中,能够执行程序代码的一个执行单元,一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发执行。在Java语言中有4种状态:运行、就绪、挂起、结束。进程:指一段正在执行的程序。线...

2016-11-14 09:57:54 3703 1

转载 Ubuntu默认防火墙安装、启用、配置、端口、查看状态相关信息(转)

Ubuntu默认防火墙安装、启用、配置、端口、查看状态相关信息

2016-06-28 15:51:41 844 0

原创 抽象类与接口

面向对象设计的重点在于抽象,那Java接口和Java抽象类就有它存在的必然性了。正是由于他们的存在才赋予java强大的面向对象的能力。他们两者之间对抽象概念的支持有很大的相似,甚至可以互换,但是也有区别。 Java接口(interface)和Java抽象类(abstract class)...

2016-06-07 18:00:39 3445 2

原创 面向对象编程三大特性------封装、继承、多态

本文是对面向对象编程三大特性(封装、继承、多态)的一个学习总结。 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据。对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问方法。 继承是为了重用父类代码。两个类若存在IS-A的关系就可以使用继承。,同时继承也为...

2016-06-07 11:41:12 58890 9

原创 【数据结构】链表的原理及与其相关的常见面试题总结

链表是一种数据结构,和数组同级。比如,Java中我们使用的ArrayList,其实现原理是数组。而LinkedList的实现原理就是链表了。链表在进行循环遍历时效率不高,但是插入和删除时优势明显。下面对单向链表做一个介绍。 单向链表是一种线性表,实际上是由节点(Node)组成的,一...

2016-06-06 09:49:49 4414 1

转载 HashMap HashTable HashSet区别剖析总结

HashMap、HashSet、HashTable之间的区别是Java程序员的一个常见面试题目,在此仅以此博客记录,并深入源代码进行分析:

2016-06-06 09:05:24 1487 0

转载 【数据结构】HashTable原理及实现学习总结

有两个类都提供了一个多种用途的hashTable机制,他们都可以将可以key和value结合起来构成键值对通过put(key,value)方法保存起来,然后通过get(key)方法获取相对应的value值。一个是前面提到的HashMap,还有一个就是马上要讲解的HashTable。对于HashTa...

2016-06-04 11:36:52 6702 0

原创 【数据结构】HashSet原理及实现学习总结

在上一篇博文(HashMap原理及实现学习总结)详细总结了HashMap的实现过程,对于HashSet而言,它是基于HashMap来实现的,底层采用HashMap来保存元素。所以如果对HashMap比较熟悉,那么HashSet的原理应该很好理解!一.HsahSet概述HashSet实现Set接口,...

2016-06-03 17:39:15 6325 0

转载 HashMap源码分析

在前篇博文中(HashMap原理及实现学习总结)详细总结了HashMap的原理及实现过程,这一篇是对HashMap的源码分析。

2016-06-03 16:32:14 1127 0

原创 【数据结构】HashMap原理及实现学习总结

HashMap是Java中最常用的集合类框架之一,是Java语言中非常典型的数据结构。本篇主要是从HashMap的工作原理,数据结构分析,HashMap存储和读取几个方面对其进行学习总结。关于HashMap的完整源码分析请查看下一篇。一. HashMap的工作原理HashMap基于hashing原...

2016-06-03 15:10:50 6564 0

原创 【Spring】SpringMVC整合JPA

这篇文章是在SpringMVC的基础上对数据持久层JPA的整合,实现了应用层和数据库的数据交互。在整合JPA前,请先参照下面第一篇博文搭建好SpringMVC框架。一. 和本篇博文相关的一些基础知识请参考下面几篇博文: SpringMVC框架的搭建和配置详解请参考:http://blog.csdn...

2016-05-09 12:45:18 19770 0

原创 【面试笔试】数据库相关

1.存储过程和函数的区别 存储过程是用户定义的一系列sql语句的集合,涉及特定表或其它对象的任务,用户可以调用存储过程,而函数通常是数据库已定义的方法,它接收参数并返回某种类型的值并且不涉及特定用户表。2.事务是什么?事务是作为一个逻辑单元执行的一系列操作,一个逻辑工作单元必须有四个属性,称为 ...

2016-05-05 17:47:38 673 0

转载 【面试笔试】软件测试相关

软件测试的目的 在软件测试设计中,软件测试的主要目的是(D)。 A.实验性运行软件 B.证明软件正确 C.找出软件中全部错误 D.发现软件错误而执行程序 (注意:不是为了证明软件的正确性,也不是为了找出全部错误) 下列叙述中.不属于测试的特征的是(C)。 A.测试的挑剔性 B...

2016-05-05 17:42:04 789 0

转载 【面试笔试】程序设计基础

一.程序设计方法与风格 在结构化程序设计思想提出之前,在程序设计中曾强调程序的效率。与程序的效率相比,人们更重视程序的( C )。 A.安全性 B.一致性 C.可理解性 D.合理性 对建立良好的程序设计风格,下面的描述正确的是(A ) A.程序应简单、清晰、可读性好 B.符号名...

2016-05-05 17:35:48 1236 0

转载 【面试笔试】数据结构与算法

基础知识:一.算法的基本概念 计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法。 1.算法的基本特征:可行性,确定性,有穷性,拥有足够的情报。 2.算法的基本要素:算法中对数据的运算和操作、算法的控制结构。 3.算法设计的基本方法:列举法、归纳法、递推、递归、减半递推技术、回...

2016-05-05 17:27:01 1564 1

原创 【排序算法】各种排序算法学习总结

常用排序算法的复杂度分析整理 具体分析如下:1 冒泡排序(BubbleSort)冒泡排序是最慢的排序算法。在实际运用中它是效率最低的算法。它通过一趟又一趟地比较数组中的每一个元素,使较大的数据下沉,较小的数据上升。它是O(n^2)的算法。步骤: (1)比较相邻的元素。如果第一个比第二个大,...

2016-04-27 19:19:05 3308 4

原创 【排序算法】堆排序原理及Java实现

1、基本思想堆是一种特殊的树形数据结构,其每个节点都有一个值,通常提到的堆都是指一颗完全二叉树,根结点的值小于(或大于)两个子节点的值,同时,根节点的两个子树也分别是一个堆。 堆排序就是利用堆(假设利用大顶堆)进行排序的方法。它的基本思想是,将待排序的序列构造成一个大顶堆。此时,整个序列的最...

2016-04-27 18:34:23 21424 10

原创 【排序算法】归并排序原理及Java实现

归并排序就是利用归并的思想实现的排序方法。而且充分利用了完全二叉树的深度特性,因此效率比较高。其基本原理如下:对于给定的一组记录,利用递归与分治技术将数据序列划分成为越来越小的半子表,在对半子表排序,最后再用递归方法将排好序的半子表合并成为越来越大的有序序列。 经过第一轮比较后得到最小的记录,然...

2016-04-27 17:35:43 34266 13

原创 【Spring】Spring MVC原理及配置详解

【Spring】Spring MVC原理及配置1.Spring MVC概述:Spring MVC是Spring提供的一个强大而灵活的web框架。借助于注解,Spring MVC提供了几乎是POJO的开发模式,使得控制器的开发和测试更加简单。这些控制器一般不直接处理请求,而是将其委托给Spring上...

2016-04-27 10:14:29 277004 48

原创 【排序算法】希尔排序原理及Java实现

希尔排序也成为“缩小增量排序”,其基本原理是,现将待排序的数组元素分成多个子序列,使得每个子序列的元素个数相对较少,然后对各个子序列分别进行直接插入排序,待整个待排序列“基本有序”后,最后在对所有元素进行一次直接插入排序。因此,我们要采用跳跃分割的策略:将相距某个“增量”的记录组成一个子序列,这样...

2016-04-27 09:19:55 24217 13

原创 【排序算法】快速排序原理及Java实现

快速排序是我们之前学习的冒泡排序的升级,他们都属于交换类排序,都是采用不断的比较和移动来实现排序的。快速排序是一种非常高效的排序算法,它的实现,增大了记录的比较和移动的距离,将关键字较大的记录从前面直接移动到后面,关键字较小的记录从后面直接移动到前面,从而减少了总的比较次数和移动次数。同时采用“分...

2016-04-27 09:08:20 71503 31

原创 【排序算法】插入排序原理及Java实现

直接插入排序的基本操作是将一个记录插入到已经排好的有序表中,从而得到一个新的、记录数增1的有序表。对于给定的一组记录,初始时假定第一个记录自成一个有序序列,其余记录为无序序列。接着从第二个记录开始,按照记录的大小依次将当前处理的记录插入到其之前的有序序列中,直到最后一个记录插到有序序列中为止。

2016-04-26 21:32:36 23813 2

原创 【排序算法】选择排序原理及Java实现

选择排序是一种简单直观的排序算法,其基本原理如下:对于给定的一组记录,经过第一轮比较后得到最小的记录,然后将该记录的位置与第一个记录的位置交换;接着对不包括第一个记录以外的其他记录进行第二次比较,得到最小记录并与第二个位置记录交换;重复该过程,知道进行比较的记录只剩下一个为止。

2016-04-26 21:28:30 16794 7

原创 【排序算法】冒泡排序原理及Java实现

冒泡排序顾名思义就是整个过程像气泡一样往上升,单向冒泡排序的基本思想是(假设由小到大排序):对于给定n个记录,从第一个记录开始依次对相邻的两个记录进行比较,当前面的记录大于后面的记录时,交换位置,进行一轮比较和换位后,n个记录的最大记录将位于第n位,然后对前(n-1)个记录进行第二轮比较;重复该过...

2016-04-26 21:26:11 12523 4

原创 【数据结构】二叉树的原理及实现学习总结

二叉树概述数组、向量、链表都是一种顺序容器,它们提供了按位置访问数据的手段。而很多情况下,我们需要按数据的值来访问元素,而不是它们的位置来访问元素,二叉树在很大程度上解决了这个问题,二叉树是按值来保存元素,也按值来访问元素。二叉树是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树...

2016-04-25 09:46:50 10681 1

原创 【面试笔试】Java常见面试笔试总结

Java常见面试笔试总结 1、有哪些数据类型 2、面向对象的语言特征 3、有几种访问机制? 4、面向对象的多态性在JAVA中怎么实现的 ? .......

2016-04-22 13:59:14 8636 1

原创 【数据结构】堆栈、队列的原理及java实现

栈(stack)又名堆栈,它是一种先进后出(FILO)的线性表。其限制是仅允许在表的一端进行插入和删除运算。 队列 是一种先进先出的线性表。其限制仅在表的一端(尾端)进行插入,另一端(首端)进行删除的线性表,先进先出FIFO。

2016-04-21 19:21:47 7100 1

原创 【数据结构】LinkedList原理及实现学习总结

LinkedList 和 ArrayList 一样,都实现了 List 接口,但其内部的数据结构有本质的不同。LinkedList 是基于链表实现的(通过名字也能区分开来),所以它的插入和删除操作比 ArrayList 更加高效。但也是由于其为基于链表的,所以随机访问的效率要比 ArrayList...

2016-04-20 22:06:27 23444 5

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