自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

0x7c00

随时记录所想所得,不一定完整,慢慢整理嘛

  • 博客(100)
  • 资源 (11)
  • 问答 (6)
  • 收藏
  • 关注

原创 MySQL的Group by后组内的数据的排序Order by

分组查询到结果后,组内的数据还想排序select a.id,a.x from ( select id,count(*) as x from ( select * from message order by id desc limit 1000000 ) as msg group by msg.sender)as awhere a.x>1重点:内部查询必须加上limit,这样可以防止mysql的优化,造成order by被忽略。...

2021-03-08 15:22:02 558

原创 你可能不知道的5个Chrome调试技巧

1.格式化压缩过的JavaScript压缩过后的JavaScript看起来就几行,每一行都很长,如果不进行格式化,根本没办法进行调试。Chrome的{}按钮(Pretty-print)可以使JavaScript以格式化的方式打开。2.断点修改DOM元素的JavaScript想要知道哪个代码修改了当前元素属性、修改了当前元素的子元素、删除了当前元素?Break on可以断点到对应的Jav...

2019-10-11 17:48:14 496

原创 日志文件分析工具

日志文件分析工具按空格split初始化字符匹配组合条件计数统计函数:自定义AttPreProcessor预处理行为分组排序limit:限制输出数量花了两天时间写了一个日志文件分析工具。该工具可实现对日志文件的分析,可以方便地对日志文件进行类似于数据库查询统计一样的操作。主要功能包括:条件筛选:包含、不包含、相等、不等、大于、大于等于、小于、小于等于、正则匹配不同条件的“或”与“并”关系可...

2019-03-21 11:48:06 1829

原创 JavaScript的自执行方法和模块模式

