自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 资源 (1)
  • 收藏
  • 关注

原创 元元模型(Meta Object Facility)的个人理解

典型的元模型结构可以描述为:信息层,模型层,元模型层和元元模型层.1.信息层(information layer)        信息是由我们希望描述的数据组成,这些数据通常是用户数据,主要职责是描述信息领域中的详细信息.在数据层用元数据进行对这些用户数据的描述.元数据即为关于数据的数据.即对业务数据的一次抽象(通常的表现形式是一些概念性的,抽象的名字,如单据,操作人等).2.模型层(

2012-09-11 15:49:45 13096

原创 从分层模型谈三种耦合

1      分层架构的缘由通常我们在做J2EE项目的技术架构时,通常会考虑一种分层的模型,目前非常流行的分层做法是控制层一般采用struts,springmvc,在业务层采用spring,EJB,在持久层采用hibernate,ibatis,jdbcTemplate等。那么为什么要采用这种模型呢?这是我们需要考虑的问题。其实采用分层模型主要目的是为了解耦,为什么需要解耦?因为我们的项目是

2012-06-21 12:22:05 4124

原创 RCP中showView方法的说明

当我们需要显示一个视图时,一般是通过调用IWorkbenchWindow中的getActivePage().showView方法, 但我们有一个问题,就是一般在透视图中,可能由多个部分构成,那么,这个showView到底是要显示在哪里呢?所以我们需要先解决这个问题.要解决在哪里进行显示,需要在透视图中进行设置,用到的是IFolderLayout中的addPlaceholder方法,示例代码如下

2012-04-05 11:31:36 6441

原创 继续说说cxf调用.net中命令空间的问题

前面提到用cxf对.net进行调用时的命名空间的问题,由于当时时间比较紧,没细致地进行总结,这次对这个命名空间进行一个较为细致的总结一下.有两种类型的命名空间,一是targetNamespace,另外一个是namespace,其实他们都是用来进行名称区分的.targetNamespace一般进行整个wsdl的名称区分,所以一般是在对应的接口中进行声明,比如:@WebService(targ

2012-04-05 10:25:21 3751 1

原创 cxf调用.net中的接口遇到的两个问题

在使用CXF中,由于服务器使用的是.net开发中,由于之前没有调用过,所以按一般的CXF的调用方法进行调用,发现出现了一个问题,报如下的错误:Exception in thread "main" javax.xml.ws.soap.SOAPFaultException:无法识别请求元素,后面是一个xml的片段这个问题的原因是因为.net中采用了命名空间.所以需要在我的接口中将命名空间加

2012-03-27 13:23:50 4291 1

原创 jface中窗口最大化问题

想要在jface中设置窗口最大化,只使用一个shell.setMaximized(true);方法是不够的,还需要加上shell.open();这样一句,这个问题搞得我头痛了很久。在这里记录一下,代码如下:    @Override    protected void configureShell(Shell shell) {        shell.setMaximized(tru

2012-03-15 09:21:30 2804

原创 行为模式之观察者模式注解

观察者模式要求当某一个主题Subject对象的某一个状态发生变化时,能够通知其他的对象,当然因为主题要通知其他对象,则主题本身需要提供注入观察者角色对象的入口,即主题需要有对该主题对象感兴趣的对象的引用,当主题的某个状态发生变化,即某个观察者对象感兴趣的状态发生变化,则主题就可以直接通知观察者对象了。 下面提供一个上面类图的参考代码:抽象主题角色Subject的代码如下:publi

2011-11-09 17:31:11 2584

原创 行为模式之策略模式注解

策略模式是对象的行为模式,对模式的分类中,到底是对象的模式还是类的模式,主要是看对象是对象之间的关系而言的,如果是在运行时期动态地决定到底引用哪一个对象,则这种关系就是对象模式,而如果是在编译阶段就确定了对象之间的关系,则这样的关系在运行期是不能改变的,则这种模式就是类的模式。策略模式是对某种类似的算法的集中封装,然后统一向外提供接口。对于调用者而言只需要确认需要哪种策略,就直接创建(或者获取

2011-11-07 08:21:37 1936

原创 结构模式之桥梁模式注解

在提到桥梁模式之前,需要先提一下适配器模式。适配器模式中可以分为类的适配器模式和对象的适配器模式。类的适配器模式是通过继承实现的,而对象的适配器模式则是通过引用的方式得以实现的。这个对象的适配器模式其实很重要,因为按类的适配器来说,是通过继承方式实现的,但是我们也可以将这种继承关系改成对对象的引用达到同样的功能,而这种将继承关系改为对对象的引用关系就是桥梁模式存在的原因。桥梁模式讲的就是将抽象

2011-11-02 08:13:55 2109

原创 结构模式之享元模式注解

享元模式是指一个对象含有某一种状态,而这种状态一旦被实例化之后就不能再改变了。所以通常这种含有状态的对象内部一定需要有一个用来存储状态值的变量,当对象实例化时就需要传入这个状态,从而将该状态进行确认,并且从此不能再改变。即通常的做法是通过构造方法时传入初始化状态,然后后面只提供一个get方法以给外部获取这个状态的值就可以了,这个在对象内部存储的状态就叫内蕴状态。内蕴状态只能是在实例化时确定,然后就

2011-11-01 08:46:13 1945

原创 结构模式之装饰模式注解

装饰模式主要用于对一个对象A的方法进行持续性地增强的模式。其采用多态的方式,通过一个装饰类含有下一个装饰类的引用进行不断地调用,最终会调用到最原始的那个对象A,从而使原始对象A拥有了许多其根本没有的功能。下图为装饰模式的一个静态UML类图结构:下面给出上面UML结构的代码参考实现。抽象组件Component的代码如下:public interface Component

2011-10-31 08:07:57 2347

原创 结构模式之门面模式注解

门面模式没有具体的UML类图结构,其主要的思想是将已经存在的若干个子系统,或者若干个对象进行整合,以向外部提供统一的接口,这种方式类似于对一些API的封装,其实我们经常在软件开发中都会遇到这种模式,只是我们不会太注意而已。比如现在有个业务功能,我们将其分为5个部分,分别由5个人进行开发,那么这5个人就会单独开发了自己的业务功能。此时我们需要将这5个人的功能进行整合,以向外提供一个统一的调用接口

2011-10-28 13:34:31 1889

原创 结构模式之代理模式注解

代理模式是指原来的系统已经有了一个对象A,类似于像其他模块提供的接口,此时一个新的对象需要调用A的部分功能,但是不需要调用所有功能,或者说此时的A所提供的那些功能不够强大,需要增强。此时就可以由提供A的接口的人再提供一个对象B,由这个对象B一方面向C提供其所需要的接口,另一方面通过对对象A的引用,调用A的部分功能,这个对象B就是所谓的代理对象,B对象当然是可以在调用对象A对应的方法时,进行方法的增

2011-10-21 08:14:37 1928

原创 先休息调整一下

学了这么段时间之后,觉得对单片机有了一定的了解,我知道我现在算是有些入门了,大概能够明白其中的一些运行原理,比如其我们主要是通过其IO口进行控制,而其他的设备如果需要电源,则需要外部提供电源,再由单片机的IO口进行供电。而一些芯片本身的运行则需要使能,而这个使能以及其他的控制也由单片机进行提供。在包括单片机与PC通信以及单片机与其他芯片之间的通信中,通常会有一些个时序的概念在,我们需要查阅相应的芯

2011-10-20 14:00:47 1839

原创 结构模式之合成模式注解

合成模式主要是针对树型结构进行的一种模式的界定,一般只要业务需求中含有树型结构都可以考虑用这种模式。合成模式可以分为安全的合成模式和透明的合成模式。安全的合成模式是指叶子节点不含有增删操作,而只有树枝节点才会有对应的增删节点的操作。安全的合成模式的静态UML类图结构如

2011-10-19 08:10:16 2459

原创 结构模式之适配器模式注解

适配器模式分为两种,一种是类的适配器,另一种是对象的适配器。适配器模式存在的原因是原来的系统中使用了一个接口Target,其要求里面含有若干方法,而新加入的一个类中含有的方法不足,或者需要增强一些新加入的类的方法的功能。此时就不能直接将新加入的类进行调用,而是通过一个适配器类,将

2011-10-18 08:35:53 2048

原创 第十课学习

按键在未按下时,处于一种高电平状态,一般这种情况下,其对IO口的电平一致,则不会产生任何效果,只有在按下状态时,由于与接地的回路贯通,故相当于单片机的IO口直接接地。从原理图上看,之所以要接KeyIn1-KeyIn4外接至按键中,主要原因是为了获取按键的状态,因为我们只能获取单片

2011-10-16 22:08:39 1872

原创 第九课学习

今天学习第九课,其中小宋老师提到的一个水滴下落程序,在开始他把现象演示了一篇之后,我在想要怎么实现了,水滴从小变到大的过程应该怎么实现了,直观的感觉应该是从电流的变化引起亮的程度,可是又一想,一般单片机系统也就是能控制高低电平变化。但不能实现连续的电流变化。后来听小宋老师提到通过

2011-10-16 22:07:41 2218

原创 第八课学习

今天学习了第八课,按小宋老师的意思,确实内容不太多,也比较好理解,当然看得出来,小宋老师非常重视这个中断的内容,我想确实是应该引起相当地重视的。中断有一个特殊寄存器,一共有八位,用于表示不同的中断类型,如果要使用中断,则要对对应的中断类型进行设置为1,才表示程序代码将要对某种

2011-10-14 08:29:19 2023

原创 第七课学习

今天这一课内容挺多,关于前面的硬件设计方面的问题,比如上下拉电阻等这些,勉强能听得懂,不过似乎目前还用不上,因此只有先了解一下,等后面学到相应的内容时,再回过头来学习。后面的在线仿真应该是相当有用的,不过我没有实际操作一遍,主要是因为被前面的内容给影响了一下,因为我学这个单片

2011-10-12 08:16:53 1788

原创 第六课学习二

按计划,今天实现一个计数的功能,即按六个数码管进行计数累加显示,当右边一位值超过9时,则进一位,如此类推。最开始时想采用取余的方式,一看一共有6个数码管,最大可达999999,当到达这个值后清零从新开始计数。用uint16一共能到达65536,因为用这个类型的变量不行,于是试

2011-10-11 08:13:34 717

原创 第六课学习

这一课学得还是较为顺利,基本是前几天的课程延续,没有太大的难处。这里需要注意的是一下显示所有的数码管,是利用一个时间差完成的,从程序上看,其是通过快速的变换数码管的使能得以实现的。但这里仍需要明白,6个数码管都外接的是P0,所以,在显示时,这6个数码管所显示的内容是一样的。不

2011-10-09 08:27:25 542

原创 第五课学习

前面提到晶震的频率时,当时以为是一条指令执行时间就是频率分之一,今天的教程看来却不是,原来频率分之一只是一个时钟周期,用T来表示,而一般情况下的51所指的指令时间是12倍于时钟周期。      TCON与TMOD用来控制定时器运行状态的特殊寄存器,听起来有点蒙没完全明白。看了

2011-09-26 09:44:57 447

原创 第四课学习

变量类型unsigned关键字主要是用于定义一个变量的最左边的第一位是否用于表示符号,这个涉及到字符编码的问题,不太清楚的可以深入研究一下。      关键字typedef意思为类型定义,可以理解为为某一种变量类型定义为其他的别名。      可以直接对寄存器进行0x的赋

2011-09-20 09:37:04 468

原创 第三课学习

EMI,EMC,电池干扰,电池兼容      低频滤波电容,本处采用的是100u发(100微法,能耐16V的电压)的电容,其主要作用有两个,一个是防止瞬间电压波动,二是提供较为平稳的电源,通常在需要提供电源的地方都可以考虑加上这么一个电容。要考虑其耐压值,一般要超过整个电压的

2011-09-15 20:10:51 535

原创 第二课学习

开始学习第二课,课程是点亮LED灯,呵呵,就是如何通过程序如何控制LED灯。不过开始还是要学习一下单片机的一些基础知识,这个无论如何要记住的,我记性不太好,所以也把它记下来。      单片机内部资源的三大指标:      FLASH(程序存储空间)      RAM

2011-09-13 08:36:36 745 1

原创 第一课学习

第一课是讲解如何学习单片机的,教程时间不长,不过讲的都是比较实际的单片机学习的方法,看了之后,觉得他讲得很有道理。以前在大学时,仅仅只看书的话,始终是不明白所以的,而大学时,老师对单片机的讲解,仅仅是按书本上的东西在念,很多东西对学生来说其实是不明白的,再加上没有实际的开发,学了

2011-09-05 20:52:10 609

原创 学习单片机之前要说的话

今天收到了小宋老师的开发板,呵呵,有些激动,打开一看,觉得包装挺精美,从里面器件的包装来看,看得出来小宋老师是用了心的,心下还是比较满意。        我为什么想到要学习单片机呢,这个要从我大学时说起,我大学时,所学的专业是通信工程,很遗憾的是大学四年却并没有认真学习过,呵

2011-09-04 10:05:08 1408

原创 谈谈关于统一通信的问题

统一通信目前在市面上叫得是比较火的,通过搜索,你会发现很多公司都在谈这个话题,也有很多公司都在做。可是如果真要较真起来,就不怎么好说了,有很多公司主要是做项目,在这种情况下,仅谈统一通信就显得很苍白了。那么什么是统一通信呢?就我的理解,其实就是将多种通信手段进行融合,统一,通过一个入口即可实现利用多种通信方式进行通信。其实在市面上就有很多类似这样的成熟的软件,比如大家常用的QQ,就是一个统一通

2009-06-27 09:55:00 1051

原创 谈谈UML中类图之间的关系

我们在用UML建模语言做软件设计的时候,通常会用到UML的类图,而这个类图之间的关系很多时候却给大家带来了不必要的麻烦和疑惑,尤其是对于组合与聚合等这样的关系不太好把握,在这里我谈一下我的理解和应用。UML中将类与类之间的关系细分为这样几种关系,分别是: 关联、聚合/组合、依赖、泛化(继承)。正因为这样的细分,导致我们在使用的时候,显得比较迷茫,并且由于在做UML时,不可避免的与某一种开发语言

2009-05-31 17:26:00 3194 1

原创 PowerDesigner概念模型实体关系说明

在PowerDesigner的概念模型中,实体之间的关系是非常重要的,也决定了从概念模型转化到物理模型时的表现形式,所以有必须深究其中的相关设置。做数据库重要的就是表与表之间的关系,而这个关系是连接所有数据库系统的纽带,所以即使我们不用PD,也应该重视表与表之间的关系。这也是关系型数据库的由来。PD中的表与表之间的关系有四种,分别是one-one(一对一),one-many(一对多),many

2009-03-13 08:56:00 11140 3

原创 PowerDesigner与数据库进行互操作

PD与数据库的操作比较简单,分为两种类型的操作,一是将PDM对应的数据库生成至对应的数据库中,另一种是将已经存在的数据库导出至PD中。下面分别说一下这两个方面的操作(下面的操作都是在PDM中进行的,因为和具体的数据库进行交互,得是具体的数据库才可以)。先说一下从PD中操作数据库的方法:1)首先查看一下Database->Change the Target DBMS,以确定是否是你需要操作的

2009-03-12 16:46:00 2742 1

原创 PowerDesigner使用及建议

PowerDesigner是一款非常优秀的数据库建模工具,熟练的使用该工具进行数据库建模,对软件系统的分析和设计有很大的帮助。PowerDesigner中有几种模型可以创建,不过最常见的是概念模型CDM(Conceptual Data Model)和物理模型PDM(Physical Data Model)。毕竟PowerDesigner在数据库建模方面有很强大的功能。概念模型不针对任何具体

2009-03-12 08:41:00 3560 3

原创 gloox会议和服务发现功能

通过gloox实现会议功能,在XMPP协议中被描述为多人聊天的模式,当然这个不是简单的多人聊天,你可以创建聊天室,并且设置密码,邀请某人进聊天室,将某人踢出聊天室 等,从某种角度来说,会议是多人聊天的一种特殊情况。在这里我主要说一下关于会议的创建和使用(后面我统一将多人聊天称为会议)。在examples目录中有个muc_example.cpp的文件,里面是一个创建多个聊天(会议)的示例,但它是

2009-02-03 11:56:00 5428 5

原创 关于网络通讯编码问题

由于在工作中需要进行网络通讯方面的编程,其中又涉及到服务器端使用的是C++,而客户端有一方使用的是JAVA,我在实际使用中,对这种情况下的编码问题有了较深刻的体会,可以分享一下。通常情况下,我们做网络通信方面时,局限于我们的项目应用规模,比如可能只是应用于C++环境的服务器和客户端,或者只应用于JAVA环境,或者只应用于中文操作系统平台下。所以即使大家能够做这方面的C/S通信,但是有时是没有细

2009-02-02 09:47:00 1867 1

原创 年终杂想

又是一年到头了,回想2008年以来,是最忙碌也是最有收获的一年,这一年中,经历了太多的事,不过整体来说,还是值得回味的。在工作中,从08年的三月份开始带项目做公司的通讯平台,到现在基本完成二期的任务,在这个过程中,收获颇多。从技术层面来说,主要在设计模式和软件的技术架构方面取得了比较大的进步,通过设计模式的学习,使我对程序代码的控制能力以及在设计系统时考虑的实现上有了比较大的进步。在软件的

2009-01-24 10:52:00 961 1

原创 gloox收发文件

今天说一下关于通过gloox收发文件的使用方法。在XMPP协议中收发文件并不是作为XMPP协议标准进行发布的,而是有一个扩展协议,在这个扩展协议里面描述了进行文件收发时的协议要求,当然gloox库里面已经实现了这个扩展协议,也提供了调用API,所以,我们是可以直接用这个gloox开发库进行文件收发的实现的。在这个gloox文章中,很少以直接贴源代码的方式进行说明,主要原因是那样会增加文章的长度

2009-01-24 09:14:00 7922 9

原创 gloox发消息

由于工作忙的原因,竟很久没写下去了,后面得坚持下去。今天主要说一下关于通过gloox如何向远端发消息的实现。Gloox发消息很简单,通过前面的接消息的描述,当需要与远端进行通话时,建立一个MessageSession会话,一旦你拥有这样的一个会话对象了,就可以调用其中的send方法来向远端发送消息了。那么这个MessageSession如何获得呢?通过前面接消息的描述,如果是远端先给你发了

2008-12-29 15:38:00 4997 1

原创 js控制文本内容闪烁

在工作中,因为一个显示问题,做出了一个通过JS来控制文本内容的闪烁,觉得还挺有意思,所以写出来共亨一下,通过理解了其中的道理之后,就仅可以用它来进行文本内容的闪烁,还可以进行其它的闪烁控制,主要是通过定时对DIV中的元素进行操作来实现的。要用到的函数有三个,分别是:setInterVal(),setTimeout(),clearInterVal()。下面分别说一下这三个函数的使用,当然你可以查阅对

2008-12-16 09:20:00 2195

原创 gloox接收消息

通过前面的描述,当和服务器建立了连接之后,就可以和服务器进行通讯了,今天先说一下接收远端发送来的文本消息的方式吧。在接收消息之前,需要明确一件事情,就是一旦你登陆至服务器之后,随时有可能有人人给你发来消息,所以应该考虑的是你需要做一个死循环,不断的监听消息,如果有消息之后,根据消息的不同形式,处理它。当然不用担心,觉得用个死循环很影响效率,实际上做过socket的就明白了,当你调用接收消息的函

2008-12-14 13:16:00 4287 1

gloox文件传输代码

关于gloox的文件传输的参考代码,我去掉了一些业务方面的代码,这些代码只能做参考。

2011-10-11

空空如也

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

TA关注的人

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