`
liuwei8728
  • 浏览: 33616 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
计算机专业名词伤不起啊,有木有。 今天看到模式中说到钩子方法,嘿,真没听说过,那钩子方法是啥了。 于是百度,谷歌的,一查原来所谓的钩子方法,原来就是这么回事,哎,计算机专业名词唬人啊,有木有。 其实简单来说,钩子方法就是在执行某一段程序之前弄一个判断,然后根据该值决定执不执行某些代码而已。 唬人的专业名词大有人在,设计模式中一些模式在程序中经常用到,给它加个唬人的名字,真不知道是什么东东,嘿嘿。
这么个场景:ATM取款机,你输入密码。如果正确,那么进去取款页面。但是如果错误,则重新输入,当输入次数=3的时候,此时,ATM机器吞没你的卡片,同时触发几件事情:1.拍照  2.通知系统  3.页面初始化,给别人用。 对于一个ATM取款机,由于只可能一个人进行操作,因此这里将该场景看为一个单线程操作。 根据我对观察模式的理解,就是有观察者、有被观察者,如果被观察者有事件发生,那么将触发观察者相应的事件发生。因此上面的场景完全可以用观察模式进行模拟。 首先对被观察者进行实现: public interface Observable { public void inputPassw ...
怕忘记。 转为ASCII形式: String str="你是"; try { System.out.println(URLEncoder.encode(str, "UTF-8")); //结果为%E4%BD%A0%E6%98%AF System.out.println(URLDecoder.decode("%E4%BD%A0%E6%98%AF","UTF-8")); //结果为你是 这个里面的字符为URLEncoder.encode(str, "UTF-8") ...
这不是废话吗?本来Freemarker就是一模板引擎,有啥不可以的。不过有闲的蛋疼的嫌疑。 拿个简单运用吧。假如有张表,id号是从1到100,做个循环把名字输出来。 1.  废话不多说,先写模板文件  select * from ktsys.sys_report_file where fi_id=${key}   2. 还能说啥,写java文件处理呗。    思路很简单嘛,先解析数据源,取得连接,然后找这个sql.ftl文件呗。我放在了src下面,所以不管三七二十一,用代码找到它,然后写数据模型,并输出。此时sql.ftl文件的值得到填充,那好呗,我拿这条sql语句用JDBC的方式 ...
没说完,接着来。 一.过程的实现 2010年最后一个多月基本在捣腾总部报表那块,改动起来挺让人不舒服的。具体表现为报表中全部使用的是视图,另外业务关系没有相关的文档,而且很多视图有问题,甚至有些表已经基本面目全非,或者压根就没有了,所以实在比较闹心。但是总体来说,也就那么回事,改呗!正是利用这段时间,好好地把数据库编程给落实了,并且基本能拿oracle编程实现的东西就能oracle编程实现,还是有些收获的。 过程在游标那块已经有所接触了,那么这里看个静态执行sql语句的过程: create or replace procedure updateRe_SQL(id sys_report ...
还说下函数吧。 1. 创建一个方法变量 <#function avg x y> <#return (x + y) / 2> </#function> ${avg(10, 20)}   该函数的结构就如上所示,<#function ^^^>,其中函数名字叫avg,参数为x y。函数是带返回值的。很简单,没啥必要废话。   2. 用java实现 import java.util.List; import freemarker.template.TemplateMethodModel; import freemarker.templ ...
扩展在任何时候都是必要的,前面讲过在FreeMarker做扩展,用的是宏处理,这里使用java代码做扩展。 Java程序员可以使用TemplateDirectiveModel接口在Java代码中实现自定义指令。 先把上章代码模拟实践下:现在要求在html文件中输出” ...
废话不多说,接着上面来。 5. 程序开发 5.1 创建配置实例 Configuration cfg = new Configuration(); cfg.setDirectoryForTemplateLoading( new File("/where/you/store/templates")); cfg.setObjectWrapper(new DefaultObjectWrapper());  首先,应该创建一个freemarker.template.Configuration实例,然后调整它的设置。Configuration实例是存储 Fre ...
项目中Freemarker有一定的使用量,因此这里将Freemarker的基础知识做下总结: 什么是Freemarker了,FreeMarker是一款模板引擎:一种基于模板的、用来生成输出文本(任何来自于HTML格式的文用本来自动生成源代码)的通用工具。FreeMarker仅仅使用模板生成文本页面来呈现已经准备好的数据。 在FreeMarker学习过程中,发现其语法结构与Python有很大的相似之处,例如序列。 1. 示例   <html> <head> <title>Welcome!</title> </head> ...
  自打毕业之后,基本就与Oracle数据库打交道了。在学校做项目的过程中,用SQL Server比较多,MySQL也做过,Oracle的话应该说是见得比较多的一个数据库。为什么这么说了,因为在中软实习的时候,当时带团队做项目用的就是Oracle数据库,不过当时用的还是9i版本,然后到留服中心实习的时候,测试一直用的数据库也是Oracle,再然后毕业设计的时候用的也是Oracle,毕业后到公司之后用的数据库仍然是Oracle。看来Oracle确实市场比较大,基本我到过的公司用的都是它,由此看出它的强大。尽管毕业前接触过Oracle,但只是用于简单功能实现,因此利用工作的积累外加业余时间的学习, ...
目前有这么个场景:三个继承关系Father,Son,GrandSon三个类,我要再Son类上增强一些功能怎么办?我想项目过程中,如果你是后来者,那么你免不了修改别人的代码。如果初期你对那些代码不知所云,但目前又急需修改功能,难道你真决定在Son类上大动手脚,我想你没那么牛叉,至少我对那些功能点的修改就有点畏首畏尾,毕竟前期代码不是我写,稍微修改,意想不到的错误无法预料。不允许,对了,为什么呢?你增强的功能是修改Son类中的方法吗?增加方法吗 ?对GrandSon的影响哪?如果GrandSon有多个的情况,你怎么办?这个评估的工作量就是够你受的,所以这个是不允许的,那还是要解决问题的呀,怎么 ...
最近在Java编程过程中,考虑到这么个问题: 根据面向对象的继承关系,子类继承父亲的方法。目前有这么个场景:类A是个抽象类,其中有n个方法,类B是类A的子类,类C是类B的子类。假若A中有一个方法operate(),那么B、C均未对operate()方法进行重写,直接继承了A的operate方法实现操作。随着项目的壮大,一定有很多的地方使用到B、C两个类。假若某一天,突然有个需求:需要B对operate()函数进行重写。那么我们敢直接拿B进行开刀吗?答案稳定是否定的!试想下,要是对B进行开刀,那么C咋办?C继承的是B,如果B的方法改变,子类C也将随之进行更改,这样的结果将不符合需求。先用代 ...
1、查找表的所有索引(包括索引名,类型,构成列)   select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = 要查询的表   2、查找表的主键(包括名称,构成列)   select cu.* from user_cons_columns cu, user_constraints au where cu.constraint_name = au.co ...

Ext API

看了一段时间的API文档,也没看出个名堂。因此造成再学习Ext一直没有多大的进展。 配置属性:一般用于配置,填充成Json格式。 公共属性:一般用于通过类调用。                PS.   Ext.MessageBox.YESNOCANCEL 公共方法:一般用于通过类调用。                PS.   Ext.MessageBox.show(Object config) 公共事件:用于重写                PS.   Ext.get("btn").on("click",function(){    ...
总结归纳:110个Oracle 常用函数的总结 /*===================================================================*Author: MartriWang@gmail.com*Date:  09/05/2007*Description:ORACLE Function*==================================================================*/ SQL中的单记录函数1.ASCII返回与指定的字符对应的十进制数;SQL> select ascii(A) A,as ...
Global site tag (gtag.js) - Google Analytics