首先,每个方法定义的局部变量,在外部是无法访问的,比如:function foo(){ var name;}这里的name变量对外界没有任何的污染,不会影响到其他地方的代码。如果每个模块的代码都这样写,那么就都不会打架了。利用的函数的这一特性来实现隔离非常有效。通常情况下,我们只需要一个匿名的自执行函数就可以了:(function(){ var name = 'Tom'; re

2016-12-21 14:25:44 620 1

原创 通过修改EL表达式输出行为解决XSS问题

项目中有好多通过EL表达式输出字符时没有考虑XSS问题,比如<div><span>${user.name}</span></div>简单来说,可以使用jstl标签来显示就好了:<div><span><c:out value="${user.name}"/></span></div>问题是,系统中非常多地方都存在这种问题,要一一修改工作量简直就是灾难啊。 我想到的办法是,改变EL表达式的输出

2016-08-20 01:00:04 5658

原创 阿里云RDS接口开发笔记

这里是RDS的接口文档:阿里云开发者社区,但文档里说的那些什么签名啊什么的其实是有误导的,咱不需要关心。感觉RDS的接口最开始就是这种HTTP的,我在看这个文档的时候就很奇怪,为什么没有封装成SDK。看签名部分的时候真的很蛋疼。其实是有SDK的,并且在文档中有引用到:aliyun-openapi-java-sdk。阿里云几乎所有的api都可以在这里找到,当然包括了RDS。但就单个模块而言,在gith

2016-07-18 22:36:11 3617

原创 Lync(Skype)接口开发实录

首先要把测试环境搭起来。 在使用Lync登录时如果报证书验证错误,可以采用这个方法导入证书就好了: http://www.cnblogs.com/liyuxin/p/3708633.html如果遇到下面这种错误,那肯定是账号在AD域中根本不存在: 安装Skype for bussiness: https://www.microsoft.com/zh-cn/download/confirmat

2016-07-02 00:49:16 3622

原创 MySQL创建外键时报Can't create table (errno: 150)错误解决办法

总的来说,这个问题的原因就是创建的外键和关联的表的主键类型不匹配。下面用个简单的例子来说明。两张很简单的表,学生表和教师表:CREATE TABLE `t_teacher` ( `id` varchar(11) NOT NULL, `name` varchar(20) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAUL

2016-05-17 02:30:02 42321 4

原创 进步了的时间才算时间

今天看到一个观点,觉得挺有道理的。“做技术的应该找大一点儿的公司和平台,为以后铺路”。确实啊,如果一直在小公司呆着,你永远都只能是小打小闹,不会有什么突破。等你稍微老一点儿,一大堆勤奋而且工资要求又低的新人涌入这个行业的时候,你就会被拍死在沙滩上! 去大公司的道理看似废话,大公司和大平台谁都想去啊,但不是每个人都能去的。我认为这不是重点,重点是,在你工作了一段时间之后,你还有没有想

2015-04-27 11:21:12 935 4

原创 进步了的时间才算时间

今天看到一个观点,觉得挺有道理的。“做技术的应该找大一点儿的公司和平台,为以后铺路”。确实啊,如果一直在小公司呆着,你永远都只能是小打小闹,不会有什么突破。等你稍微老一点儿,一大堆勤奋而且工资要求又低的新人涌入这个行业的时候,你就会被拍死在沙滩上! 去大公司的道理看似废话,大公司和大平台谁都想去啊,但不是每个人都能去的。我认为这不是重点,重点是,在你工作了一段时间之后,你还有没有想去大...

2015-04-27 11:17:57 137

原创 Hibernate中的left outer join

首先,最简单的是一对多的连接,比如:select student from Teacher t join t.students student where student....如果是多对一呢?这里有隐式和显示的区别(上面的一对多的情况属于隐式连接)。可以像下面这样select student from Student student where student.teacher.ag

2014-12-17 19:17:34 1414

Hibernate中的left outer join

首先,最简单的是一对多的连接,比如:select student from Teacher t join t.students student where student....如果是多对一呢?这里有隐式和显示的区别(上面的一对多的情况属于隐式连接)。可以像下面这样select student from Student student where student.teacher...

2014-12-17 19:17:00 198

原创 从MyEclipse插件安装中想到的

网上一搜“Eclipse插件安装”一大堆文章,之前也懒得记。刚才又安装了以下SVN插件,真心蛋疼。我已经将SVN插件压缩文件下载到了本地,然后使用help->Install from site的安装方式来安装,结果先滚出一堆什么乱七八糟的东西来,好像是在检查网络上的一个路径,TM,我不都已经下载下来了吗?你检查各屁啊?!好不容易经过了这一步,然后我选择了我下载的压缩文件,然后就开始等待了。

2014-12-02 23:03:00 902

从MyEclipse插件安装中想到的

网上一搜“Eclipse插件安装”一大堆文章,之前也懒得记。刚才又安装了以下SVN插件,伤心啊。我已经将SVN插件压缩文件下载到了本地,然后使用help-&gt;Install from site的安装方式来安装,结果先滚出一堆什么乱七八糟的东西来,好像是在检查网络上的一个路径,TM,我不都已经下载下来了吗?你检查什么呢?!好不容易经过了这一步,然后我选择了我下载的压缩文件,然后就开始等待...

2014-12-02 23:03:00 100

原创 排序算法之快速排序

快速排序可能是应用最广泛的排序算法了。

2014-11-22 10:40:22 543

排序算法之快速排序

快速排序可能是应用最广泛的排序算法了。流行的原因是因为它实现简单、适用于各种不同的输入数据且在一般的应用中比其他算法都要快得多。快速排序属于原地排序,不需要额外的空间(相对于归并排序)。快速排序算法的时间复杂度为NlogN。快速排序和归并排序类似,也是分治思想是应用。归并排序每次将数组一分为二,将两边都排序之后再合并。快速排序算法是每次将数组进行切分,保证切分点在相对于两边的子数组是有序的。左...

2014-11-22 10:40:00 128

原创 正则表达式在Java中的使用

一个简单的例子,使用正则表达式来匹配电话号码,电话号码包括了三到四位的区号;可有可无的连接符;6位到八位的电话号码。正则表达式如下:\d{3,4}-?\d{6,9}这里仅仅是举个例子,实际使用中,考虑到电话号码的合法性,区号还需要改进。简单而言,像下面这样就能使用这个正则表达式对字符串进行验证了:boolean match = Pattern.matches("\\d{3,

2014-11-16 17:51:00 775

正则表达式在Java中的使用

这里不打算说明正则表达式的具体细节,只讲Java中使用正则表达式的一些基础知识。一个简单的例子,使用正则表达式来匹配电话号码,电话号码包括了三到四位的区号;可有可无的连接符;6位到八位的电话号码。正则表达式如下:\d{3,4}-?\d{6,9}这里仅仅是举个例子,实际使用中,考虑到电话号码的合法性,区号还需要改进。简单而言,像下面这样就能使用这个正则表达式对字符串进行验证了:b...

2014-11-16 17:51:00 109

原创 排序算法之归并排序

归并排序是分治思想的一个很好的例子。

2014-11-15 18:53:22 473

排序算法之归并排序

归并排序是分治思想的一个很好的例子。它比希尔排序在时间复杂度上更优,为NlogN,并且属于稳定排序方法(稳定性:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,ri=rj,且ri在rj之前,而在排序后的序列中,ri仍在rj之前,则称这种排序算法是稳定的;否则称为不稳定的)。自上而下的归并排序思想是,依赖于递归,逐级将待排序对象分割...

2014-11-15 18:53:00 98

原创 反射中的数组

首先,拿到一个Class,可以通过如下方式来判断是否是一个sh

2014-11-03 11:32:46 572

反射中的数组

首先,拿到一个Class,可以通过如下方式来判断是否是一个数组类型:Class&lt;?&gt; c = f.getType();if(c.isArray()){ ...}可以通过:c.getComponentType()来获取到数组元素的类型。然后,可以通过下面的方式来创建一个数组:Object o = Array.newInstance(c, n);添...

2014-11-03 11:32:00 114

原创 排序算法之初级排序

首先,将涉及到排序的基本操作抽象为一个

2014-10-26 22:30:35 585

排序算法之初级排序

首先,将涉及到排序的基本操作抽象为一个接口,其中包括一下一些方法:(这里的约定是从小到大的排序)public interface Sort { /** * 对数组a进行排序 * @param a */ public void sort(Comparable[] a); /** * 大小比较 * @param a * @param b * @retur...

2014-10-26 22:30:00 89

原创 嵌入式(embed)Tomcat的使用

本来想用InstallAnyWhere来制作一个安装文件,里面包含一个tomcat,结果发现InstallAnyWhere

2014-10-24 16:55:30 18202 1

嵌入式(embed)Tomcat的使用

本来想用InstallAnyWhere来制作一个安装文件,里面包含一个tomcat,结果发现InstallAnyWhere一时半会儿可能学不下来。我的目的是想用Java SWT做一个壳子,内嵌一个浏览器,这个浏览器访问tomcat应用,让整个程序看起来像是一个CS架构的。我需要的功能倒是不复杂,想想能不能自己实现一个tomcat。Tomcat有没有提供这样的功能呢,不小心搜索了一下“嵌入式Tomc...

2014-10-24 16:55:00 1443 1

原创 InstallSeield安装及破解

安装文件:1、 在安装的最后一步选择激活,点击下一步2、 随便输入一串激活码,如(1111111111……),点击下一步.3、 提示出错,不用管,选择电子邮件激活,下一步4、 出现一串的序列码,拷贝它。5、 打开[InstallShield.12.豪华完全版].keygen.exe;粘上那串序列码,点create^,会生成一串很长的序列码,拷贝它。

2014-10-24 10:39:18 742

InstallSeield安装及破解

安装文件:http://pan.baidu.com/s/1o6NsbgA 密码:1qrh破解工具:http://pan.baidu.com/s/1kTA6WEb 密码:wnjs1、 在安装的最后一步选择激活,点击下一步2、 随便输入一串激活码,如(1111111111……),点击下一步.3、 提示出错,不用管,选择电子邮件激活,下一步4、 出现一串的序列码,拷贝它。5、 打开[In...

2014-10-24 10:39:00 298

原创 UnionFind算法学习

学习Algorithms一书1.5节,在此备忘,

2014-10-19 17:18:40 650

UnionFind算法学习

算法来自Algorithms一书1.5节,在此备忘。该书配套网站:http://algs4.cs.princeton.edu/15uf/算法解决的问题解决的是动态连通性问题,给定N个点和N个点之间的连通数据,例如:N = 10(0,1,2,3,4,5,6,7,8,9)连通数据:(4,3)(3,8)(6,5)(9,4)(2,1)(8,9)(5,0)...

2014-10-19 17:18:00 137

原创 学习使用iReport几点总结

最近在用iReport生成报表,总结一下几点经验,bei

2014-10-18 18:56:19 629

学习使用iReport几点总结

1.iReport和jasperreport之间的关系个人理解的,iReport仅是一个报表设计器,他所能产生的结果就是jrxml文件,即报表设计木板文件。具体生成为报表,如pdf,word的时候,需要依赖于jasperreport库。2.使用流程:这是官方文档中的插图,说明了各个文件之间的转换关系。首先使用iReport生成jrxml文件,然后使用jasperreport lib...

2014-10-18 18:56:00 149

原创 线程并发工具--线程安全集合

一般的集合,如ArrayList、HashSet、HashMap等,d

2014-10-18 18:29:38 783

线程并发工具--线程安全集合

一般的集合,如ArrayList、HashSet、HashMap等,都是线程不安全的。不安全的表现是什么?ConcurrentModifyException都知道,在遍历集合的时候不能对集合进行添加和删除操作,否则就会抛这个一场。如果一个线程正在遍历一个集合的时候另外一个线程往这个集合中增加或删除了元素,那么程序就会出这个异常。这个异常的原理是,集合中有一个版本号,每次修改(添加或删除...

2014-10-18 18:29:00 124

原创 线程并发工具--阻塞队列

B

2014-10-18 17:54:07 635

线程并发工具--阻塞队列

BlockingQueue在生产者消费者模式中运用非常广泛,生产者往队列中增加产品,消费中从队列中获取产品。在增加和删除队列元素的时候,是否阻塞是可选的,比如队列为空时再获取队列元素时,是返回空、返回null还是抛异常,下面的摘自api文档的说明:Throws exceptionSpecial valueBlocksTimes outInsertadd(e...

2014-10-18 17:54:00 93

原创 线程并发工具--Exchanger

Exchanger可以实现两个线程之间的数据交换:

2014-10-18 17:17:28 536

线程并发工具--Exchanger

Exchanger可以实现两个线程之间的数据交换: final Exchanger&lt;String&gt; exchanger = new Exchanger&lt;String&gt;(); new Thread(new Runnable(){ @Override public void run() { try { Thread.sleep(new ...

2014-10-18 17:17:00 72

原创 线程并发工具--CountDownLatch

倒计时器,某个xfinal CountDownLatch cdl = new CountDownLatch(10); for(int i = 0;i<10;i++){ final int index = i; new Thread(new Runnable(){ @Override public void run() { try { Thr

2014-10-18 17:04:33 485

线程并发工具--CountDownLatch

倒计时器,某个线程可以等待这个倒计时指向0的时候开始执行:final CountDownLatch cdl = new CountDownLatch(10); for(int i = 0;i&lt;10;i++){ final int index = i; new Thread(new Runnable(){ @Override public void run...

2014-10-18 17:04:00 104

Version Control with Subversion

1.Fundamental Concepts 2.Basic Usage 3.Advanced topics 4.Branching Merging 5.Repository Administration 6.Server Configuration 7.Customizing Your Subversion Experience 8.Embedding Subversion 9.Subversion Complete Reference

2019-03-25

8051 Tutorial 英文版

8051开发手册(英文版): Chapter 1 Types of Memory Chapter 3 Basic Registers Chapter 4 Addressing Modes Chapter 5 Program Flow Chapter 6 Low Level Information Chapter 7 Timers Chapter 8 Serial Port Operations Chapter 9 Interrupts Chapter 10 Additional Features in 8052

2019-03-21

Java.Performance.The.Definitive.Guide(Java性能权威指南)

深入理解Java性能调优,JVM内存结构的图书,绝对值得入手!

2014-12-02

分析模式-可复用的对象模型

软件系统设计,超级经典 责任模式 观察和测量模式 针对公司财务的观察模式 库存与账务 使用财务模式 计划 交易 派生合同 交易包 ...

2014-04-20

面向对象编程C++和Java比较教程 英文PDF精简版

面向对象编程C++和Java比较教程 英文PDF精简版

2014-03-17

面向对象编程C++和Java比较教程 英文PDF版

面向对象编程C++和Java比较教程 英文PDF版

2014-03-17

面向对象编程:C++与Java比较教程 英文精简版

面向对象编程:C++与Java比较教程 英文版的精简缩略版,方便pad、手机上阅读 Chapter 1 - Why OO Programming—Some Parallels with Things at Large Chapter 2 - Baby Steps Chapter 3 - The Notion of a Class and Some Other Key Ideas Chapter 4 - Strings Chapter 5 - Using the Container Classes Chapter 6 - The Primitive Types and Their Input/Output Chapter 7 - Declarations, Definitions, and Initializations Chapter 8 - Object Reference and Memory Allocation Chapter 9 - Functions and Methods Chapter 10 - Handling Exceptions Chapter 11 - Classes, The Rest of the Story Chapter 12 - Overloading Operators in C++ Chapter 13 - Generics and Templates Chapter 14 - Modeling Diagrams for OO Programs Chapter 15 - Extending Classes Chapter 16 - Multiple Inheritance in C++ Chapter 17 - OO for Graphical User Interfaces, A Tour of Three Toolkits Chapter 18 - Multithreaded Object-Oriented Programming Chapter 19 - Network Programming Chapter 20 - Database Programming

2014-03-17

面向对象编程:C++与Java比较教程 英文版

Chapter 1 - Why OO Programming—Some Parallels with Things at Large Chapter 2 - Baby Steps Chapter 3 - The Notion of a Class and Some Other Key Ideas Chapter 4 - Strings Chapter 5 - Using the Container Classes Chapter 6 - The Primitive Types and Their Input/Output Chapter 7 - Declarations, Definitions, and Initializations Chapter 8 - Object Reference and Memory Allocation Chapter 9 - Functions and Methods Chapter 10 - Handling Exceptions Chapter 11 - Classes, The Rest of the Story Chapter 12 - Overloading Operators in C++ Chapter 13 - Generics and Templates Chapter 14 - Modeling Diagrams for OO Programs Chapter 15 - Extending Classes Chapter 16 - Multiple Inheritance in C++ Chapter 17 - OO for Graphical User Interfaces, A Tour of Three Toolkits Chapter 18 - Multithreaded Object-Oriented Programming Chapter 19 - Network Programming Chapter 20 - Database Programming

2014-03-17

Java毕业设计-图书管理系统

多年前用Java写的基于swing的图书管理系统。

2012-02-10

Java初学者基础

1.数的进制之间的转换 2 2.打印等腰三角形 3 3.获取一个随机字符 4 4.运算符运用 4 5、String 5 6、集合 9 7、时间类 15 8、IO流 16 9、反射 26 10、网络编程(TCP/UDP) 28 多线程聊天程序(基于UDP) 28 TCP通信 33 文件上传(基于TCP) 36 实验测试浏览器与服务器之间的信息格式 40 简单HTTP服务器实现 41 简易网络爬虫 44

2011-11-19

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

TA关注的人

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