grep 中文手册

PDF: grep中文手册 ----- http://download.csdn.net/detail/u011130746/7225351

GNU Grep: Print lines matching a pattern

:hap.ddup@gmail.com


grep手册(grep,是一个规则匹配引擎.)

Copyright©1999-2002,2005, 2008-2012 Free Software Foundation, Inc.


遵循GNU自由文档许可条款,用户可以复制,发布,修改该文档内容,1.3版或 最新版由自由软件组织(FSF)发布;没有固定段落,没有封面文字,没有封底文字. “GNU Free Documentation License”部分包含证书副本

1.简介


grep可根据提供的匹配模式列表,查询文件中的匹配行.发现匹配行后,行内容会被标准输出(默认),如果使用了其他参数选项,可产生其他格式的输出。

grep用于匹配文本,它对输入行的长度没有限制,除非受限于可用内存大小,并且它可以匹配行内任意字符。


2.调用grep


grep命令行方法如下:

grepoptions pattern input_file_names


可以不指定或指定多个option选项。如果不采用'-epattern''-ffile',那么pattern就是我们所见的内容。同样的,我们可以不指定或指定多个input_file_names选项。



2.1命令行选项

grep有很多参数:一些源于POSIX,一些是GNU的扩展。长参数名,通常是GNU的扩展,这些参数甚至来源于POSIXPOSIX标准的短文件名,是为了方便进行POSIX移植而设计的。部分参数还提供老版本及特殊情况的兼容。


2.1.1常规程序信息


--help

打印命令行帮助信息,bug报告地址,并退出程序.



-V

--version

打印grep版本号,bug报告中应该包含此版本号。



2.1.2匹配控制


-epattern

--regexp=pattern

可指定多个查询规则,或使用'-'保护匹配规则



-ffile

--file=file

从文件中获取匹配规则,一行表示一个规则,空文件不包含规则,因此不匹配任何内容



-i

-y

--ignore-case

忽略匹配规则和输入文件中的大小写



-v

--invert-match

获取未匹配的行



-w

--word-regexp

获取包含整个词的匹配行,词由字母,数字,下划线组成



-x

--line-regexp

整行匹配



2.1.3常规输出控制


-c

--count

输出文件的匹配行数,而非匹配内容的常规输出.'-v'参数一起使用,可统计未匹配的行数.



--color[=WHEN]

--colour[=WHEN]

颜色值可通过环境变量GREP_COLORS定义,默认是'ms=01;31:mc=01;31:sl=:cx=:fn=35:ln=32:bn=32:se=36',WHEN值可设置为never,always, auto.



-L

--files-without-match

仅输出未匹配的文件名



-l

--files-with-matches

仅输入匹配文件名



-m num

--max-count=num

匹配num行后,停止读取文件.当与'-c''--count'一起使用时,输出的匹配行计数不会大于num,与'-v''--invert-match'一起使用时,会输入num次匹配过程中的未匹配项.



-o

--only-matching

打印行内匹配的内容(非空)



-q

--quite

--silent

不做标准输出.如果发现匹配项,立即退出,即使中间出现错误。



-s

--no-messages

针对不存在或不可读的文件,不输出错误信息



2.1.4输出行前缀控制

前缀输出,通常有文件名,行号,字节偏移,可通过下面参数指定.


-b

--byte-offset

在每行输出内容的前面,打印字符偏移



-H

--with-filename

在匹配内容前,打印文件名,查询多个文件时,这是默认设置.



-h

--no-filename

输出时,不打印文件名,查询单个文件时,这是默认设置



--label=LABEL

使用标签,将标准输入以文件输入的方式表示

gzip-cd foo.gz | grep –label=foo -H something



-n

--line-number

显示匹配行的行号



-T

--initial-tab

tab对齐



-u

--unix-byte-offsets




-Z

--null

文件名后面的一个字符使用一个0字节代替(ASCIINUL字符)



2.1.5上下文控制


-A num

--after-context=num

打印匹配行后的num(num不包含匹配行)



-B num

--before-context=num

打印匹配行前的num(num不包含匹配行)



-Cnum

-num

--context=num

打印匹配行前后各num



--group-separator=string

使用'-A','-B','-C'参数时,使用string代替默认的'--'分割线



--no-group-separator

不使用分割线



2.1.6文件和目录的选择


-a

--text

