很久之前开发了一个名为Dora.Interception的开源AOP框架(github地址:https://github.com/jiangjinnan/Dora,如果你觉得这个这框架还有那么一点价值,请不吝多点一颗星),最近对它作了一些改进(包括编程模式和性能,目前最新版本2.1.4)。一直以来我 ...
分类:
Web程序 时间:
2018-12-02 13:35:26
阅读次数:
228
JDK future框架,提供了一种异步编程模式,基于线程池的。将任务runnable/callable提交到线程池executor,返回一个Future对象。通过future.get()获取执行结果,这里提交到线程池,后面的操作不会阻塞。future.get()获取结果会阻塞,其实也是用多线线程执 ...
分类:
编程语言 时间:
2018-12-01 10:59:55
阅读次数:
183
ASP.NET MVC 过滤器(三) 前言 本篇解说行为过滤器的运行过程,过滤器实现、使用方式有AOP的意思。能够通过学习了解过滤器在框架中的运行过程从而获得一些AOP方面的知识(在顺序运行的过程中,这样的编程模式就是横向的插入点),言归正传,我们还是以学习过滤器为主。对于IAuthorizatio ...
分类:
Web程序 时间:
2018-11-29 11:00:48
阅读次数:
203
python是一门动态强类型语言: 弱类型体现在传参的时候不用指定数据类型, 强类型体现在比如 2+"str"会报数据类型错误python不崇尚根据继承所得来的相似,比如tuple和list的方法已经非常相似了,却还是各自独立的方法这就是python崇尚的鸭子类型,优点是松耦合。三种编程模式:面向过 ...
分类:
其他好文 时间:
2018-11-28 22:29:22
阅读次数:
263
我用的thrift模式: 网络编程模式 arg.selectorThreads(Integer.parseInt(mProp.get("LogServerSelectorThread").toString()));这步骤是启动了多个线程,每个线程里面有个bocking queue队列,队列元素是so ...
分类:
其他好文 时间:
2018-11-25 16:25:45
阅读次数:
194
上一篇《更加简练的编程体验》提供了最新版本的Dora.Interception代码的AOP编程体验,接下来我们会这AOP框架的编程模式进行详细介绍,本篇文章着重关注的是拦截器的定义。采用“基于约定”的Interceptor定义方式是Dora.Interception区别于其他AOP框架的一个显著特征... ...
分类:
Web程序 时间:
2018-11-22 00:02:18
阅读次数:
244
Spring 概述 1. 什么是spring? Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。 2. 使用 ...
分类:
编程语言 时间:
2018-10-22 00:02:31
阅读次数:
232
常见问题 为什么不支持 Linq? SmartSql 希望 开发人员更多的接触 Sql ,获得绝对的控制权与安全感。所以目前没有计划支持 Code First 编程模式。 我想好了Sql怎么写,然后再来写Linq,完了可能还要再查看一下Linq输出的Sql是什么样的,这真是糟糕的体验。要想对Sql做 ...
分类:
数据库 时间:
2018-10-16 02:04:08
阅读次数:
237
相信很多人,在工作中会需要使用到计算器。一般的做法是,打开并使用系统自带的计算器。 这种做法可能对我来说,有如下几个问题。 太慢。每次需要打开计算器,然后改成编程模式,手工选择进制,再使用输入表达式进行计算。 需要切换窗口。编程时经常是在终端中,使用GUI计算器则意味着要离开终端,计算完毕再切换回来 ...
分类:
系统相关 时间:
2018-10-13 18:42:44
阅读次数:
201
事件驱动模型 与传统编程模式不同,事件驱动程序在启动之后,就在那等待,等待什么呢?等待被事件触发。传统编程下也有“等待”的时候,比如在代码块D中,你定义了一个input(),需要用户输入数据。但这与下面的等待不同,传统编程的“等待”,比如input(),你作为程序编写者是知道或者强制用户输入某个东西 ...
分类:
其他好文 时间:
2018-10-13 10:53:55
阅读次数:
182