- 博客(27)
- 资源 (61)
- 收藏
- 关注
原创 Class.getResourceAsStream和ClassLoader.getResourceAsStream的区别
ClassLoader.getResourceAsStream根据指定的资源名称读取该资源的输入流InputStreampublic InputStream getResourceAsStream(String name) { URL url = getResource(name); try { return url != null ? url
2017-11-28 20:09:51 880
转载 五年java人的一点感悟
恍然间,发现自己在这个行业里已经摸爬滚打了五年了,原以为自己就凭已有的项目经验和工作经历怎么着也应该算得上是一个业内比较资历的人士了,但是今年在换工作的过程中却遭到了重大的挫折。详细过程我就不再叙述,在此,只想给大家说一说被拒绝的原因,看看大家有没有相似的经历,和类似的感悟。面试官对我的答复大致是这样的,我们不需要熟练工,我们需要在某领域拥有超过常人的积累认知,和拥有整套完整思维模式和优秀认知事物能
2017-11-27 22:13:57 394
原创 如何阅读Tomcat源代码?
书籍《How Tomcat Works》 对应的中文版《深入剖析Tomcat》 《Tomcat6 Developer’s Guide》片段分析Tomcat其实就是分析一个Servlet容器,我们从 servlet容器的角度来看看 Tomcat。一个功能健全的 servlet容器对于每个 servlet 的HTTP请求会完成以下事情: (1)当servlet 第一次被调用的时候,加载了 serv
2017-11-27 20:35:08 4552
原创 Tomcat 编解码解析
很久很久以前写的关于解决Tomcat乱码的文章: tomcat的编码设置 Servlet乱码问题解决那时候只知道搜索解决方案,对于内部实现一概不知。终究下一次遇到还是不会解决。Tomcat request 结构其中org.apache.coyote.Request是应用层拿到的Request对象的底层实现,不便使用。 org.apache.catalina.conne...
2017-11-26 12:45:31 1413
原创 Oracle脱库脚本
虽说十分简陋,但是应对一般的查询操作已经足够了。<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %><%@ page import="java.sql.*" %><%@ page import="java.util.*" %><!DOCTYPE html><html><head> <title
2017-11-25 15:14:33 1657
转载 像 GitHub 一样渲染 Markdown
个人一直比较喜欢 GitHub 的 Markdown 渲染风格,支持的语法和语法高亮更多而且代码看起来十分舒服。但是有时候想写点东西在自己的网站上展示出来,之前使用的方案是用 sublimetext-markdown-preview 这个插件生成 HTML ,生成的时候选择 GitHub ,然后把 HTML 文件传到主机上显示。然而现在换用 atom 了, 它自带的渲染并不是很好看。一堆 HTML
2017-11-25 09:33:06 6053
原创 System.gc
测试一import org.junit.Test;class Demo { @Override protected void finalize() throws Throwable { super.finalize(); System.out.println("Demo::finalize"); }}public class T {
2017-11-21 10:50:58 407
转载 bash中 2>&1 & 的解释
1、首先,bash中0,1,2三个数字分别代表STDIN_FILENO、STDOUT_FILENO、STDERR_FILENO,即标准输入(一般是键盘),标准输出(一般是显示屏,准确的说是用户终端控制台),标准错误(出错信息输出)。 2、输入输出可以重定向,所谓重定向输入就是在命令中指定具体的输入来源,譬如 cat < test.c 将test.c重定向为cat命令的输入源。输出重定向是指定具体的
2017-11-21 09:14:04 298
原创 Mintty(Cygwin)快速定位当前目录
方法一新建批处理文件Cygwin.batE:\Cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico -e /bin/bash --login -i -c "cd '%1';exec bash"使用: Cygwin.bat d:\java方法二新建批处理文件Cygwin.bat@echo offset _T=%CD%echo %_TE:chdir E:\Cy
2017-11-16 17:10:24 1982
原创 Hilbert曲线简介及生成算法
Hilbert曲线Hilbert曲线是一种填充曲线,类似的填充曲线还包括Z曲线,格雷码等其他方法。Hilbert曲线依据自身空间填充曲线的特性,可以线性地贯穿二维或者更高维度每个离散单元,并且仅仅穿过一次,并对每个离散单元进行线性排序和编码,该编码作为该单元的唯一标识。空间填充曲线可以将高维空间中没有良好顺序的数据映射到一维空间,经过这种编码方式,空间上相邻的对象会邻近存储在一块,可以减少IO的时间
2017-11-14 22:46:47 13593 3
原创 IDEA Mybatis Plugin 3.21 破解方法
转载自https://www.awei.org/2017/11/08/idea-mybatis-plugin-3-21-po-jie-fang-fa/ 新版的Mybatis Plugin采用zkm混淆了,反编译不能直接看到代码实现,破解难度大大增加。zkm混淆的大概思路就是将源代码中的包名、类名重新编排。源代码类中直接赋值的字符串,混淆后变为通过静态代码块、构造函数、组合调用其他方法来初始化...
2017-11-12 10:20:20 13149 9
原创 BASE64 编码规则
Base64 编码用一些很常见的 ASCII 字符来表示 0-63(2^6-1) ,构成 6 个 bit 。用 A-Z 表示 0-25 ,a-z 表示 26-51 , 0-9 表示 52-61 , + 表示 62, / 表示 63 。BASE64 编码表 数值 字符 数值 字符 数值 字符 数值 字符 0 A 16 Q 32 g 48 w
2017-11-10 12:29:14 1238
原创 LeetCode-12. Integer to Roman-13. Roman to Integer
12. Integer to RomanGiven an integer, convert it to a roman numeral.Input is guaranteed to be within the range from 1 to 3999.将一个int型的数字转化为罗马数字,范围在1-3999。下面是罗马数字的介绍及基本规则: 罗马数字采用七个罗马字母作数字、即Ⅰ(1)、X(10)、C
2017-11-09 16:31:13 277
原创 LeetCode-151. Reverse Words in a String
Given an input string, reverse the string word by word.For example, Given s = “the sky is blue”, return “blue is sky the”.输入一个句子然后把每个单词倒序输出。利用String里的 trim、split函数可以轻松解决。/** * 返回字符串的副本,忽略前导空白和尾部空白。
2017-11-09 10:36:01 427
原创 Java 多态实现的详细介绍
普通(非多态)方法的地址是在编译时确定的,调用它的字节码(invokespecial,invokestatic)指令可以直接调用该方法。 这有时被称为早期绑定(或者叫做静态绑定),因为方法名称在编译时绑定到某一具体的内存地址。 有时,我们不清楚某些变量的类型应该是什么,直到我们运行该程序,因为它可能取决于用户输入,随机数或其他外部数据,如文件中的数据。以上所说的普通方法即为:private、...
2017-11-08 16:43:03 897
原创 LeetCode-49. Group Anagrams
Given an array of strings, group anagrams together.For example, given: [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”], Return:[ ["ate", "eat","tea"], ["nat","tan"], ["bat"]]Note: All inputs will b
2017-11-08 13:06:20 312
原创 LeetCode-38. Count and Say
The count-and-say sequence is the sequence of integers with the first five terms as following:1. 12. 113. 214. 12115. 111221 1 is read off as “one 1” or 11. 11 is read off
2017-11-08 10:28:36 318
转载 多态(Polymorphism)的实现机制(下)--Java篇
既然多态是面向对象的三大本质特征之一(其它两个是数据抽象和继承),那么C++为什么不将方法调用的默认方式设置为动态绑定,而要通过关键字virtual进行标记呢?Bruce Eckel在《Thinking in C++》中提到,这是由于历史原因造成的,C++是从C发展而来的,而C程序员最为关心的是性能问题,由于动态绑定比静态绑定多几条指令,性能有所下降,如果将动态绑定设定为默认方法调用方式,那么很多...
2017-11-07 20:12:28 258
转载 深入理解java多态性
昨天看到一个关于多态性的帖子,参考了回帖者的理解,加入了一些自己的看法,整理出来供大家参考,不一定完全正确,欢迎大家批评指正。相关类package com.xiya.JavaStudy;class A { public String show(D obj) { return ("A and D"); } public String show(A obj) {
2017-11-07 17:44:42 227
原创 ServletInputStream available bug?
对于如下简单的Servlet程序package cn.bjut.servlet;import javax.servlet.ServletException;import javax.servlet.ServletInputStream;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet
2017-11-07 11:04:34 634
转载 多态在 Java 中的实现
众所周知,多态是面向对象编程语言的重要特性,它允许基类的指针或引用指向派生类的对象,而在具体访问时实现方法的动态绑定。C++ 和 Java 作为当前最为流行的两种面向对象编程语言,其内部对于多态的支持到底是如何实现的呢,本文对此做了全面的介绍。 注意到在本文中,指针和引用会互换使用,它们仅是一个抽象概念,表示和另一个对象的连接关系,无须在意其具体的实现。Java 的实现方式Java 对于方法调用动
2017-11-06 15:56:55 444
转载 Java语言中单例模式的四种写法
作为设计模式理论中的Helloworld,相信学习java语言的人,都应该听说过单例模式。单例模式作为对象的一种创建模式,它的作用是确保某一个类在整个系统中只有一个实例,而且自行实例化并向整个系统提供这个实例。由此可见,单例模式具有以下的特点: 1. 单例类只能有一个实例。 2. 单例类必须自己创建自己的唯一的实例。 3. 单例类必须给所有其他对象提供这一实例。由于Java语言的特点,使得单例
2017-11-05 20:07:40 416
转载 Spring MVC 解读——<mvc:annotation-driven/>
AnnotationDrivenBeanDefinitionParser通常如果我们希望通过注解的方式来进行Spring MVC开发,我们都会在*-servlet.xml中加入<mvc:annotation-driven/>标签来告诉Spring我们的目的。但是我们为什么这么做呢?这个标签是什么意思呢?它做了什么呢?同样为了弄清楚这些问题, 像<context:component-scan/>标签一
2017-11-04 16:17:36 268
原创 SpringMVC @ResponseBody处理流程
SpringMVC的Controller方法的返回值大体有两种: 1. ModelAndView(没有使用@ResponseBody注解) 2. 直接输出到响应流的数据(使用@ResponseBody注解,没有视图解析的步骤)/** * 指示方法返回值直接绑定到 HTTP Response Body 的注解 */@Target({ElementType.TYPE, ElementType.
2017-11-04 10:43:29 4001
转载 Spring mvc的生命周期
开始使用 spring mvc之前,我们必须需要了解下SPRING MVC的流程,如下图:在看下图之前的一些说明: (下面介绍的HandlerMapping,HandlerAdapter,HandlerExceptionResovler,ViewResolver都有个order属性,因为这些接口每一个都可以注册多个实现,order代表他们的执行顺序,order越小的越先执行,一般先执行的匹配到了后面
2017-11-03 21:18:34 1199
原创 SpringMVC-ResourceBundleMessageSource使用
ResourceBundleMessageSource: 提供国际化的类。说的简单点,这个类的作用就是读取资源属性文件(.properties),然后根据.properties文件的名称信息(本地化信息),匹配当前系统的国别语言信息(也可以程序指定),然后获取相应的properties文件的内容。新建国际化资源文件 message=welcome:{0}message=欢迎:{0}Bean的配置
2017-11-02 22:12:33 8168
原创 LeetCode-Remove Duplicates from Sorted Array
26. Remove Duplicates from Sorted ArrayGiven a sorted array, remove the duplicates in place such that each element appear only once and return the new length.Do not allocate extra space for another arr
2017-11-02 14:19:18 287
lua-cjson-2.1.0-已编译
2018-04-16
mybatis plugin 3.21破解补丁
2017-11-13
QQWry-源码
2017-11-13
Privacy in Location-Based Applications
2017-10-17
BJUT数字图像处理作业
2017-01-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人