将二进制文件作为文本文件处理,等效于'—binary-files=text'



--binary-files=type

默认,typebinary,会有二进制文件类型提示,如果未匹配,则无提示。若设定typewithout-match,则不匹配二进制文件,等效于参数'-I'。若设定typetext,则会将二进制作为文本处理,等效于参数'-a',此选项会输出不友好的二进制文件内容。



-Daction

--devices=action

如果输入的文件是一个设备,文件流,或socket,则可设定此选项,决定如何处理。若action设定为skip,则会跳过不处理。默认情况下,会读取命令行下设备,若启用'-R''-r'选项,则会跳过处理。该参数对标准输入的文件无效。



-daction

--directories=action

如果指定的是目录,则可设定action,决定如何处理它。默认actionread,则将目录作为常规文件处理(有些操作系统或文件系统不允许这样做,会导致grep打印每个目录的错误信息,或跳过处理目录)。若action设定为skip,则会跳过目录。若action设为recursegrep会进行递规处理,等效于'-r'选项。



--exclude=glob

跳过匹配glob的文件名,glob可以是'*''?','['...']',可使用\引用通配符或反斜线字符。



--exclude-from=file

可通过文件指定多个glob(类似于指定多个

--exclude=glob)



--exclude-dir=dir

递规处理时,可排除匹配规则的目录



-I

设定二进制文件无匹配项,等效于'—binary-files=without-match'



--include=glob

只处理匹配规则的文件,与--exclude相反,



-r

--recursive

对目录进行递规处理,等效于'—directories=recurse',会跟随命令行下的符号链接,不会跟随递规过程中的符号链接。



-R

--dereference-recursive

递规处理,跟随递规过程中的符号链接。



2.1.7其他选项


--line-buffered

输出行缓冲内容,会引起性能问题



--mmap

此选贤已放弃使用。



-U

--binary

处理二进制方式处理文件。默认,在MS-DOSWindows平台下,grep会根据'—binary-files'选项来判定是文本,还是二进制。如果grep认为文件是文本,则会去掉文件原始内容中的CR字符(以确保^$正常工作)

如果文本文件行以CR/LF结尾,会导致正则表达式匹配失败。此选项仅对MS-DOSWindows生效。



-z

--null-data

将输入内容作为行的合集,每个集合以空字节作为结束(ASCIINUL字符)



2.2环境变量


2.3退出状态


2.4grep议程


grep使用给定的匹配规则,查询输入文件中的匹配行。默认,grep会打印匹配行。如果输入文件为'-',这代表使用标准输入作为输入文件内容。如果未指定输入,且命令参数中有递归选项,那么grep会搜索工作目录'.';否则,grep会搜索标准输入。grep有四种变种,由下面参数控制:


-G

--basic-regexp

默认选项,匹配规则为常规正则表达式(BRE)



-E

--extended-regexp

匹配规则为扩展正则表达式(ERE)



-F

--fixed-strings

将匹配规则视为分行的字符串列表



-P

--perl-regexp

将匹配规则,视为perl正则表达式。这是一个测试功能,对未实现的功能,会给出预警提示。


另外,还有两个程序可用,分别是egrepfgrepegrep等效于'grep-E'fgrep等效于'grep-F'




3.正则表达式


正则表达式是描述字符的规则。正则表达式的构造类似于算数表达式,使用各种运算符,将短的表达式结合在一起。grep可读懂三种正则表达式语法:基本正则表达式(BRE),扩展正则表达式(ERE)perl正则表达式。GNU版本的grep,基本正则表达式与扩展正则表达式,在功能上没什么不同。在其他的地方,基本正则表达式则不像扩展正则表达式那样强劲。接下来描述的是扩展正则表达式,与基本正则表达式的不同之处,会在后面进行说明。perl正则表达式提供了许多额外的功能,请参阅pcresyntax手册文档,这种表达式可能并不适用于每种系统。


3.1基本结构


正则结构块,由匹配单个字符的表达式组成。正则匹配的大多数字符,包括字母,数字。任何拥有特殊意义的原字符,如果想要引用它,在其前面放置一个反斜线进行转义。


.

匹配任意单个字符

?

最多出现一次

*

0次以上

+

1次以上

{n}

n

{n,}

n次或n次以上

{,m}

最多出现m

{n,m}

最少n次,最多m



