自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mysql数据类型总结

数据类型优化1、尽量使用能正常存储数据的最小数据类型(更快,占用更少的磁盘、内存和cpu)2、尽量使用简单类型。(如整型比字符操作代价低)3、尽量避免使用NULL(可以通过加默认值设置not null)数据类型:支持别名,如integer,bool,numeric1、时间DATETIME和TIMESTAMP都精确到秒。通常应该尽量使用timestamp。date

2015-07-06 17:03:44 660

原创 Spring源码的编译过程

1、将Spring源码从github仓库中clone下来git clone git://github.com/SpringSource/spring-framework.git2、编译源码./gradlew build出现问题:(1)Unrecognized VM option ‘MaxMetaspaceSize=1024m’Error: Could not create

2015-05-13 16:53:59 1313

原创 《Effective java》读书笔记——过期引用

过期引用,指永远也不会再被解除的引用。栈的pop函数的一般实现: public Object pop() { if ( size == 0) throw new EmptyStackException(); // 上面的过期已用没有清除,所以会发生内存泄露 return

2015-05-01 11:41:09 586

原创 comparable和comparator

comparable和comparator是java中两个用于比较大小的接口1、comparable位于java.lang包中,实现该接口的对象表示该对象是“可比较的”,此接口强行对实现它的每个类的对象进行整体排序。该接口定义如下:public interface Comparable { public int compareTo(T o);}jdk文档:实现

2015-04-22 14:22:38 434

原创 java中ConcurrentModificationException异常分析

jdk文档解释:Iterator和ListIterator迭代器是快速失败的,在迭代器创建之后,如果从结构上对列表进行修改,除非通过迭代器自身的 remove 或 add 方法,其他任何时间任何方式的修改,迭代器都将抛出 ConcurrentModificationException。因此,面对并发的修改,迭代器很快就会完全失败,而不冒将来不确定的时间任意发生不确定行为的风险。下面通过分析Li

2015-04-22 10:46:55 569

原创 Iterator和Iterable接口

迭代器模式本质是将聚合对象的内容与遍历分开,所以使用者可以不用考虑聚合对象的底层实现(是用list存储还是用数组存储)而以一种统一的方式(Iterator)来遍历对象;而且可以利用筛选迭代器对对象进行过滤,只遍历符合条件的对象;迭代器的迭代策略(单向、双向等)可以灵活的修改。为了利用迭代器模式,java中定义了一个Iterator迭代器接口和一个Iterable接口;Iterator迭

2015-04-22 10:44:28 904

原创 define typedef const用法

c语言定义常量时有三种方式,#define,typedef和const,下面总结下这三种方式的用法:define宏定义:本质是简单的文本替换#define PI 3.1415296;由于define定义的函数不会进行类型检查,只是在预处理时将调用宏定义中的参数进行简单的替换而已,所以可能会造成意外的错误。比如常见错误:#define point (int*);point a,b

2015-04-07 14:04:08 751 1

转载 如何实现一个malloc

任何一个用过或学过C的人对malloc都不会陌生。大家都知道malloc可以分配一段连续的内存空间,并且在不再使用时可以通过free释放掉。但是,许多程序员对malloc背后的事情并不熟悉,许多人甚至把malloc当做操作系统所提供的系统调用或C的关键字。实际上,malloc只是C的标准库中提供的一个普通函数,而且实现malloc的基本思想并不复杂,任何一个对C和操作系统有些许了解的程序员都可以很

2015-04-02 15:50:02 387

原创 JQuery遍历对象遇到找不到函数或TypeError问题

使用JQuery遍历JQuery对象时,要区分遍历时得到的是Dom对象还是JQuery对象,如果是Dom对象则不能使用JQuery的函数,否则会出现找不到函数或者TypeError问题。JQuery对象是一个类似数组的对象,提供了两种方法可以将JQuery对象转换成DOm对象。var $list=$("#equiplist" ).children();for(var i=0;i

2015-04-02 12:51:23 935

原创 C学习笔记

重新读了一遍《C程序设计语言》这本书,复习了一下C的基本语法,记录以备忘。重要基础知识点:在C语言中,所有的函数参数都是“通过值”传递的。如果是数组参数,传递的是数组的起始地址,并不复制数组元素本身。在被调用函数中,可以通过下标访问或者修改数组元素的值引用和取地址的区别:引用&就像一个“修饰”一样,只有在定义和声明或者说明参数类型的时候才用,平时引用变量和普通变量一样。

2015-03-30 19:26:43 366

原创 重写与重载

重写与重载的区别:1、写法上的区别:重写是子类继承父类的方法时在子类中重新覆写父类中相同的方法,要求子类的方法中方法名、参数、返回值一定要相同,限定符的范围必须大于等于父类中限定符范围。重载可以在同一个类中实现函数名相同,但是参数和返回值、限定符不同的函数。2、分派的区别Human man=new Man();Human woman=new Woman();其中

2015-03-30 19:24:16 365

转载 深入分析Java ClassLoader原理

一、什么是ClassLoader?         大家都知道,当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程序的一个入口函数来调用系统的相关功能,而这些功能都被封装在不同的class文件当中,所以经常要从这个class文件中要调用另外一个class文件中的方法,如果另外一个文件不存在的,

2015-03-24 14:39:20 385

原创 外键需不需要添加?

一般数据库设计理论都要求添加外键约束以保证数据的一致性和完整性,但是这样做数据库的性能开销较大,因为数据库需要维护外键的关系,当涉及到一些外键字段的增删改等操作时,需要触发相应的操作去检查,外键操作还可能需要对其他表进行加锁。所以如果并发量比较大,为避免数据库服务器造成性能瓶颈,实际的项目开发中,所以经常不推荐使用外键,而是通过程序来控制数据的一致性和完整性。而如果数据库负载不是很大,则可以通过添

2015-03-24 14:35:16 1296

原创 java web中英文编码小结

java web开发中经常涉及到中文编码问题,如果处理不好很容易造成乱码。常见的编码格式如下:ASCII码:单字节编码,仅用字节的低7位编码,能编码128个字符ISO-8859-1:扩展ASCII码,仍是单字节编码,能编码256个字符GB2312:中文编码字符集,双字节编码GBK:也是一种中文编码字符集,兼容GB2312编码,但是GBK编码的范围更大。UTF-16:Unic

2015-03-23 14:18:19 610

转载 结构体内存对齐规则

1. 结构体的内存布局记住两个规则即可,这是编译器的优化措施。规则1:结构体中第一个成员的偏移量是0,以后每个成员的位置是x的倍数;           x = min(#pragma pack(), 该成员自身的长度)规则2:成员对齐后,结构体自身也要对齐,按照y的倍数进行;          y = min(#pragma pack(), 最大成员尺寸)。其中#pragma

2015-03-22 09:50:12 375

原创 JQuery实现高级检索功能

初学JQuery,写了一个高级检索的动态输入框,如图所示: 实现的功能:* 当选择属性下拉框中不同类型(字符串、数字、日期)的属性时,后面弹出不同数量的和不同格式的文本框(字符串弹出一个输入文本框,数字型的弹出两个输入文本框,日期型的弹出两个日期选择控件);* 单击“添加条件”链接后,下面会增加一行条件输入,可以选择逻辑(与、或、非)、属性。html部分代码如下:< div id= "0"

2015-03-20 16:59:24 2203 2

原创 打开页面同时jquery异步加载生成新dom并为dom注册事件

实现功能:页面数据一部分是静态写入的dom节点,一部分是通过ajax读取数据库内容动态加载生成的dom节点,两者都需要添加单击的事件处理。 问题:如果添加单击事件的js代码放在ajax处理代码之下,由于ajax加载是异步的,所以在生成页面的时候,ajax请求会与添加单击事件的js代码同时执行,这样则会出现问题:部分静态的dom节点单击事件正常,但是动态加载添加的部分dom节点没有添加成功。 解决

2015-03-10 16:30:46 3288

原创 jsp与js之间的数据交互传递

jsp与js之间的数据传递问题,一般是将jsp中的数据传递到js中进行显示,而不是将js中的数据传递到jsp中。所以,如果在jsp中要使用js中的变量,可以反过来思考,在jsp中定义变量让js访问。比如,当在js中遍历jsp中的数组时, 如果写成如下方式会出现错误不能访问:<Script language="JavaScript">var arr=new Array();<%int i;i

2015-03-10 11:52:25 10454

原创 Eclipse导入并查看SSH框架中jar包的源码

使用SSH框架项目开发时,有时需要查看spring、struts、hibernate的源码来理解底层操作。在Eclipse中将源码包导入项目中,就可以使用CTR+左键的方式来方便的查看,而不会出现找不到源码的情况了。 spring解压缩路径D:\java web开发\spring-framework-3.2.4.RELEASE-dist\spring-framework-3.2.4.RELEASE

2015-03-09 09:34:22 1787

原创 使用Eclipse的hibernate插件进行工程反转生成po类Could not initialize class org.hibernate.cfg.reveng.OverrideReposity

hibernate插件是适合Eclipse版本的最新版本,工程反转使用的hibernate3.6 使用Eclipse的hibernate插件进行工程反转生成po类时报错:org.hibernate.console.HibernateConsoleRuntimeException: Received a NoClassDefFoundError, probably the console confi

2015-03-06 13:34:57 3010

原创 web.xml配置webAppRootKey

web.xml文件中webAppRootKey属性是web项目的绝对路径,默认值是webApp.root,可以通过System.getProperty(“webApp.root”)来获取属性值或者在配置文件中通过${webApp.root}获得。<context-param> <param-name >webAppRootKey</param-name > <param-

2015-03-05 13:07:40 13773

原创 二叉树遍历总结和重构

BinaryTree的各种操作,包括求高度、三种深度优先遍历方式(前序、中序、后续的递归和非递归)、层次遍历(宽度优先遍历) Leetcode题目: *1、144 先序遍历二叉树 * 2、 94 中序遍历二叉树 * 3、145 后序遍历二叉树 * 4、102 107 层次遍历二叉树 * 5、105 先序序列和中序序列重构二叉树 * 6、106 后序序列和中序序列重构二叉树**imp

2015-03-05 13:04:28 565 1

原创 Eclipse中搭建ssh框架

开发环境及工具* java jdk: jdk-7u60-windows-i586 设置JAVA_HOME(必须),否则tomcat无法启动成功* tomcat: apache-tomcat-7.0.54-windows-x86* Eclipse javaee: eclipse-jee-kepler-SR2-win32ssh框架版本号及添加支持* struts 2.3导入struts/li

2015-03-05 11:09:24 772

原创 ssh框架向数据库添加blob图片以及在jsp中显示blob图片

图片类:picture.javapublic class Picture implements java.io.Serializable { private String pictureid; private String picversion; private String kind; //图片类型:光学图片、遥感图片等 private byte[] pictur

2015-03-03 14:11:23 3034

原创 ajax jquery ssh实现数据异步方式验证

实现输入框输入结束后自动提交到后台进行异步验证数据库中是否已经存在。 jsp页面关键代码:<div id="document" class= "page-content" > <form class= "form-horizontal" role ="form" novalidate="novalidate" > <div class= "form-group">

2015-03-03 13:28:40 635

原创 dropzone.js点击删除图片按钮后只执行action不跳转到新的jsp页面,也不刷新本页面

使用dropzone.js的过程中,需要实现点击删除按钮后执行action修改已经保存的图片列表(用一个数组来维护该列表),此时可用如下方法: 在jsp页面中添加jquery支持,然后添加如下ajax代码:< script type= "text/javascript"> function deleteImage(name){ $.ajax({ url:'<%=path%>/

2015-03-03 10:50:38 3262 1

原创 ssh框架开发过程问题及其解决方法log

资料管理系统 开发环境: - ssh框架:spring 3.2.4,struts 2.3,hibernate 3.6 - 数据库:兼容达梦数据库和oracle数据库 - web服务器:tomcat 以下是项目开发过程中遇到的小问题汇总 1、 tomcat打开超时SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBin

2015-03-03 10:32:55 1931

原创 ssh框架下使用dropzone.js上传图片

dropzone.js是一个文件异步上传组件,对服务器端的支持是通过普通的html文件上传表单实现的首先在jsp页面添加dropzone.js支持:div id= "dropzone">      form action=" path %>/imageUpload" class= "dropzone"  enctype= "multipart/form-data">

2015-03-03 09:38:46 4528

原创 选择,过犹不及

当意识到什么不见的时候,突然感觉到了心似乎碎裂的声音。这才是真切的活着应有的感觉,看着自己的变化,从感性的一塌糊涂到理性的无可救药,现在恻隐之心的泛滥又把我拉回到一个两难的抉择,是遵循心的声音还是熬过这段艰难的时间再说?早已决定好的决定,在一些变化无常中也越发变的厉害,这其中有人放弃了,有人坚持了。不止一个人说我是一个不会关心人的人,不止一个人说我的想法很难改变,不止一个人说我太较真,可是只有自己

2014-02-11 22:04:25 661

原创 2014,开篇

很久以前就有自己维护一个博客的想法,但我是一个不喜欢总结的人,喜欢快餐式吸收,这是一个多么致命的缺点。后来,拖拖拉拉,好不容易下定决心在新浪上开了个博客,写了两三篇就又寸草不生了。我一直都不看好自己对用文字反思的坚持,即使反思也都是碎片的、即时的、简短的、杂乱的。以前还会用空间记录下心情,而现在越来越不喜欢在那上面感时伤怀,自己的圈子都再那里,不论写了什么都要做好能接受圈子里所有人指指点点和评头论

2014-02-06 15:14:44 480 1

空空如也

空空如也

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

TA关注的人

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