Adapter mode is a very common pattern in software development, and the function of this mode is to enable two incompatible interfaces to work together. Most of the time we are using this pattern consciously or unconsciously. Because two interfaces are not compatible, the task of the adapter is to adapt the data or objects so that the calling interface can use the results produced by the other interface. The
SpringMVC adapter pattern code example, springmvc Adapter
The adapter mode is used here. Due to different Controller types and multiple implementation methods, the calling method is not definite. If you need to call the Controller method directly, you need to write the following form in the Code:
if(mappedHandler.getHandler() instanceof MultiActionController){
in the development of Android, we often use the ListView, GridView, each time the code needs to write their corresponding adapter, write a lot of feeling very irritable, because the basic programming ideas are the same, but each time to repeat to write, So can we abstract them into a generic template, so that you do not have to repeat the same code every time, the direct re-use, this is not better, we will introduce an open source project Base-
Adapter mode is a structural design pattern
Design Intent: Transform the interface of one class into another interface that the customer wants. The adapter mode makes it possible for those classes that would otherwise not work together because of incompatible interfaces to work together.
The pattern, like the name of the adapter, is to enable the old interface
Copy CodeThe code is as follows:
/**
* Adapter Mode
*
* Convert a class's interface into another interface that the customer wants, using classes that are inherently incompatible to work with and can work together
*/
This is the original type.
Class Oldcache
{
Public Function __construct ()
{
echo "Oldcache construct
";
}
Public function Store ($key, $value)
{
echo "Oldcache Store
";
}
Public function Remove ($key)
{
echo "Oldcache remove
";
}
Pu
The principle of this pattern is very simple, please see the example below.
1. Class Diagram
2. Java Implementation CodePackage cn.edu.ynu.sei.defaultAdapter;
/**
* Interface a* This interface has 5 methods, F1~f5
*
* @author 88250
* @version 1.0.0, 2007-8-31
*/
public interface Interfacea
{
public void F1 ();
public void F2 ();
public void F3 ();
public void F4 ();
public void F5 ();
}
Package cn.edu.ynu.sei.defaultAdapter;
/**
* Default Ad
Vs 2008
When the interfaces provided by an existing component (Class Library) are inconsistent with those requested by the current customer system, use the adapter mode to convert the interfaces of existing components to those requested by the customer system.
1. Mode UML diagram2. Application
Currently, we have a set of existing text logging components that provide a set of clientCodeThe requested interface.However, the client code requests a
Serverfirst these two classes have been hit into the jar bag, can not be modified ah ... "Your leader is a little awkward.What This is not the pit father, do I have to change the interface? "You are already in tears.""This is not necessary, in this case you can use the adapter mode, this mode is to solve the problem of incompatibility between the interface appears." ”In fact, the use of the adapter mode is
The following conditions need to be met:
1, compared to the new adapter connection computer interface, must be the same interface with the Huara adapter.
2, look at the adapter's label in the "Output/output" Item after the number, the legend shows 20v-4.5a,20v for this adapter output voltage, the new adapter must be
Basic of ListView-data adapter resolution and listview AdapterData adapter:
Purpose: Fill in complex data (array, linked list, database, set, etc.) on the specified view interface.ArrayAdapter (array adapter): used to bind a single data formatArray Source: can be a set or ArrayArrayAdapter (context, the layout file and data source corresponding to each list item
Explain:Transforms the interface of one class into another interface that the customer wants. Those classes that would otherwise not work together because of incompatible interfaces can work together.Solve the problem:What is needed is, but cannot be used, and cannot be modified in a short time. That is, make a function suitable for different environments.In the development, the system data, behavior are matched, but the interface does not match, you can consider the adapter.It is desirable to r
Here is a "finger-round" example to illustrate the principle of adapter mode and simple application, this example from Java and schema.
1. Class Diagram
2. Java Implementation CodePackage cn.edu.ynu.sei.adapter;
/**
* Sphere Interface *
* @author 88250
* @version 1.0.0, 2007-8-28
*/
public interface BALLF
{
/**
* Calculated surface Area
* @return
*/
Public double CalculateArea ();
/**
* Calculate Volume
* @return
*/
Public double calculat
What is the role of adapter? In fact, it is a bridge between the view interface and the data. We can be seen as an understanding of interface data binding, and the data it manipulates are generally more complex data, such as arrays, lists, databases, collections, etc.The commonly used adapters are:(1) arrayadapter; array as the data source, filled with arrayadapter(2) Simpleadapter; list as a data source, populated with Simpleadapter(3) Simplecursorad
Adapter Mode: Converts the interface of a class into another interface that the customer expects. Adapters allow classes that are incompatible with the original interface to work together.Direct. The following is the class diagram for the object adapter. Because Java does not support multiple inheritance. So this is how the Java adapter is implemented.Combining H
Adapter (Adapter) Details: http://blog.csdn.net/jjwwmlp456/article/details/39893723The Observer (Observer) Details: http://blog.csdn.net/jjwwmlp456/article/details/39967021Adapterview systemadapter is used in AdapterviewAdapter systemBaseadapter realizes the Spinneradapter, ListAdapterIn this form, the adapter mode is used, and here is the interface adapterViewer
The general use of pageadapter need to implement GetCount, Isviewfromobject, Instantiateitem, Destroyitem and other default functions, in fact, you can extract the common code into the parent class./*** Created by Xiaoxuan948 on 2015/10/27.* Desc:* Hint: Set data to adapter first, then bind adapter Setadapter Call Instantiateitem method */Public classabsunitybasepageadapterT>extendsPageradapterImplementsIno
Adapter class Adapter, NULL implementation of an abstract method in an interfaceImportJava.awt.Button;ImportJava.awt.Frame;ImportJava.awt.event.MouseAdapter;ImportJava.awt.event.MouseEvent;ImportJava.awt.event.MouseListener;ImportJava.awt.event.WindowAdapter;ImportJava.awt.event.WindowEvent;ImportJava.awt.event.WindowListener;/ * * Adapter class
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.