手机版
你好,游客 登录 注册 搜索
rss订阅 手机访问 
Linux编程
MyBatis在Spring环境下的事务管理
MyBatis的设计思想很简单,可以看做是对JDBC的一次封装,并提供强大的动态SQL映射功能。但是由于它本身也有一些缓存、事务管理等功能,所以实际使用中还是会碰到一些问题——另外,最近接触了JFinal
日期:08/05/2019 14:05:40 作者:alterem
使用BigDecimal进行精确运算
其实java的float只能用来进行科学计算或工程计算,在大多数的商业计算中,一般采用java.math.BigDecimal类来进行精确计算。
日期:08/05/2019 13:43:20 作者:alterem
Java中通过Hibernate-Validation进行参数验证
在开发Java服务器端代码时,我们会遇到对外部传来的参数合法性进行验证,而hibernate-validator提供了一些常用的参数校验注解,我们可以拿来使用。
日期:08/05/2019 13:40:56 作者:alterem
Java高并发之锁的使用以及原理浅析
锁像synchronized同步块一样,是一种线程同步机制。让自Java 5开始,java.util.concurrent.locks包提供了另一种方式实现线程同步机制——Lock。那么问题来了既然都可以通过synchronized来实现同步访问了,那么为什么还需要提供Lock呢?
日期:08/04/2019 18:50:35 作者:AstrophelYang
Java并发之阻塞队列浅析
要想了解阻塞队列,先了解一下队列是啥,简单的说队列就是一种先进先出的数据结构。(具体的内容去数据结构里学习一下)所以阻塞队列就是一种可阻塞的队列。
日期:08/04/2019 18:45:59 作者:AstrophelYang
Java并发之线程池的使用浅析
需要一个办法使得线程可以复用,即当线程执行完一个任务,并不被销毁,而是可以继续执行其他的任务。在Java中就可以通过线程池来实现这样的效果。本文讲述了Java中的线程池类以及如何使用线程池。
日期:08/04/2019 18:42:20 作者:AstrophelYang
Java八大排序算法之冒泡排序
冒泡排序是从最后一位开始确定最大或最小的数,保证后面的数都是有序的且都大于或小于前面的数。
日期:08/04/2019 18:29:50 作者:十八岁
Java八大排序算法之选择排序
直到指针移到倒数第二位,确定倒数第二小(或倒数第二大)的数,那么最后一位也就确定了,排序完成。
日期:08/04/2019 18:27:45 作者:十八岁
Java八大排序算法之快速排序
快速排序的思想就是,选一个数作为基数(这里我选的是第一个数),大于这个基数的放到右边,小于这个基数的放到左边,等于这个基数的数可以放到左边或右边
日期:08/04/2019 18:25:34 作者:十八岁
Java八大排序算法之归并排序
归并排序就是递归得将原始数组递归对半分隔,直到不能再分(只剩下一个元素)后,开始从最小的数组向上归并排序
日期:08/04/2019 18:23:57 作者:十八岁
Java八大排序算法之堆排序
先来了解下堆的相关概念:堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于其左右孩子结点的值,称为小顶堆。
日期:08/04/2019 18:20:12 作者:十八岁
Java八大排序算法之希尔(shell)排序
Java八大排序算法之希尔(shell)排序
日期:08/04/2019 18:17:01 作者:十八岁
Java八大排序算法之基数排序
基数排序第i趟将待排数组里的每个数的i位数放到tempj(j=1-10)队列中,然后再从这十个队列中取出数据,重新放到原数组里,直到i大于待排数的最大位数。
日期:08/04/2019 18:15:18 作者:十八岁
Java八大排序算法之插入排序详解
八大排序算法之插入排序(动图演示 思路分析 实例代码Java 复杂度分析)
日期:08/04/2019 10:39:37 作者:十八岁
关于Java异常处理机制深入理解
Java 中的异常(Exception)又称为例外,是一个在程序执行期间发生的事件,它中断正在执行的程序的正常指令流。为了能够及时有效地处理程序中的运行错误,必须使用异常类。
日期:08/04/2019 10:31:09 作者:Linux
Java 中常见的排序算法
Java 中常见的排序算法
日期:08/03/2019 21:26:30 作者:原生zzy
C语言二维数组(解引用、指针数组、数组的指针)
说二维数组前先来说下一维数组中的指针数组和和数组的指针
日期:08/03/2019 21:08:18 作者:lanhaicode
C语言参数传递(值传递、地址传递)+二级指针
C语言参数传递一般分为:值传递和地址传递(本质上只有值传递) (注意:C语言中没有引用传递,C++才有引用传递,因为很多C语言环境是用C++编译器编译,使得C看起来支持引用传递
日期:08/03/2019 21:05:43 作者:lanhaicode
C语言文件操作(FILE)与常用文件操作函数
C程序把文件分为ASCII文件和二进制文件,ASCII文件又称文本文件,二进制文件和文本文件(也称ASCII码文件)二进制文件中,数值型数据是以二进制形式存储的
日期:08/03/2019 21:01:06 作者:lanhaicode
二叉树、前序遍历、中序遍历、后序遍历
二叉树通常采用链式存储结构,存储结点由数据域和指针域(指针域:左指针域和右指针域)组成,二叉树的链式存储结构也称为二叉链表,对满二叉树和完全二叉树可按层次进行顺序存储
日期:08/02/2019 21:26:19 作者:lanhaicode
C语言 队列(链式队列)
链式队列----用链表实现,链式队列就是一个操作受限的单向链表,如果读者了解单向链表的建立过程,那理解链式队列就很容易了,先回顾一下单向链表的建立过程
日期:08/02/2019 21:20:23 作者:lanhaicode
C语言 队列(循环队列)
线性结构:有且只有一个根节点,且每个节点最多有一个直接前驱和一个直接后继的非空数据结构
日期:08/02/2019 21:18:10 作者:lanhaicode
链表(单向链表的建立、删除、插入、打印)
线性结构:有且只有一个根节点,且每个节点最多有一个直接前驱和一个直接后继的非空数据结构
日期:08/02/2019 21:15:27 作者:lanhaicode
C语言 栈(链式栈)
链式栈:就是一种操作受限的单向链表,对单向链表还不了解的可先看一下之前的一篇关于单向链表的随笔,链表(单向链表的建立、删除、插入、打印),理解了单向链表后再来看链式栈就比较轻松了
日期:08/02/2019 21:11:12 作者:lanhaicode
C语言 栈(顺序栈)
栈是一种运算受限的线性表,是一种先进后出的数据结构,限定只能在一端进行插入和删除操作,允许操作的一端称为栈顶,不允许操作的称为栈底
日期:08/02/2019 21:06:42 作者:lanhaicode
C语言 在源文件(.c)和头文件(.h)中声明和定义的区别
C语言 在源文件(.c)和头文件(.h)中声明和定义的区别
日期:08/02/2019 21:04:51 作者:lanhaicode
C语言回车符与换行符问题
回车符(carriage return,’\r’)与换行符 (line feed,’\n’)
日期:08/02/2019 20:56:48 作者:lanhaicode
C语言  extern的使用详解(多文件编程)
extern是C语言中的一个关键字,一般用在变量名前或函数名前,作用是用来说明“此变量/函数是在别处定义的,要在此处引用”,extern这个关键字大部分读者应该是在变量的存储类型这一类的内容中
日期:08/02/2019 20:53:51 作者:lanhaicode
C语言枚举类型enum详解
enum是C语言中的一个关键字,enum叫枚举数据类型,枚举数据类型描述的是一组整型值的集合(这句话其实不太妥当),枚举型是预处理指令#define的替代,枚举和宏其实非常类似,宏在预处理阶段将名字替换成对应的值
日期:08/02/2019 20:51:32 作者:lanhaicode
C语言 setlocale()函数详解
函数原型:char* setlocale (int category, const char* locale); setlocale位于头文件,setlocale() 函数既可以用来对当前程序进行地域设置(本地设置、区域设置)
日期:08/02/2019 20:50:41 作者:lanhaicode
C语言编码方式之ASCII、ANSI、Unicode
ASCII全称(American Standard Code for Information Interchange)美国信息交换标准代码,在计算机内部中8位二进制位组成1个字节(8(比特)bit=1(字节)byte),而ASCII的编码方式是把一个字节中的低7位用来编码
日期:08/02/2019 13:14:02 作者:lanhaicode
逆波兰表达式 - 中缀表达式转后缀表达式
先说一下中缀表达式,平时我们使用的运算表达式就是中缀表达式,例如1+3*2,中缀表达式的特点就是:二元运算符总是置于与之相关的两个运算对象之间
日期:08/02/2019 13:13:11 作者:lanhaicode
C语言 const关键字的使用
关键字const用来定义只读变量,被const定义的变量它的值是不允许改变的,即不允许给它重新赋值,即使是赋相同的值也不可以。所以说它定义的是只读变量,这也就意味着必须在定义的时候就给它赋初值。
日期:08/01/2019 18:34:34 作者:蓝海人
C语言文件操作之打开文件与读写文件
C语言文件操作之打开文件与读写文件
日期:08/01/2019 18:32:16 作者:蓝海人
希尔排序C语言实现
希尔排序是插入排序的一种,又称“缩小增量排序”,希尔排序是直接插入排序算法的一种更高效的改进版本
日期:08/01/2019 18:30:14 作者:蓝海人
插入排序C语言实现
插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。
日期:08/01/2019 18:30:04 作者:蓝海人
选择排序C语言实现
与冒泡排序相比选择排序的交换次数较少,由于交换所需CPU时间比比较所需的CPU时间多,n值较小时,选择排序比冒泡排序快
日期:08/01/2019 18:25:26 作者:蓝海人
归并排序C语言实现
归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解
日期:08/01/2019 18:23:12 作者:蓝海人
Java基础之正则表达式
正则表达式就是为了方便检测而设置的一些字母或者数字的简单的组合,特别要明白\的转义的特点,[]代表一位。
日期:07/30/2019 15:17:24 作者:21-forever
Java基础之会话技术-Cookie及Session
至此,学习Servlet三个域对象:ServletContext(web项目)、request(一次请求)、Session(一个客户端)!均有相同的方法!
日期:07/30/2019 15:15:49 作者:21-forever
Java中转发和重定向的说明
重定向和转发有一个重要的不同:当使用转发时,JSP容器将使用一个内部的方法来调用目标页面,新的页面继续处理同一个请求,而浏览器将不会知道这个过 程。
日期:07/30/2019 15:14:40 作者:Linux
Java基础之HttpServletRequest请求
HttpServletRequest请求是获取请求行、请求头和请求体;可以通过这个方法设置防盗链,获取地址。牢记解决乱码的方式。
日期:07/30/2019 15:12:25 作者:21-forever
Java基础之HttpServletResponse响应
用户在客户端输入网址(虚拟路径)时,开始发送一个HTTP请求(请求行、请求头、请求体)至服务器。服务器内的Tomcat引擎会解析请求的地址,去找XML文件,然后根据虚拟路径找Servlet的真实路径
日期:07/30/2019 15:10:13 作者:21-forever
Java基础之网络通信协议--TCP与UDP
了解区分UDP与TCP的不同,正常情况都是两者结合的使用模式!为了更好的传输,经常会开多线程进行传输的!
日期:07/30/2019 15:08:16 作者:21-forever
Python使用LDAP做用户认证
LDAP(Light Directory Access Portocol)是轻量目录访问协议,基于X.500标准,支持TCP/IP。
日期:07/29/2019 21:45:46 作者:linxiyue
Python装饰器与闭包
闭包是Python装饰器的基础。要理解闭包,先要了解Python中的变量作用域规则。变量作用域规则
日期:07/29/2019 13:01:16 作者:再见紫罗兰
Python Web开发中的WSGI协议简介
在Python Web开发中,我们一般使用Flask、Django等web框架来开发应用程序,生产环境中将应用部署到Apache、Nginx等web服务器时,还需要uWSGI或者Gunicorn。一个完整的部署应该类似这样: Web Server(Nginx、Apache) <-----> WSGI server(uWSGI、Gunicorn) &...
日期:07/29/2019 12:57:38 作者:再见紫罗兰
Redis中的LFU算法
Redis作者曾想改进LRU算法,但发现Redis的LRU算法受制于随机采样数maxmemory_samples,在maxmemory_samples等于10的情况下已经很接近于理想的LRU算法性能,也就是说,LRU算法本身已经很难再进一步了。
日期:07/29/2019 12:55:06 作者:再见紫罗兰
Redis中的LRU淘汰策略分析
Redis作为缓存使用时,一些场景下要考虑内存的空间消耗问题。Redis会删除过期键以释放空间,过期键的删除策略有两种: 惰性删除:每次从键空间中获取键时,都检查取得的键是否过期,如果过期的话,就删除该键;如果没有过期,就返回该键。定期删除:每隔一段时间,...
日期:07/29/2019 12:53:08 作者:再见紫罗兰
LRU算法原理解析
LRU是Least Recently Used的缩写,即最近最少使用,常用于页面置换算法,是为虚拟页式存储管理服务的。
日期:07/29/2019 12:49:02 作者:再见紫罗兰
内容分类