- 博客(26)
- 资源 (4)
- 收藏
- 关注
原创 Guava EventBus
了解Guava的EventBus是从Shiro的EventBus开始, 只是想两者有什么不同, 为什么Shiro要重新实现自己的一套EventBus。 带着这样的问题就先看了一下Guava的EventBus. 总体来讲实现容易, 重要的还是思想。它由EventBus, Subscriber, SubscriberRegistry, Dispatcher, 这几个大的Object来处理完成。 ...
2017-10-05 21:26:24
187
原创 Shiro Factory 分析
本文是基于 Shiro 1.4.0 的基础上进行分析。 类图如下: 通过工厂方法和模板模式将 ini Object 分为不同的Factory, 同时通过传入不同的泛型对象生成不同的类。 public abstract class IniFactorySupport<T> extends AbstractFactory<T> { ........
2017-09-03 15:38:16
304
原创 Annotation RetentionPolicy 区别
RetentionPolicy做为一个enum类, 有三个值。RetentionPolicy.SOURCE: 其生命周期只存在于source code这个阶段, 在compile的时候, 这类annotation会被JVM所丢弃。当编译完成后, 这类annotation是没有用处的。如: @Override, @SuppressWarnings@Target(ElementType...
2017-05-24 22:08:37
578
原创 java.lang.Class.getEnclosingMethod()方法
如果一个class表示在方法中的一个本地或匿名class, 那么通过java.lang.Class.getEnclosingMethod()方法将返回的底层类的立即封闭方法。 反之则为NULL。 Reference: http://www.yiibai.com/javalang/class_getenclosingmethod.html加了匿名类的输出 package c...
2017-05-24 11:59:52
4029
原创 Solr 外部文件
ExternalFileField类型使得一个指定的域值可来自于一个外部文件, 而不是在Solr index中。 对于这个指定的field, 文件中包含了key field及filed值的mapping关系。从另一个角度想, solr得到的值来自于外部文件, 而不是index.注: 此外部域是不能被索引到此ExternalFileField类型对于经常更新一个被多个文档引用的field是...
2016-09-15 21:22:28
225
原创 Field Default Properties
一些默认的可指定的属性, 不管是在filed types, 或者是自定义的field上, 都可以被重写。 属性的默认值依赖于FieldType class, 然而Fieldtype class也同时依赖于shcema 的version. 下面的table 是针对version="1.6" 的fieldType. PropertyDescriptionVa...
2016-09-13 21:31:20
174
原创 Solr Filed 一般类型属性
对于Solr的一般属性(General Properties), 它适用于任何Field Type. 有以下一般属性: PropertyDescriptionValuesname class positionIncrementGapFor multivalued fields, specifies a distance bet...
2016-09-11 17:43:35
332
原创 Solr DocValues
当Sorting, faceting时, 通过设置DocValues来保存记录域值的方式是非常高效的。Solr通过倒排建立索引, 首先建立term list, 然后每个term对应一个document list。 这样 因为传统的Solr建立Index是通过倒排索引建立的Index, 首先建立term list, 然后每个term对应一个document list, 这样的结构使得...
2016-09-11 15:33:06
292
原创 Solr 空或非空查询
空: q=-(content:*) // - 为不等于的意思 Or q=content:['' TO *]不为空: q=content:*
2016-08-20 17:31:58
1829
原创 Gson fromJson()
Gson类作为serialize, deserialize json的context, 主要用到的是fromJson(...) 及toJson()两个方法。进行实例化的时候调用new Gson(), 但其默认的constructor 为: public Gson() { this(Excluder.DEFAULT, FieldNamingPolicy.IDENTITY, Co...
2016-08-14 09:01:06
412
原创 Gson 的 JsonReader source code 理解
JsonReader 将JSON 内容作为Stream 读取, Stream包括 strings, numbers, booleans, and nulls 及 对象的开始有结束符, 另外还有数组。 以读取一个简单的Json为例, public void testReadSimple() throws IOException { JsonReader reade...
2016-08-13 12:52:36
153
原创 Form 的GET与POST的区别
转自: http://joe5456536.blog.163.com/blog/static/8537477320123176154590/表单form中的“method=get”与“method=post”的区别:使用get时,form数据集被附加到form元素的action属性所指定的URI后面。使用post时,form数据集被包装在请求的body中并被发送。区别:...
2014-02-08 14:19:06
183
原创 groupadd: command not found
使用命令“groupadd hadoop”,Error:“bash:groupadd:command not found”。后来才知道问题处在命令“su”上。 使用su可以进入超级用户(根权限),但是却不能使用管理员的登录脚本和搜索路径功能。命令“su -”不但可以切入到管理员权限,而且可以使用管理员的登陆脚本和搜索路径。 也当然,直接使用ifconfig命令,会报...
2013-12-16 07:59:48
1482
原创 查找泛型父类
对于泛型父类的查找,有助于base类的建立。public class Father { private Class clazz; public Father() { this.clazz = null; Class c = getClass(); Type t = c.getGenericSuperclass(); ...
2013-11-17 23:13:47
116
原创 与hibernate的集成:声明式事务.事务的传播特性等.
spring+hibernate,采用声明式事务原文来自: http://blog.youkuaiyun.com/yjsuge/article/details/6648055 1、声明式事务配置 * 配置SessionFactory * 配置事务管理器 * 事务的传播特性 * 那些类那些方法使用事务 具体配置如下: classpath:hibern...
2013-07-20 15:32:10
101
原创 Map 的排序
转自: http://blog.sina.com.cn/s/blog_530fe9870100l5oy.htmlTreeMap 和 HashMap 用法大致相同,但实际需求中,我们需要把一些数据进行排序;以前在项目中,从数据库查询出来的数据放在List中,顺序都还是对的,但放在HashMap中,顺序就完全乱了。为了处理排序的问题: 1. 对于一些简单的排序,如:数字,...
2013-07-07 08:02:36
135
原创 java获取服务器一些信息的方法
java获取服务器一些信息的方法 转自: http://blog.youkuaiyun.com/fengyifei11228/article/details/7721537request.getServletContext().getRealPath("/") 获取项目所在服务器的全路径,如:D:\Program Files\apache-tomcat-7.0.25\webapps\Test...
2013-07-03 08:02:12
269
原创 linux shell substr(分割字符串)
转载: http://zhangwei20086.blog.163.com/blog/static/23055718201222945133958/原来在shell中如果遇到要截取字符串的情况,就调用awk中的substr来实现。今天了解到一种新的方法,原来shell中本身就支持这种用法。如,有一字符串”12345678″,现在要截取第三个到第六个字符的字符串区间。则可以:...
2013-05-02 17:50:35
647
原创 linux下批量修改用户密码
对系统定期修改密码是一个很重要的安全常识,通常,我们修改用户密码都使用 passwd user 这样的命令来修改密码,但是这样会进入交互模式,即使使用脚本也不能很方便的批量修改,除非使用expect 这样的软件来实现,难道修改一下密码还需要单独安装一个软件包吗? 不,我们其实还有其他很多方法可以让我们避开交互的,下面具体写一下具体的实现方式:第一种:echo "123456" | pa...
2013-04-11 22:47:37
263
原创 linux:vi 替换命令
vi/vim 中可以使用 :s 命令来替换字符串。以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(vi 真是强大啊,还有很多需要学习),记录几种在此,方便以后查询。 :s/vivian/sky/ 替换当前行第一个 vivian 为 sky :s/vivian/sky/g 替换当前行所有 vivian 为 sky :n,$s/vivian/sky/ 替换第 ...
2013-04-06 18:42:26
99
原创 Linux上vi(vim)编辑器使用教程
Linux上vi(vim)编辑器使用教程vi有3个模式:插入模式、命令模式、低行模式。 插入模式:在此模式下可以输入字符,按ESC将回到命令模式。 命令模式:可以移动光标、删除字符等。 低行模式:可以保存文件、退出vi、设置vi、查找等功能(低行模式也可以看作是命令模式里的)。 一、打开文件、保存、关闭文件(vi命令模式下使用) vi filename ...
2013-04-06 12:37:22
115
原创 Oracle
1.编写。编写一个最最简单的存储过程,给它起个名字叫做proc_helloworldCREATE OR REPLACE PROCEDURE proc_helloworldISBEGIN DBMS_OUTPUT.put_line ('Hello World!');END;/2.创建。在sqlplus命令行界面创建该存储过程sys@ora10g> conn se...
2012-11-07 11:27:29
123
原创 查看JAR 的JDK 版本
You test the JDK version of your JAR with following code. public class JDKVersion { private static final int JAVA_CLASS_MAGIC = 0xCAFEBABE; public static void main(String[] args){ ...
2012-07-13 11:35:03
102
原创 Could not find action or result There is no Action mapped for action name mpxSer
Could not find action or resultThere is no Action mapped for action name mpxServiceSoftware. - [unknown location],当访问项目的servlet时,报了这个异常.几经周折,原来提web.xml中struts的配置问题:1, <filter> &...
2011-05-31 13:16:31
146
原创 WebUtils.getParametersStartingWith
举个例子,比如页面上有 <input type="text" name="p_1" value="1"> <input type="text" name="p_2" value="2"> <input type="text" name="p_3" value="3&quo
2011-01-21 17:51:13
141
原创 JSTL .c:url
语法 :语法1:没有本体内容 <c:url value="value" [context="context"] [var="varName"] [scope="{page|request|session|application}"] /> 语法2:本体内容代表查询字符串(Query String)参数 <c:url value="value"
2011-01-21 17:46:25
218
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人