The location widget extracted the location through the Locator Service.
Location小部件通过定位器服务提取位置。
Taxi/rental car—Another locator service puts users in touch with nearby taxi and car rental services.
出租车/租车 - 这是另一个定位服务,帮助用户快速找到最近的出租车/租车服务。
Another way is for each component type to use its own instance of service locator, not a singleton.
另外一个方法是每个组件类型使用它自身的服务定位器实例,而不是集合。
This is because the service locator will cache the resource for whichever component USES the overloaded name first.
这是因为服务定位器将缓存不论哪个组件首次使用时所重载的名称的资源。
The client passes in a unique identifier — a resource name — for the resource; the service locator finds the resource and returns it to the client.
客户端为资源传递一个唯一的标识符(资源名),服务定位器找到这个资源并把它返回给客户端。
The most methodical way of doing this is to find one of the service locator lookups in a constructor and push it to the class instantiating it.
做这件事情最有条理的方法是在组件的构造函数中找到执行服务定位器查找的语句,把该语句移到实例化该组件的类中。
Service locator implementations usually include a resource cache to avoid repeated lookups of the same resource.
服务定位器实现通常包括资源缓存,以此来避免对相同资源的重复查找。
When two components use a resource name that is overloaded — that is, a name that is bound to two different resources — a caching service locator returns the same resource to both components.
当两个组件使用一个重载的资源名,也就是说,一个名称绑定到两个不同的资源,缓存服务定位器为两个组件返回相同的资源。
A singleton service locator with a resource cache creates a global cache that cannot properly handle the component-level mappings for an overloaded resource name.
带有资源缓存的集合服务定位器创建全局缓存,通过这种方式不能为重载的资源名正确处理组件级映射。
My third implementation used a service locator with no cache.
我的第三个实现使用没有缓存的服务定位器。
Just as predicted, overloaded resource names and a caching service locator makes the code execute differently; it makes some components get the wrong resources.
正如所预测的那样,重载的资源名和缓存服务定位器使得代码执行有不同的结果,它使某些组件取得错误的资源。
But the service locator should not include a resource cache.
但是服务定位器不应包含资源缓存。
Do not just assume that a caching service locator significantly improves application performance; use performance testing to confirm that it does.
不要只假设缓存服务定位器能显著的提高应用程序的性能,要使用性能测试来证明这一点。
We have seen that an overloaded resource name and the typical service locator implementation, a singleton with a resource cache, do not get along.
我们已经看到了重载资源名和典型服务定位器实现,有资源缓存的集合,但他们之间并没有很好的合作。
Business logic code that USES a service locator avoids becoming cluttered with directory lookup code, and so is easier to understand.
业务逻辑代码使用服务定位器避免目录查找代码变得混乱,因此它很容易理解。
Therefore, J2EE 1.3 applications should not include the resource cache in their service locator implementations.
因此,在J2EE 1.3应用程序中,服务定位器的实现不应该包含资源缓存。
This is simple to apply to an existing application: just change the service locator implementation to disable or remove the cache.
将其应用于现有应用程序很简单:只要改变服务定位器实现去禁止或去除缓存。
Wherever there are singleton lookup in the legacy codebase, a small change is made to lookup the same component via the service locator instead.
凡是在遗留代码集中出现单件查找的地方,稍加修改即可换用服务定位器来查找同样的组件。
OK, so a caching service locator causes errors for overloaded resource names.
好,既然是由于缓存服务定位器导致重载资源名时的错误。
My second implementation used a caching service locator.
我第二个实现使用了缓存服务定位器。
To make this safe, you need to have a mechanism to lock the service locator and make it read only.
为了安全,你需要用一种机制来锁定服务定位器并使之只读。
The first component to move towards the service locator design, and away from its singleton origins, is the one that depends on no other singletons, yet may be depended by other singletons.
迈向服务定位器设计、摆脱单件血统的第一个组件是不依赖于其它单件、但被其它单件依赖的组件。
The remaining alternative is to use a service locator, make it a singleton, but remove the reference cache.
剩下的一个选择是使用服务定位器使用集合的方式,但是要去除引用缓存。
For example, the service locator code that enables a client to access a data source looks like this.
例如,允许客户端访问数据源的服务定位器代码表面上与此相似。
For Cairngorm, we offer a service locator that can be configured in the IoC container.
我们为Cairngorm提供了一个可配置在IoC容器中的服务定位器。
A service locator implementation that includes caching accesses a data source like this.
包含访问数据源缓存的服务定位器实现如下。
My first implementation used no service locator; the beans performed all of the JNDI code themselves. Here are the two toString 's I got.
我的第一个实现没有使用服务定位器,bean本身执行所有的JNDI代码。
Because of the caching service locator, the two beans are now using the same data source.
由于缓存服务定位器的原因,两个bean现在使用相同数据源。
So overloaded resource names mess up a service locator and its cache.
重载资源名使得服务定位器与其缓存之间变得混乱。
A service locator that caches references will cause a J2EE 1.3 (and later) application with an overloaded resource name to work incorrectly.
缓存引用的服务定位器将导致J2EE 1.3(以及以后版本)中有重载资源名的应用程序工作不正常。
应用推荐