空的正则表达式,匹配空字符。两个正则表达式可以拼接在一起,结果由匹配各正则表达的结果拼接而成。两个正则表达式间使用'|'操作符。


重复的优先级高于串联操作,反过来又优先于交替。一整个表达式可以用括号括起来,以覆盖这些优先级规则,并形成子表达式。



3.2字符集和括号表达式


为了获得传统的括号表达式,需设定LC_ALLC.


[:alnum:]

[:alpha:][:digit:]的合集,等同于[0-9A-Za-z]

[:alpha:]

[:lower:][:upper:]的合集,等同于[A-Za-z]

[:blank:]

空白字符:空格键和tab

[:cntrl:]

控制字符,字符对应的十进制数000037,还有177(del)

[:digit:]

01 2 3 4 5 6 7 8 9

[:graph:]

可视字符,[:alnum:][:punct:]的合集

[:lower:]

小写字母

[:print:]

可打印字符:[:alnum:],[:punct:],space

[:punct:]

!" # $ % & ’ ( ) * + , - . / : ; < = > ? @ [ \ ] ^_ ‘ { | } ~

[:space:]

空白符

[:upper:]

大小写字母

[:xdigit:]

十六进制数字:0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f



]

括号表达式结束符,如果你想在列表中使用']'字符,请将其放在第一位。

[.

打开排序符号

.]

关闭排序符号

[=

打开等价类

=]

关闭等价类

[:

开启字符类符号

:]

关闭字符类符号

-

如果该字符不在起始或结尾,那么表示范围

^

表示字符不在列表中,如果你想使用这个字符,请勿将其放置在第一位。



3.3反斜线字符和特殊表达式


\b

匹配单词边缘空字符

\B

匹配非单词边缘的空字符

\<


\>


\w


\W


\s


\S




3.4锚位


^$用于匹配字符起始和结束位的空字符。



3.5反向引用和子表达式


反向引用`\n`(n表示一个数字),可指定第n个子表达式匹配的内容。例如:(a)\1会匹配'aa'。交替使用时,如果组并未参与匹配,那么反向引用会导致整个匹配失败。例如:'a(.)|b\1'不会匹配'ba'。使用'-e'可指定多个表达式,或者使用'-ffile'从文件指定。



3.6基本正则与扩展正则对比


在基本正则表达式中,元字符'?','+','{' ,'|', '(',')'失去其原意,通常需要加上反斜线'\?','\+','\{' ,'\|', '\(','\)'.


传统的egrep不支持原字符'{',一些egrep使用'\{'代替。可移植脚本应该避免在'grep-E'模式中使用'{',推荐使用'[{]'匹配'{'.



4.用法


只列出匹配文件名

grep-l 'main' *.c

递归目录搜索

grep-r 'main' /home/gnu

find/home/gnu -name '*.c' -print0 | xargs -0r grep -H 'main'

grep-rH –include='*.c' /home/gnu

搜索'-'起始的选项

grep-e '--cut here--'

如果不指定'-e',那么'-'会被解析为参数

查询整个词(非某词的一部分)

grep-w 'main' *

grep'\<main' *

grep'main\>' *

输出匹配周边的内容

grep-C 2 'main' *

强制打印匹配文件名

grep'root' /etc/passwd /dev/null

grep-H 'root' /etc/passwd

为何使用grep匹配ps输出

有些平台,ps屏幕输出时,会受屏幕宽度的限制。grep对行长度无限制,除非受限于内存。

为何grep会报告“二进制文件匹配”

可使用'-I''—binary-files=without-match'

为何不使用'grep-lv'打印不包含匹配项的文件名

'grep-lv'输出的是包含不匹配项的文件。使用'-L'输出不包含匹配项的文件名

使用'|'可完成'OR'操作,那么如何完成'AND'操作呢

grep'0' /etc/passwd | grep 'root'

为何空的规则会匹配输入文件每一行

不仅限于'^','$','.*',很多规则都会导致匹配每行内容。

想要匹配空行,使用规则'^$'

匹配空白行,可使用规则'^[[:blank:]]*$'

如何同时搜索标准输入和文件

cat/etc/passwd | grep 'root' - /etc/motd

匹配回文结构

grep-w -e '\(.\)\(.\).\2\1' file

grep-E -e ’^(.?)(.?)(.?)(.?)(.?)(.?)(.?)(.?)(.?).?\9\8\7\6\5\4\3\2\1$’file

