自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 js实现各种常用排序算法

1.冒泡排序var bubbleSort = function (arr) { var flag = true; var len = arr.length; for (var i = 0; i < len - 1; i++) { flag = true; for (var j = 0; j < len - 1 - i; j++) { if (arr[j] >

2015-05-13 17:58:27 1348 2

转载 玩转Sonar

Sonar 是一个用于代码质量管理的开放平台。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具。与持续集成工具(例如 )不同,Sonar 并不是简单地把不同的代码检查工具结果(例如 等)直接显示在 Web 页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。在对其他工具的支持方面,Sonar 不仅提供了对 的支持,可以在 和 这些工具里联机查看结果;同时 Sonar 还对大量的持续集

2022-07-07 22:01:18 243

转载 Spring Boot工程中如何优雅地处理异常

在很久以前,许多语言都不支持异常。这些语言处理和汇报错误的手段都有限。你要么设置一个错误标识,要么返回给调用者检查的错误码。以下代码展示了这些手段这类手段的问题在于,它们搞乱了调用者代码。调用者必须在调用之后即刻检查错误。不幸的是,这个步骤很容易被遗忘。所以,遇到错误时,最好抛出一个异常。调用代码很整洁,其逻辑不会被错误处理搞乱。以下代码展示了在方法中遇到错误时抛出异常的情形注意这段代码整洁了很多。这不仅关乎美观。这段代码更好,因为之前纠结的元素设备关闭算法和错误处理现在被隔离了。你可以查看其中任一元素

2022-06-29 22:39:30 291

原创 mysql查询表字段中是否包含xx内容

mysql查询表字段中是否包含xx内容场景:数据库某表的content段中存储的是json字符串,team字段存储的是班组,并且在json字符串中也存储了team的值。检测数据库中数据是否有包含两个值不同的数据采用mysql中的find_in_set函数;MySQL手册中find_in_set函数的语法:FIND_IN_SET(str,strlist)str 要查询的字符串strlist 字段名 参数以”,”分隔 如 (1,2,6,8)查询字段(strlist)中包含(str)的结果,返回结果

2020-12-19 23:24:44 1198 1

原创 spring 官方下载地址(转)

SPRING官方网站改版后,下载spring非常麻烦,下给出官方直接下载路径:http://repo.springsource.org/libs-release-local/org/springframework/spring/Spring Framework 4.0.0下载 http://repo.springsource.org/libs-release-local/org/springfra

2015-06-27 10:45:34 646

原创 《编写可读代码的艺术》读后总结

代码应当易于理解代码的写法应当使他人理解它所需的时间最小化把信息装进名字中清晰和精确比装可爱好使用专业的词使用具体的名字来更细致地描述事物给变量名带上重要的细节为作用域大的名字采用更长的名字有目的地使用大小写,下划线等要多问自己几遍:“这个名字会被别人解读成其他的含义吗?” 要仔细审视这个名字,不会被误解的名字是最好的名字命名极限最清楚的方式是在要限制的东西前加上max_或者min_

2015-06-04 10:20:47 1935 8

原创 js实现单向链表

add() 添加元素clear() 清空链表contains(data) 是否包含元素display() 显示链表get(position) 得到索引位置的元素isEmpty() 链表是否为空remove(position) 移除索引位置的元素reverse() 倒置链表set(position, data) 向链表指定位置设置修改元素size() 返回链表的长度var Node

2015-05-27 16:06:58 1601

转载 Node.js 里的 process.nextTick()

I have seen quite a few people being confused aboutprocess.nextTick(). Let's take a look at whatprocess.nextTick()does, and when to use it.As you might already know, every Node application runs on

2015-05-23 10:41:16 794

转载 同步,异步,阻塞,非阻塞的区别

老张爱喝茶,废话不说,煮开水。出场人物:老张,水壶两把(普通水壶,简称水壶;会响的水壶,简称响水壶)。1 老张把水壶放到火上,立等水开。(同步阻塞)老张觉得自己有点傻2 老张把水壶放到火上,去客厅看电视,时不时去厨房看看水开没有。(同步非阻塞)老张还是觉得自己有点傻,于是变高端了,买了把会响笛的那种水壶。水开之后,能大声发出嘀~~~~的噪音。3 老张把响水壶放到火上,立等水

2015-05-09 09:33:25 354

转载 nodejs npm常用命令

npm是一个node包管理和分发工具,已经成为了非官方的发布node模块(包)的标准。有了npm,可以很快的找到特定服务要使用的包,进行下载、安装以及管理已经安装的包。1、npm install moduleNames:安装Node模块安装完毕后会产生一个node_modules目录,其目录下就是安装的各个node模块。node的安装分为全局模式和本地模式。一般情况下会以本

2015-05-06 15:15:58 372

转载 如何在Ubuntu上安装最新版本的Node.js

Node.js是一个软件平台,通常用于构建大规模的服务器端应用。Node.js使用JavaScript作为其脚本语言,由于其非阻塞I/O设计以及单线程事件循环机制,使得它可以交付超高的性能。Node.js包含了Google V8 JavaScript引擎,libuv库和核心库几乎都是使用JavaScript编写的。libuv库提供了异步事件I/O的抽象和Node.js跨平台的机制。

2015-05-05 09:07:21 420

转载 为nodejs辩护,3点证明他是一个好语言

近日使用nodejs开发的网站越来越多,来自各界的反面批评之声也是此起彼伏,我想只是因为不了解,其实他绝对有能力和实力与PHP等语言PK。亲们都知道nodejs只是一个解释器,用来在服务端运行遵守标准的JS代码,本文就从以下5点加历史佐证证明,JS不管在前端后端,都是一个好语言。先来一段历史:亲们都很清楚,JS是被创造用来在浏览器端运行的语言,也正是要在客户端运行,标准统一问题是最大的难题

2014-12-31 13:43:43 839 1

转载 Mongoose学习参考文档

Mongoose学习参考文档前言:本学习参考文档仅供参考,如有问题,师请雅正一、快速通道1.1 名词解释Schema : 一种以文件形式存储的数据库模型骨架,不具备数据库的操作能力Model : 由Schema发布生成的模型,具有抽象属性和行为的数据库操作对Entity : 由Model创建的实体,他的操作也会影响数据库注

2014-12-24 16:55:58 594

转载 MongoDB资料大全

MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。它的特点是高性能、易部署、易使用,存储数据非常方便。主要功能特性有:面向集合存储、易存储对象类型的数据。模式自由。支持动态查询:Mongo支持丰富的查询表达式,查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数据。支持完全

2014-12-20 16:58:56 870

转载 Nodejs异步流程控制Async

Nodejs异步流程控制Async从零开始nodejs系列文章,将介绍如何利Javascript做为服务端脚本,通过Nodejs框架web开发。Nodejs框架是基于V8的引擎,是目前速度最快的Javascript引擎。chrome浏览器就基于V8,同时打开20-30个网页都很流畅。Nodejs标准的web开发框架Express,可以帮助我们迅速建立web站点,比起PHP的开发效率更高,而

2014-10-26 21:23:11 640

原创 SDK Manager管理器中少资源时怎么办

在host文件中添加以下内容:74.125.113.121 developer.android.com 203.208.46.146 dl.google.com 203.208.46.146 dl-ssl.google.com74.125.31.120 ssl.gstatic.com# download android sdk from google fuck cn74.1

2014-10-19 18:11:34 1054

转载 无线路由器桥接终极完美教程

初次接触WDS的同学可能不太了解如何设置WDS,但应该对路由器的一些基本设置有所了解,下面为你介绍如何设置WDS以拓展无线信号覆盖范围。要求:至少有一台路由器支持WDS功能,但两台路由器的牌子不一定要相同本例中两台以TP-LINK WR741路由器为例,其他型号的设置也是一样的(TP-LINK的路由器用习惯了,设置起来也比较简单,其他牌子的路由器估计设置也大抵差不到哪儿去)首先给两台路由器

2014-10-06 16:23:48 1311

转载 NODE.JS 上传文件时 报错 EXDEV RENAME ERROR 怎么办?

这是因为文件上传的路径默认是 \tmp , 不在项目内部,所以无法rename两个解决办法:1. 在项目根目录路径,在shell命令行下 输入env TMPDIR=/path/to/directory node app.js2. 在项目入口的文件(例如: app.js)的顶部, 加以下这行代码process.env.TMPDIR = '/path/to/directory'

2014-10-05 22:05:01 844

原创 斗地主算法之牌的定义及排序

第一次自己写博客,如有没说清楚的地方,请大家多多指出交流。最近用html5写了个联机斗地主游戏,做完后总结一下主要的技术要点:1.牌的定义及排序。2.牌型大小判断,就是例如上家出了33344479,判断你选中的牌是否大过对方。3.提示算法,例如上家出了33344479,从你手中的牌中选出能大过对方的牌。本篇讲的是斗地主算法之牌的定义及排序,牌型大小判断和提示

2014-10-03 08:58:01 2993

转载 socket.io实践篇

谈到socket.io,就不能不提一下websocket,websocket是html5的新特性之一,多少web开发者为之兴奋,websocket可以使web程序客户端和服务端之间保持长连接,可以实现实时通讯,而且API简单易用,但是由于浏览器的支持不同,又是一个头疼的事情。后来,socket.io出现了,在某种程度上,socket.io就是websocket,其实socket.io与websoc

2014-09-22 15:44:19 659

转载 ibatis入门教程

1、本文通过几个简单的示例,实现ibatis的增删改查的功能。 2、构建数据库表,contact表,建表语句如下:(使用的是mysql数据库) contact表: Java代码  drop table if exists contact;  create table contact(     id int(10) not null auto_increm

2014-08-25 16:16:08 3422

转载 如何用Opera Mobile调试手机版网页

第一步:下载 Opera浏览器注意,不要去下载Opera的最新版本,因为Opera最新版内核都换了,跟Chrome混了。那个调试手机网页的功能目前在最新版本中还没有实现,所以,我们去下载它原先自己内核的最新版本的Opera(即 Opera12)。点击 下载 Opera 12 第二步:下载 Opera Mobile Classic EmulatorOpera

2014-08-22 10:44:36 1638 1

原创 js实现的Map

var Map = function () {    this.container = {};};//将key-value放入map中       Map.prototype.put = function (key, value) {    try {        if (key != null && key != "")            this.co

2014-08-12 00:39:37 426

转载 MongoVUE破解方法

MongoVUE是个免费软件,但超过15天后功能受限。可以通过删除以下注册表项来解除限制:[HKEY_CURRENT_USER\Software\Classes\CLSID\{B1159E65-821C3-21C5-CE21-34A484D54444}\4FF78130]把这个项下的值全删掉就可以了。

2014-07-16 11:46:20 447

转载 Mongoose 基本功能使用

Mongoose 是 MongoDB 数据库的模型工具,为 NodeJS 设计,工作于异步环境下。与其它同类工具相比,一回更喜欢它灵活友好的 API。相似的,还存在 MongoSkin,MongoLian,以及原生驱动 node-mongodb-native等。 Mongoose是什么?Mongoose 是什么?Mongoose 是 MongoDB 数据

2014-07-14 21:25:58 3803 1

转载 node.js下mongoose简单操作实例

Mongoose API : http://mongoosejs.com/docs/api.html1// mongoose 链接2var mongoose = require('mongoose');3var db       = mongoose.

2014-07-14 21:21:02 986

转载 Socket.io信息传输各种方法

服务器信息传输// send to current request socket clientsocket.emit('message', "this is a test");// sending to all clients except sendersocket.broadcast.emit('message', "this is a test");// sending to all cl

2014-07-09 10:58:18 5068

转载 Socket.IO进阶

在上一篇博文Socket.IO中,我简要介绍了Socket.IO的基本使用方法并创建了一个简单的聊天室DEMO。本篇在入门篇的基础上,继续探讨Socket.IO的进阶用法。本篇将从配置、房间、事件等方面入手,介绍一些Socket.IO中实用的API和注意事项。1. 配置Socket.IO提供了4个配置的API:io.configure, io.set, io.enable, i

2014-07-09 10:56:12 1469

转载 Socket.IO入门

1. 简介首先是Socket.IO的官方网站:http://socket.io官网非常简洁,甚至没有API文档,只有一个简单的“How to use”可以参考。因为Socket.IO就跟官网一样简洁好用易上手。那么Socket.IO到底是什么呢?Socket.IO是一个WebSocket库,包括了客户端的js和服务器端的nodejs,它的目标是构建可以在不同浏览器和移动设备

2014-07-09 10:55:11 746 1

转载 介绍几个cmd的替代品

如用习惯用命令操作的朋友们,会发现,win自带的cmd不能复制,命令不能记忆。那么我介绍两个替代器:1、ColorConsole下载地址:http://www.onlinedown.net/soft/89081.htm说明:      Console是一款命令行提示符替代程序,适合经常在命令行提示符下操作的读者。一般情况下,命令提示符足以应付一切了(zsh)。优点是

2014-07-02 14:51:32 3117

原创 安装配置MongoDB

1.mongodb-win32-i386-2.6.3.zip2.解压到D:\Program Files\mongodb3.环境变量中PATH添加:D:\Program Files\mongodb\mongodb-win32-i386-2.6.3\bin;4.在D:\Program Files\mongodb下新建D:\Program Files\mongodb\mongodata\db

2014-07-01 22:31:45 535

转载 我们为什么要使用NodeJS

科普文一则,说说我对NodeJS(一种服务端JavaScript实现)的一些认识,以及我为什么会向后端工程师推荐NodeJS.         "Node.js 是服务器端的 JavaScript 运行环境,它具有无阻塞(non-blocking)和事件驱动(event-driven)等的特色,Node.js 采用 V8 引擎,同样,Node.js 实现了类似 Apache 和 ngi

2014-07-01 20:40:04 383

转载 express不是内部或外部命令,也不是可运行的程序或批处理文件

安装express: --> npm install -g express查看版本: --> express -V (一定要是大写的V)结果报出: --> express不是内部或外部命令,也不是可运行的程序或批处理文件网上找了一下原因,是因为express在4.0以后把命令工具单独分出来了,所以安装完express后,还得再安装express-generato

2014-06-28 15:44:37 816

转载 使用node-inspector调试Node.js应用

如果你在编写Node.js代码,node-inspector是必备之选,比Node.js的内置调试器好出许多。使用起来跟Chrome的javascript调试器很相似。使用npm安装:$ npm install -g node-inspector然后需要通过浏览器连接到node-inspector,需要启动inspector服务:$ node-inspector &

2014-06-28 15:09:08 599

转载 Notepad++在编程使用时的小技巧

为了编程时更快捷和适应个人习惯,我们可以对Notepad++进行一系列的设置,这当然也借助于大量为它提供强大支持的插件。下面是一些界面的美化和功能上的优化和补充。主题当前主流的文本编辑器或集成开发环境大都是白色背景,黑色非等宽的字体,Notepad++的默认也是一样。相信长期在电脑前工作的人都受不了白剌剌的背景和高对比度的黑字,这对眼睛绝对是一种虐待。先改背景,在这方面

2014-06-28 09:14:39 1281

原创 eclipse/myeclipse通用插件安装方法(最实用)

采用link方式安装,避免了网络等问题。本次

2014-06-27 16:29:48 1673

转载 克隆JS对象的三个实用方法

第一种:function clone(obj){ var o; switch(typeof obj){ case 'undefined': break; case 'string' : o = obj + '';break; case 'number' : o = obj - 0;break; case 'boolean'

2014-06-27 10:39:36 528

转载 Struts2配合Log4j打印异常栈信息

struts2配合log4j打印异常栈信息 关于配置struts2全局异常后控制台无法打印异常信息问题 Java代码          "error">/exception/error.jsp                   "java.lang.Exceptions" result="error" />       

2014-06-22 16:24:20 594

转载 Struts2 中如何覆盖已内置拦截器的属性(参数)值

在前面一篇 Struts2 中 ModelDriven Action 的 setModel() 为何不起作用? 中发现最漂亮的办法就是修改 ModelDrivern 的 refreshModelBeforeResult 属性为 true,同时留下一个话题。这里接着,即如何覆盖内置拦截器的属性(参数) 值。如果是自定的拦截器,则可以在 struts.xml 中的 或 中用 param

2014-06-22 16:22:51 1536

转载 Maven + Eclipse + Tomcat - 开启项目调试之旅

本文的读者需要拥有一些Maven基础知识和实践,如果没有,请直接绕过或者先看一些关于Maven教程,比如Juven翻译的《Maven权威指南》,google一下便知。开门见山,首先抛出一个问题(如果你对我遇到的问题不敢兴趣,请飘过,直接看分割线以下的文字):我有一个团队基础框架项目,代号:framework,用maven构建,是个war类型的项目。团队中其他的应用项目都会用到它,包

2014-06-18 16:29:51 495

空空如也

空空如也

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

TA关注的人

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