- 博客(99)
- 资源 (2)
- 收藏
- 关注
原创 Bootstrap风格按钮
一直很喜欢Bootstrap的按钮风格,仿照Bootstrap做了一套按钮,在ie6/7/8/9/10/11、chrome、firefox下能正常使用。ie6/7/8不支持css3的样式,按钮在这些模式下没有圆角效果。在ie6/7下使用button标签能显示正常效果,使用其他标签存在文字偏移和背景显示不完整。按钮支持div/span/input/button等元素,大小分为rhui-btn-l
2015-07-09 09:57:33
3554
原创 Web项目同时使用Struts2和SpringMVC
接手公司历史遗留的一个项目,要在原有系统中添加新的功能。原有系统只使用Struts2做Web MVC,没有用Spring做解耦,数据持久层使用JDBC连接,数据库连接池是c3p0。从设计上看,原有系统抛弃了独立的服务层,把服务层和数据持久层合并,控制层(Struts2的Action)直接调用持久层对象。新增功能采用SpringMVC和Mybatis。由于原系统和新功能的控制层使用不同的MVC,
2015-07-08 22:14:00
18278
原创 jQuery遮罩层插件
在网页上经常遇到需要等待很久的操作,比如导出报表等。为了预防用户点击其他操作或者多次点击同个功能,需要用遮罩层把页面或者操作区盖住,防止用户进行下一步操作,同时可以提高界面友好度,让用户知道操作正在执行。$.fn.extend({ /** * 给元素添加遮罩层 * @param message {String} [可选]遮罩层显示内容 */ mask: function
2015-07-07 17:42:59
3903
原创 浅谈Html的内容加载及JS执行顺序
项目上有个同事跟我说他用jQuery取不到页面上隐藏元素input的值,他的html页面大概内容如下。 浅谈Html页面内容执行顺序 var userId = $('#hiddenUserId').val(); var contextPath = $('#hiddenContextPath').val(); var userName = $('#hiddenUs
2015-07-07 14:59:00
33541
原创 Java执行外部程序(Apache Commons Exec)
之前使用Runtime.getRuntime().exec调用外部程序,在Tomcat下会有当前线程一直等待的现象。当时为了解决这个问题,使用新建线程接收外部程序的输出信息,详情请看博客http://blog.csdn.net/accountwcx/article/details/46785437。后来在网上找到开源的Java调用外部程序类库Apache Commons Exce,这个
2015-07-07 11:58:59
22129
2
原创 Java实现Html转PDF
项目上的客户提出一个需求,把政务流程中的表单数据导出成pdf或者图片格式,用来作电子档案材料。表单基于公司的电子政务构建平台实现,在数据库保存的都是html格式,因此打算直接把表单html转成pdf或者图片。由于表单是已经写好了html页面,那我要做的就是能完美解析html+css的pdf生成工具。在百度上搜索html转pdf的结果,大部分都是用itext,itext的确是java开源组件的第一选
2015-07-07 10:35:10
57712
12
原创 Web日程管理FullCalendar
fullcalendar是一款jQuery日程管理控件,提供了丰富的属性设置和方法调用,官网下载地址http://fullcalendar.io/download,目前最新版本是2.3.2。只要调用$('#calendar').fullcalendar(options)即可初始化,初始化配置中events、eventSources、select和eventClick是必须设置项。event
2015-07-06 22:48:40
19641
11
原创 Java Web文件下载
Web文件下载有两种,一种是文件在网站目录下,在浏览器中直接输入文件路径即可下载,如http://www.xxx.com/file.zip。另外一种是文件不在网站目录下或者文件是动态生成的(导出报表或者导出excel等),这种情况需要通过response的OutputStream实现文件的下载。DownloadUtils是一个Java Web文件下载工具类,提供多种静态方法实现文件下载。pac
2015-07-06 15:53:11
2438
原创 Java Web验证码
1 验证码生成类RandomCodeRandomCode是一个生成验证码的工具类,支持英文和数字验证码,验证码包括英文大小写和数组,其中英文i、o和数字0、1因为容易产生混淆,不包括在生成验证码中。RandomCode支持输出jpg/bmp/png/gif图片格式的验证码。/** * RandomCode验证码可以通过静态方法和实例方法生成。 * * 静态方法: * *
2015-07-06 11:55:09
1427
原创 Java Web返回JSON
Web项目中经常涉及到AJAX请求返回JSON和JSONP数据。JSON数据在服务器端和浏览器端传输,本质上就是传输字符串,不过这个字符串符合JSON语法格式。浏览器端会按照普通文本的格式接收JSON字符串,最终JSON字符串转成JSON对象通过JavaScript实现。目前部分浏览器(IE9以下浏览器没有提供)和常用的JS库都提供了JSON序列化和反序列化的方法,如jQuery的AJAX请求可以
2015-07-03 10:48:05
15644
1
原创 Web文件下载等待效果的实现
项目中需要实现导出Excel的功能,Excel不是保存在服务器上的文件,而是动态生成的。由于查询条件和数据大小的影响,生成Excel的时间不固定(大约5~10秒左右),因此需要做下载等待效果,防止用户多次点击下载。实现下载等待效果的关键是获取到后台导出Excel完成的时间或者捕获到Excel开始下载的事件。可以从两个方面入手,一个是在浏览器端触发onload事件。一个是在服务器端完成Excel导出
2015-07-02 17:55:03
9196
原创 排序算法之归并排序Java版
/** * 归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法将已有序的子序列合并,最后得到完全有序的序列。 * 归并排序是稳定排序,速度仅次于快速排序 * 时间复杂度为O(nlogn) * 空间复杂度为O(n) 归并排序需要n空间的临时数组来存储子序列 * 归并排序原理: * 将待排序序列分为若干个子序列,,对每个子序列进行排序。 * 然后再把相邻的两个有序子序列合
2015-07-01 22:24:12
679
原创 排序算法之快速排序Java版
/** * 快速排序 * 快速排序是不稳定排序 * 快速排序是一种交换排序 * 快速排序对序列的操作空间复杂度为O(1),如果快速排序用递归实现,则递归栈的空间复杂度为O(logn)~O(n)之间。 * 最佳时间复杂度O(nlogn) * 平均时间复杂度O(nlogn) * 快速排序是目前基于比较的内部排序中被认为是最好的方法,当待排序的关键字是随机分布时,快速排序的平均时间最短。
2015-07-01 22:20:36
565
原创 排序算法之冒泡排序Java版
/** * 冒泡排序 * 冒泡排序是稳定排序 * 冒泡排序空间复杂度O(1) * 最优时间复杂度O(n),当序列已经排序好时,时间复杂度为O(n) * 最坏时间复杂度O(n^2),当序列是倒序时,时间复杂度为O(n^2) * 冒泡排序是一种交换排序 * * 冒泡排序原理: * 在序列中对当前还未排序的数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。
2015-07-01 22:13:58
709
原创 排序算法之堆排序Java版
/** * 堆排序 堆排序是一种树形选择排序,是直接选择排序的有效改进,是不稳定的排序 * 最优时间复杂度O(nlogn) * 最坏时间复杂度O(nlogn) * 空间复杂度O(1) * * 堆排序原理: * 1、根据序列建立大根堆(或者小根堆)。 * 2、将堆顶元素R[1]与最后一个元素R[n]交换,得到新的无序区(R1,R2,......Rn-1)和新的有序区(Rn),且满足
2015-07-01 22:00:13
604
原创 排序算法之直接选择排序Java版
/** * 直接选择排序 * 直接选择排序是一种不稳定的排序 * 时间复杂度为 O(n^2),当记录占用字节数较多时,直接选择排序通常比直接插入排序的执行速度快些。 * 空间复杂度为O(1) * * 原理:从未排序序列中找到最小元素,存放到已排序序列的末尾,以此类推,直到所有元素均排序完毕。 */public class DirectSelectionSort { public
2015-07-01 21:49:19
674
原创 排序算法之希尔排序Java版
/** * * 希尔排序 * 希尔排序又叫缩小增量排序,是直接插入排序算法的一种更高效的改进版本 * 希尔排序属于不稳定排序 * 希尔排序空间复杂度O(1) * 希尔排序的时间复杂度和其增量序列有关系,平均时间复杂度O(n^1.3) * * 基本原理: * 先将整个待排序的记录序列分割成为若干子序列分别进行直接插入排序,待整个序列中的记录“基本有序”时,再对全体记录进行依次直接
2015-07-01 21:41:08
512
原创 排序算法之直接插入排序Java版
/** * 直接插入排序 * 直接插入排序属于稳定排序 * 直接插入排序空间复杂度O(1) * 最优时间复杂度O(n),当待排序的数组已经排序好时,直接插入排序的时间复杂度为O(n) * 最坏时间复杂度O(n^2),当待排序的数组是倒序时,直接插入排序的时间复杂度为O(n^2) * 直接插入排序适用于数量比较少的数组排序 * * 基本原理: * 将一个记录插入到已排序好的有序序
2015-07-01 21:16:06
619
原创 排序算法之二分插入排序Java版
/** * 二分插入排序是直接插入排序的改进版 * 二分插入排序是不稳定排序 * * 原理: * 将一个记录插入到已排序好的有序序列中,从而得到一个新,记录数增1的有序序列。 * 二分插入排序用二分法找出新记录在有序序列中的位置。 */public class BinaryInsertionSort { public void sort(int[] arr) { int
2015-07-01 21:13:20
663
原创 Spring4 Jar包详解
Spring AOP:Spring的面向切面编程,提供AOP(面向切面编程)的实现Spring Aspects:Spring提供的对AspectJ框架的整合Spring Beans:Spring IOC的基础实现,包含访问配置文件、创建和管理bean等。Spring Context:在基础IOC功能上提供扩展服务,此外还提供许多企业级服务的支持,有邮件服务、任务调度、JNDI定位,EJ
2014-09-12 19:51:56
13764
1
原创 Oracle分页查询及ROWMUN的用法
Oracle的ROWNUM是一种伪列,它会根据返回记录生成一个序列化的数字。ROWNUM经常与、>=、BETWEEN...AND)也能编译成功,但是不会返回任何查询结果。ROWNUM常用来获取查询的部分结果,如获取前10条记录或者分页查询等。(1)获取前10条记录select * from student where rownum(2)分页查询。Oracle中分页查询的思路是先
2014-09-02 21:37:33
2168
原创 Tomcat启动时提示Exception loading sessions from persistent storage错误
Tomcat在启动是提示Exception loading sessions from persistent storage
2014-09-02 20:51:23
851
原创 iframe动态创建及释放内存
最近参与一个项目的开发,由于项目是基于浏览器的胖客户端(RIA)应用程序,页面中大量调用iframe。后期测试发现浏览器内存一直居高不下,而且打开iframe页面越多内存占用越大,在IE系列浏览器中尤其明显。所有打开的iframe页面即使关闭了,内存使用也没有明显的下降,IE浏览器在内存占用达到400M左右就变得很卡。分析发现是iframe没有释放造成的,于是对所有已关闭的iframe所占用的内存
2014-09-02 20:33:45
9885
原创 Java Web开发常用Jar包
Json处理FastJson是阿里巴巴的Json处理工具包,包括序列化和反序列化两部分。FastJson具有极快的性能,超越任何其它Java Json包。Jackson是Java处理JSON格式数据的工具包,在FastJson出现以前,其JSON处理性能是最好的,同时也是Spring MVC中内置的JSON解析方式。XML解析:Dom4j是开源的XML解析解析包,具有性能优
2014-09-02 17:59:00
2067
原创 Apache Commons项目介绍
Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动。Commons BeanUtils 提供对Java反射和自省API的包装。依赖包:Commons Codec、Commons LoggingCommons Codec是编码和解码组件,提供常用的编码和解码方法,如DES、SHA1、MD5、Base64、URL和Soundx等
2014-09-02 17:34:02
3319
原创 Java对象与垃圾回收
Java中创建引用类型对象时,都会在堆内存中分配一块区域,Java对象就保存在这块内存区域中,当这块内存区域不再被任何变量引用时,垃圾回收机制就会把这块内存区域回收。
2014-05-17 17:01:44
1336
原创 Java判断相等(==和equals方法)
Java中判断两个变量是否相等有两种方式:一种是利用==运算符,另一种是利用equals方法。如果变量是基本类型,那么使用==和使用equals会得到相同的结果,都是判断变量的值是否相对。如果变量是引用类型,==运算符判断变量是否指向同一引用对象,equals判断变量"值"是否相等。Java值类型对应的包装类(Boolean、Byte、Short、Integer、Long、Float、Double
2014-05-08 15:43:19
29921
1
原创 Java类成员的访问控制
Java提供了4个访问控制符:private、protected、default和public,这4个访问控制符的访问权限由小到大private<protected<default<public。其中defualt是系统默认的访问控制级别,当不实用任何访问控制符来修饰类成员时,默认是default访问控制级别。这4个访问控制级别的详细介绍如下。
2014-05-08 13:44:34
2056
原创 Java下利用Jackson进行JSON解析和序列化
Java下常见的Json类库有Gson、JSON-lib和Jackson等,Jackson相对来说比较高效。
2014-04-27 14:33:42
146092
2
原创 Eclipse常用设置
1、Eclipse编辑器显示代码行数菜单栏上选择[Window] -> [Preferences]进入配置页面,在Preferences配置窗口选择[General] -> [Editors] -> [Text Editors]选项,在[Text Editors]页面中选中Show line Numbers,如下图所示。
2014-04-26 16:15:26
2315
原创 JavaScript判断浏览器类型及版本
前段时间把jQuery升级到1.11.x后,发现$.browser已经废除,浏览器类型判断对系统前台页面非常重要,于是在网上搜罗了一些浏览器类型及版本的判断方法。
2014-04-15 11:54:54
2787
原创 JavaScript编码转换(UTF-8、UTF-16)
JavaScript的字符用UTF16进行编码,网页常用的编码是UTF8或者GB2312,在不涉及到字符串字节操作时,JavaScript编码和网页编码即使不一致也可以使用。但是当进行诸如Base64涉及字节之类的操作,尤其是有中文字符时,JavaScript编码的字符内容在网页中或者在服务器端显示为乱码。因此在进行字节操作时必须把JavaScript编码转成网页编码。
2014-04-14 17:33:29
30347
1
原创 Base64的JavaScript实现(支持中文字符)
Base64是一种基于64个可打印字符来表示二进制数据的表示方法。由于2的6次方等于64,所以每6个位元为一个单元,对应某个可打印字符。三个字节有24个位元,对应于4个Base64单元,即3个字节需要用4个可打印字符来表示。它可用来作为电子邮件的传输编码。在Base64中的可打印字符包括字母A-Z、a-z、数字0-9,这样共有62个字符,此外两个可打印符号在不同的系统中而不同。一些如uuencod
2014-04-12 12:52:02
24567
原创 C#操作注册表
一、操作注册表C#中操作注册表相当方便,只需引入命名空间Microsoft.Win32即可,命名空间中的静态类Registry,封装了注册表的常用根路径。/** using Microsoft.Win32Registry.LocalMachine //本地计算机的配置数据,对应注册表基项 HKEY_LOCAL_MACHINE。Registry.ClassesRoot
2012-11-18 19:40:39
1096
原创 C#调用WebService服务(动态调用)
1 创建WebServiceusing System;using System.Web.Services;namespace WebService1{ /// /// Service1 的摘要说明 /// [WebService(Namespace = "http://tempuri.org/", Description="测试服务")]
2012-11-18 00:48:10
20406
原创 ArcGIS JavaScript API本地部署离线开发环境
1 获取ArcGIS JavaScript APIAPI的下载地址http://www.esri.com/apps/products/download/index.cfm?fuseaction=download.all#ArcGIS_API_for_JavaScript,可能需要注册一个帐号。在下载页面会看到api和sdk的下载链接,api是我们开发需要的库,sdk是说明文档和例子,点击下载a
2012-11-14 12:30:18
1232
原创 Oracle数据库中保存文件(C#)
Oracle中有Blob和Clob可以保存大数据量。其中Blob是指二进制大对象也就是英文Binary Large Object的缩写,用来存储大量二进制数据。而Clob是指大字符对象是英文Character Large Object的缩写,用来存储大量文本数据。1 数据库表-- 创建文件表create table tb_file( id number
2012-11-13 00:10:43
5246
原创 创建Oracle数据库表空间
--以管理员身份登陆--创建临时表空间mydb_tempcreate temporary tablespace mydb_temptempfile 'c:\database\mydb_temp.dbf' --文件路径c:\database一定要存在,否则创建失败。同时路径中尽量不要有中文名称。size 50mautoextend onnext 50m maxsize 20480m
2012-11-12 22:46:05
671
原创 ASP.NET导出Excel(利用NPOI和EPPlus库,无需安装Office)
网上提供了很多Asp.net中操作Excel的方法,其中大部分是调用微软的Office组件,下面提供三个无须安装Office即可从Asp.net输出Excel的方法。1 简单方法//下面代码输出的Excel有三列(姓名、年龄、性别)//列之间用\t隔开StringWriter sw = new StringWriter();sw.WriteLine("姓名\t年龄\t性别");
2012-11-04 00:41:48
11515
2
原创 JavaScript中去掉字符串两端空格(trim)
在JavaScript中需要用到trim的地方很多,但是JavaScript又没有独立的trim函数或者方法可以使用。有些浏览器如chrome、ie9、ie10、firefox都已经提供了内置的trim方法。在上述浏览器中,对String可以直接使用trim。var str = ' 张三 ';str.trim(); //返回 张三在ie6、ie7、ie8系列浏览器中,没有内置
2012-10-31 21:50:11
4035
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