为何反向引用会失败

echo'ba' | grep -E '(a)\1|b\1'

(a)\1未匹配到内容,例如:'aa',故第二处的'\1'无引用对象

如何跨行匹配

标准的grep是无法做到的,如果grep启用了perl的匹配功能,可使用perl's'开关,它使得'.'可以匹配换行。

printf 'foo\nbar\n' | grep -P '(?s)foo.*bar'

printf'foo\nbar\n' | grep -z -q 'foo[[:space:]]\+bar'

如果这些选项都失败了,那么你需要处理一下,然后再发给grepawksedperl或其他很多工具可处理跨行操作。

grep,fgrep,egrep代表什么意思

global/regularexpression/print

g/re/p

Fixedgrep

Extendedgrep




  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring.NET是一个应用程序框架,其目的是协助开发人员创建企业级的.NET应用程序。它提供了很多方面的功能,比如依赖注入、面向方面编程(AOP)、数据访问抽象及ASP.NET扩展等等。Spring.NET以Java版的Spring框架为基础,将Spring.Java的核心概念与思想移植到了.NET平台上。 第一章 序言 第二章 简介 2.1.概述 2.2.背景 2.3.模块 2.4.许可证信息 2.5.支持 第三章 背景 3.1.控制反转 第一部分 核心技术 第四章 对象、对象工厂和应用程序上下文 4.1.简介 4.2.IObjectFactory,IApplicationContext和IObjectDefinition接口介绍 4.2.1.The IObjectFactory和IApplicationContext 4.2.2.对象定义 4.2.3.对象的创建 4.2.3.1.通过构造器创建对象 4.2.3.2.通过静态工厂方法创建对象 4.2.3.3.通过实例工厂方法创建对象 4.2.4.泛型类的对象创建 4.2.4.1.通过构造器创建泛型类的对象 4.2.4.2.通过静态工厂方法创建泛型类的对象 4.2.4.3.通过实例工厂方法创建泛型类的对象 4.2.5.对象标识符(id和name) 4.2.6.Singleton和Prototype 4.3.属性,协作对象,自动装配和依赖检查 4.3.1.设置对象的属性和协作对象 4.3.2.构造器参数解析 4.3.2.1.根据参数类型匹配构造器参数 4.3.2.2.根据参数索引匹配构造器参数 4.3.2.3.根据名称匹配构造器参数 4.3.3.详细讨论对象属性和构造器参数 4.3.3.1.设置空值 4.3.3.2.设置集合值 4.3.3.3.设置泛型集合的值 4.3.3.4.设置索引器属性 4.3.3.5.内联对象定义 4.3.3.6.idref节点 4.3.3.7.引用协作对象 4.3.3.8.value和ref节点的简短格式 4.3.3.9.复合属性名 4.3.4.方法注入 4.3.4.1.查询方法注入 4.3.4.2.替换任意方法 4.3.5.引用其他对象或类型的成员 4.3.5.1.使用对象或类的属性值进行注入 4.3.5.2.使用字段值进行注入 4.3.5.3.使用方法的返回值进行注入 4.3.6.IFactoryObject接口的其它实现 4.3.6.1.Log4Net 4.3.7.使用depends-on 4.3.8.自动装配协作对象 4.3.9.检查依赖项 4.4.类型转换 4.4.1.枚举类型的转换 4.4.2.内置的类型转换器 4.4.3.自定义类型转换器 4.4.3.1.使用CustomConverterConfigurer类 4.5.自定义对象的行为 4.5.生命周期接口 4.5.1.1.IInitializingObject接口和init-method属性 4.5.1.2.IDisposable接口和destroy-method属性 4.5.2.让对象了解自己的容器 4.5.2.1.IObjectFactoryAware接口 4.5.2.2.IObjectNameAware接口 4.5.3.IFactoryObject接口 4.6.抽象与子对象定义 4.7.与IObjectFactory接口交互 4.7.1.获得IFactoryObject对象本身,而非其产品 4.8.使用IObjectPostProcessor接口自定义对象 4.9.使用IObjectFactoryPostProcessor定制对象工厂 4.9.1.PropertyPlaceholderConfigurer类 4.9.1.1.使用环境变量进行替换 4.9.2.PropertyOverrideConfigurer类 4.10.使用alias节点为对象添加别名 4.11.IApplicationContext简介 4.12.配置应用程序上下文 4.12.1.注册自定义解析器 4.12.2.创建自定义资源处理器 4.12.3.配置类型别名 4.12.4.注册类型转换器 4.13.IApplicationContext接口的扩展功能 4.13.1.上下文继承 4.13.2.使用IMessageSource接口 4.13.3.在Spring.NET内部使用资源 4.13.4.松耦合事件模型 4.13.5.IApplicationContext的事件通知 4.14.定制IApplicationContex中对象的行为 4.14.1.IApplicationContextAware标识接口 4.14.2.IObjectPostProcessor接口 4.14.3.IObjectFactoryPostProcessor接口 4.14.4.PropertyPlaceholderConfigurer类 4.15.从其它文件中导入对象定义 4.16.服务定位器访问 第五章. IObjectWrapper接口和类型转换 5.1.简介 5.2.使用IObjectWrapper接口管理对象 5.2.1.读、写普通及嵌套的属性 5.2.2.其它功能 5.3.类型转换 5.3.1.转换枚举类型 5.4.内置类型转换器 第六章. IResource接口 6.1.简介 6.2.IResource接口 6.3.内置的IResource实现类 6.4.IResourceLoader接口 6.5.IResourceLoaderAware接口 6.6.应用程序上下文和IResource路径 第七章. 多线程和并发操作 7.1.简介 7.2.线程本地存储 7.3.同步基础 7.3.1.ISync 7.3.2.SyncHolder 7.3.3.Latch 7.3.4.Semaphore 第八章. 对象池 8.1.简介 8.2.接口和实现 第九章. Spring.NET杂记 9.1.简介 9.2.PathMatcher 9.2.1.通用规则 9.2.2.匹配文件名 9.2.3.匹配子目录 9.2.4.大小写需要考虑,斜线可以任意 第十章. 表达式求值 10.1.简介 10.2.表达式求值 10.3.语言参考 10.3.1.文字表达式 10.3.2.属性,数组,列表,字典,索引器 10.3.2.1.定义内联的数组、列表和词典 10.3.3.方法 10.3.4.操作符 10.3.4.1.关系操作符 10.3.4.2.逻辑操作符 10.3.4.3.算术运算符 10.3.5.赋值 10.3.6.表达式列表 10.3.7.类型 10.3.8.类型注册 10.3.9.构造器 10.3.10.变量 10.3.10.1.'#this'和'#root'变量 10.3.11.三元操作符(If-Then-Else) 10.3.12.列表的投影(Projection)和选择(Selection) 10.3.13. 集合处理器和聚合器 10.3.13.1.Count聚合器 10.3.13.2.Sum聚合器 10.3.13.3.Average聚合器 10.3.13.4.Minimum聚合器 10.3.13.5.Maximum聚合器 10.3.13.6.nonNull处理器 10.3.13.7.distinct处理器 10.3.13.8.sort处理器 10.3.14.引用容器中的对象 10.3.15.Lambda表达式 10.3.16.空目标 10.4.本章使用的示例类型 第十一章. 验证框架 11.1.简介 11.2.用法示例 11.3.验证对象组 11.4.验证对象 11.4.1.条件验证对象 11.4.2.必需性验证对象 11.4.3.正则表达式验证对象 11.4.4.通用验证对象 11.4.5.条件型验证 11.5.验证行为 11.5.1.错误消息行为 11.5.2.通用行为 11.6.引用验证对象 11.7.在ASP.NET中的使用技巧 11.7.1.显示验证错误 11.7.1.1.配置错误显示类 第十二章. 使用Spring.NET进行面向方面的编程 12.1.简介 12.1.1.AOP基本概念 12.1.2.Spring.NET AOP的功能 12.1.3.Spring.NET的AOP代理 12.2.Spring.NET中的切入点 12.2.1.概念 12.2.2.切入点的操作 12.2.3.Spring.NET提供的切入点实现类 12.2.3.1.静态切入点 12.2.3.2.动态切入点 12.2.4.自定义切入点 12.3.Spring.NET的通知类型 12.3.1.通知的生命周期 12.3.2.通知类型 12.3.2.1.拦截环绕通知 12.3.2.2.前置通知 12.3.2.3.异常通知 12.3.2.4.后置通知 12.3.2.5.引入通知 12.4.Spring.NET中的Advisor 12.5.使用ProxyFactoryObject创建AOP代理 12.5.1.基本原理 12.5.2.ProxyFactoryObject的属性 12.5.3.代理接口 12.5.4.代理一个类 12.6.使用ProxyFactory类以编程方式创建AOP代理 12.7.管理目标对象 12.8.使用“自动代理”功能 12.8.1.自动代理对象的定义 12.8.1.1.ObjectNameAutoProxyCreator 12.8.1.2.DefaultAdvisorAutoProxyCreator 12.8.1.3.AbstractAutoProxyCreator 12.8.2.使用特性驱动的自动代理 12.9.使用TargetSources 12.9.1.动态切换TargetSource 12.9.2.池化TargetSource 12.9.3.PrototypeTargetSource 12.10.定义新的通知类型 12.11.参考资源 第十三章.通用日志抽象层 13.1.简介 13.1.1.Logging API 13.2.实现与配置 13.2.1.控制台Logger 13.3.Log4Net 第二部分. 中间层数据访问 第十四章. 事务管理 14.1.简介 14.2.动机 14.3.核心接口 14.4.用事务进行资源同步 14.4.1.高层次方法 14.4.2.低层次方法 14.5.声明式事务管理 14.5.1.理解Spring.NET声明式事务管理的实现 14.5.2.第一个例子 14.5.3.Transaction特性的设置 14.5.4.通过AutoProxyCreator使用声明式事务 14.5.5.通过TransactionProxyFactoryObject使用声明式事务 14.5.6. 通过ProxyFactoryObject使用声明式事务 14.5.7. Using Abstract object definitions 14.5.8. Declarative Transactions using ProxyFactoryObject 14.6. 编程方式的事务管理 14.6.1.使用TransactionTemplate 14.6.2.使用IPlatformTransactionManager 14.7.选择编程方式还是声明方式 第十五章. 数据访问对象 15.1.简介 15.2.统一的异常体系 15.3.为数据访问对象提供的统一抽象基类 第十六章. DbProvider 16.1.简介 16.1.1.IDbProvider和DbProviderFactory 16.1.2. XML配置 16.1.3.管理连接字符串 第十七章. 使用ADO.NET进行数据访问 17.1.简介 17.2.动机 17.3.Provider抽象 17.3.1.创建IDbProvider类型的实例 17.4.命名空间 17.5.数据访问的方式 17.6.AdoTemplate简介 17.6.1.执行回调 17.6.2.在.NET 2.0中执行回调 17.6.3. .NET 1.1 17.6.4.AdoTemplate方法指南 17.7.异常翻译 17.8.参数管理 17.8.1. IDbParametersBuilder 17.8.2. IDbParameters 17.9. Mapping DBNull values 17.10. Basic data access operations 17.10.1. ExecuteNonQuery 17.10.2. ExecuteScalar 17.11. Queries and Lightweight Object Mapping 17.11.1. ResultSetExtractor 17.11.2. RowCallback 17.11.3. RowMapper 17.11.4. Query for a single object 17.11.5. Query using a CommandCreator 17.12. DataTable and DataSet 17.12.1. DataTables 17.12.2. DataSets 17.13. Deriving Stored Procedure Parameters 17.14. Database operations as Objects 17.14.1. AdoNonQuery 17.14.2. AdoQuery 17.14.3. MappingAdoQuery 17.14.4. Stored Procedure 17.14.5. DataSetOperation 18. ORM集成 18.1. 简介 第三部分. Web框架 第十九章. Web框架 19.1.简介 19.2.自动装载应用程序上下文和应用程序上下文嵌套 19.2.1. 配置 19.2.2.上下文嵌套 19.3.为ASP.NET页面进行依赖注入 19.3.1.为Web控件进行依赖注入 19.4.Master Page 19.4.1.将子页面与Master Page关联 19.5.双向数据绑定 19.5.1.数据绑定的后台实现 19.5.1.1.绑定方向 19.5.1.2.Formatters 19.5.1.3.类型转换 19.5.1.4.数据绑定事件 19.6.本地化 19.6.1.使用Localizer进行自动本地化(“推”模型) 19.6.2.使用Localizer 19.6.3.手动应用资源(“拉”模型的本地化) 19.6.4.在Web应用程序中进行图像本地化 19.6.5.全局资源 19.6.6.用户语言文化管理 19.6.6.1. DefaultWebCultureResolver 19.6.6.2. RequestCultureResolver 19.6.6.3. SessionCultureResolver 19.6.6.4. CookieCultureResolver 19.6.7.更改语言文化 19.7.结果映射 19.8.客户端脚本 19.8.1.在HTML的head节点内注册客户端脚本 19.8.2.向节点中添加CSS定义 19.8.3.全局目录(Well-Known Directories) 第四部分. 服务 第二十章. .NET Remoting 20.1.简介 20.2.在服务端发布SAO 20.2.1.SAO Singleton 20.2.2.SAO SingleCall 20.2.3.IIS应用程序配置 20.3.在客户端访问SAO 20.4.CAO 最佳实践 20.5.在服务端注册CAO 20.5.1.向CAO对象应用AOP通知 20.6.在客户端访问CAO 20.6.1.向客户端的CAO对象应用AOP通知 20.7. XML Schema for configuration 20.8.参考资源 第二十一章. .NET企业服务 21.1.简介 21.2.服务组件 21.3.服务端 21.4.客户端 第二十二章. Web服务 22.1.服务端 22.1.1.消除对.asmx文件的依赖 22.1.2.向web服务中注入依赖项 22.1.3.将PONO发布为web服务 22.1.4.将AOP代理发布为web服务 22.1.5.客户端的问题 22.2.客户端 22.2.1.WebServiceProxyFactory 22.2.2.WebServiceClientFactory 第二十三章. Windows后台服务 23.1.备注 23.2.简介 23.3.Spring.Services.WindowsService.Process.exe应用程序 23.3.1.安装 23.3.2.配置 23.4.将应用程序上下文发布为Windows服务 23.4.1.service.config 23.4.1.1.让应用程序了解自身的位置 23.4.2.watcher.xml - 可选的配置 23.4.3.bin目录 - 可选 23.5.自定义或扩展 23.5.1. .config文件 第五部分. 与Visual Studio.NET集成 第二十四章. 与Visual Studio.NET集成 24.1.XML编辑与验证 24.2.XML Schema的版本 24.3.集成API文档 第六部分. 快速入门程序 第二十五章. IoC快速入门 25.1.简介 25.2.Movie Finder 25.2.1.开始建立MovieFinder应用程序 25.2.2.第一个对象定义 25.2.3.属性注入 25.2.4.构造器参数注入 25.2.5.总结 25.2.6.日志 25.3.应用程序上下文和IMessageSource接口 25.3.1.简介 25.4.应用程序上下文和IEventRegistry接口 25.4.1.简介 25.5.对象池示例 25.5.1.实现Spring.Pool.IPoolableObjectFactory 25.5.2.使用池中的对象 25.5.3.利用executor执行并行的grep 25.6.AOP 第二十六章. AOP指南 26.1.简介 26.2.基础知识 26.2.1.应用通知 26.2.2.使用切入点-基本概念 26.3.深入探讨 26.3.1.其它类型的通知 26.3.1.1.前置通知 26.3.1.2.后置通知 26.3.1.3.异常通知 26.3.1.4.引入(mixins) 26.3.1.5.通知链 26.3.1.6.配置通知 26.3.2.使用特性定义切入点 26.4.The Spring.NET AOP Cookbook 26.4.1.缓存 26.4.2.性能监视 26.4.3.重试规则 Spring.NET AOP最佳实践 第二十七章. .NET Remoting快速入门 27.1.简介 27.2.Remoting实例程序 27.3.实现 27.4.运行程序 27.5.Remoting Schema 27.6.参考资源 第二十八章. Web框架快速入门 28.1.简介 第二十九章. SpringAir - 参考程序 29.1.简介 29.2.架构 29.3.实现 29.3.1.业务层 29.3.2.服务层 29.3.3.Web层 29.4.总结 第三十章. 数据访问快速入门 30.1.简介 第三十一章. 事务管理快速入门 31.1.简介 31.2.应用程序概述 31.2.1.接口 第七部分. Java开发人员必读 第三十二章. Java开发人员必读 32.1.简介 32.2.Beans和Objects 32.3.PropertyEditor和TypeConverter 32.4.ResourceBundle和ResourceManager 32.5.异常 32.6.应用程序配置 32.7.AOP框架

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值