Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

使用Spring进行切面(AOP)编程

使用Spring进行切面(AOP)编程

一、 AOP理论AOP为Aspect Oriented Programming的缩写,意为:面向切面编程(也叫面向方面),可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。u 横切性关注点对哪些方法进行拦截,拦截该方法后怎么处理,这些关注就称之为横切面关注点。u Aspect(切面)指横切...
利用Maven搭建Spring开发环境

利用Maven搭建Spring开发环境

一、 概要说明最近几天在测试Spring3.0的AOP功能,在测试功能之前,首先是要搭建出Spring3.0的开发功能。开始去官网下载Spring的相关jar包,但是这些jar包中还是会需要其他的一些jar包,于是又手动的去下载其他的相关jar包。这样也可以搭建出开发环境,但是需要频繁的去下载缺少的jar包,很麻烦。这里,我们可以还有一个更好的办法,采用maven来管理我们的工程,让maven来自动为我们去下载相关版本的jar包,具体的配置如下。二、 下载...
手把手教你写Linux I2C设备驱动

手把手教你写Linux I2C设备驱动

Linux I2C驱动是嵌入式Linux驱动开发人员经常需要编写的一种驱动,因为凡是系统中使用到的I2C设备,几乎都需要编写相应的I2C驱动去配置和控制它,例如 RTC实时时钟芯片、音视频采集芯片、音视频输出芯片、EEROM芯片、AD/DA转换芯片等等。 Linux I2C驱动涉及的知识点还是挺多的,主要分为Linux I2C的总线驱动(I2C BUS Driver)和设备驱动(I2C Clients Driver),本文主要关注如何快速地完成一个具体的...
Linux下读写芯片的I2C寄存器

Linux下读写芯片的I2C寄存器

要想在Linux下读写芯片的I2C寄存器,一般需要在Linux编写一份该芯片的I2C驱动,关于Linux下如何编写I2C驱动,前一篇文章《手把手教你写Linux I2C设备驱动》(见 http://www.linuxidc.com/Linux/2012-01/51289.htm)已经做了初步的介绍,并且留下了两个疑问尚未解决,第一个是如何对Linux提供的I2C操作函数进行进一步封装,实现对芯片寄存器的读写;另一个是如何在用户空间调用该I2C驱动代码。本...
基于C语言的配置文件管理

基于C语言的配置文件管理

软件设计中,经常会遇到一些参数文件的保存和读取,如果不考虑支持在程序外手动修改配置文件的话,就可以设计为以二进制方式来读写文件,这样会非常方便,不用考虑格式,整个结构体对象可以直接写入文件,并且整体读出。但是,如果希望能够在程序外手动修改配置文件,就需要以一种比较直观的方式来组织配置文件了,比如比较常用的有:xml文件,ini文件等等。这些都是一些“重量级”的配置文件管理方法,最近在嵌入式平台上开发软件程序,写了个简单的配置文件管理程序,整理了一下,发在这...
Android自动补全教程

Android自动补全教程

创建一个能自动补全提示的文本输入控件(widget),可以使用AutoCompleteTextView控件。提示从与控件关联的ArrayAdapter提供的字符串集合得到。在这个教程中,你将要创建一个自动提示国家名字的AutoCompleteTextView。启动一个新项目并命名为HelloAutoComplete。创建一个名为list_item.xml的XML文件并把它保存在res/layout/文件夹下。编辑文件像下面这样:[html] <?xm...
Android开发:自动补全与SQLite联合的例子

Android开发:自动补全与SQLite联合的例子

从上一个例子(Android自动补全教程 http://www.linuxidc.com/Linux/2012-01/51326.htm)可以看到自动补全是很简单的,今天再深入一点,ArrayAdapter提供的字符串从数据库中查询,并且使用MultiAutoCompleteTextView控件。此控件和AutoCompleteTextView的最大区别是可以补全多个词,看名字就能知道,呵呵。效果如下,每个词中间用逗号分割。首先布局和上一个例子相同。创建一...
浅谈Android开发的技术层次

浅谈Android开发的技术层次

任何一种移动开发生态系统其技术人员都是呈现金字塔式分布的。也就是我们常说的大部分人都是开发人员,只有少数人是真正意义上的程序员。Android系统也是一样,在庞大的Android开发人员群体中,我认为可以由低到高分为以下四个层次:1)应用层开发使用java语言,基于Android的框架和类库,进行应用层程序的开发。这类开发一般依赖于短期记忆,也就是我们所说的类库王子。这类人员,只要熟悉UI布局设计,熟悉常用的widget,写几个消息回调函数.鼓捣以下网络类...
Android 图形系统加速学习系列

Android 图形系统加速学习系列

Android 系统使用OpenGL的标准接口来支持3D图形功能,包含框架层及本地代码两个主要部分,这里先介绍本地代码部分。 源代码目录为:frameworksaseopengllibs 在这个代码路径下面会编译生成三个库: libEGL , libGLESv1_CM.so , libGLESv2.so ,那么这三个库之间是个什么关系呢? 首先说明一下主要实现的功能: EGL是用来管理绘图表面的(Drawing surfaces),并且提供了如下的机...
Android Home键详解

Android Home键详解

当我们从Home点击ShortCut图标启动一个应用程序后,这个应用程序打开了很多个Activity,假设顺序为A,B,C,然后我们按Home键,再次从桌面用图标启动这个应用程序,我们会发现显示的是刚才的C,而不是A。这里我们普遍的想法是按Home键是让程序退到后台,然后让桌面显示出来。那么我们就来看看Home键到底是怎么回事。在Framework中我们找到源码,我们首先在interceptKeyBeforeDispatching这个方法中找到Home按键...
使用Java代码控制ADF table列进行QBE方式的过滤

使用Java代码控制ADF table列进行QBE方式的过滤

在ADF中,使用af: table的时候,可以非常简单地设置Table是否使用QBE filter fields;如下图,只要选中Filtering就可以。jspx中自动产生如下代码:[html] filterModel="#{bindings.DeptView1Query.queryDescriptor}"运行应用后,所有记录显示如下:类似Oracle form中的操作,在列中输入值,点击回车过滤数据:如果希望在managed bean中使用程序控制QB...
<< 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 >>