first, attendance interface
Second, analysis
1) Synchronize the data first to get the data, how to get the data it.
First step: Create a trigger for the card data
The second step: Create the synchronization log class, all the card information is added to the synchronization log
2) delivery in JSON format after data is obtained from the data source
3) Create a SPRINGMVC maven project,
A, to Alibaba's Druid configuration data source,
B. Create a timer that reads information from the Salesforce log every minute
C. Write data synchronization code in the DAO layer
D, test Three, synchronization diagram:
Iv. Trigger code:
Trigger Attendancesynctrigger on Attendance__c (after insert) {//query type list<recordtype> rtList = [S]
Elect Id, Name, Developername, sobjecttype from RecordType WHERE sobjecttype= ' Attendance__c '];
map<string,string> Recordmap = new map<string,string> ();
for (RecordType r:rtlist) {recordmap.put (r.name,r.id);
} attendance__c order = trigger.new[0]; If it is an insert state, determine if the "Time attendance" if (Trigger.isinsert && recordmap.get (' Time Management '). Equals (order.
Recordtypeid) {if (order! = null) {String Projson = json.serialize (order);
System.debug (' JJJJJJJ: ' +projson);
Create log Synlog__c syn = new Synlog__c (); Syn. Name=string.valueof (order.
Id). subString (0,15);
Assigning data to the log parameter Syn.parameter__c = Projson; Syn.
Objectname__c = ' Attendance__c '; Syn.
Operation__c = ' Insert '; Syn.
Flag__c = ' No '; Insert Syn;
}
}
}
Log class:
v. SPRINGMVC's MAVEN project
1) architecture diagram:
2) pom.xml file
<?xml version= "1.0" encoding= "UTF-8"?> <project xmlns= "http://maven.apache.org/POM/4.0.0" xmlns:xsi= "http ://www.w3.org/2001/XMLSchema-instance "xsi:schemalocation=" http://maven.apache.org/POM/4.0.0/http Maven.apache.org/xsd/maven-4.0.0.xsd "> <modelVersion>4.0.0</modelVersion> <groupid>groupid& lt;/groupid> <artifactId>dzjg</artifactId> <version>1.0-SNAPSHOT</version> <pack
Aging>war</packaging> <properties> <spring.version>4.0.5.RELEASE</spring.version>
<slf4j.version>1.7.5</slf4j.version> <logback.version>1.0.13</logback.version> <fastjson.version>1.1.34</fastjson.version> <cio.version>2.2</cio.version> &L T;clang.version>3.1</clang.version> </properties> <dependencies> <!--+++spring phase Off Configuration-<dependency> ≪groupid>org.springframework</groupid> <artifactId>spring-web</artifactId> <version>${spring.version}</version> </dependency> <dependency> <gr Oupid>org.springframework</groupid> <artifactId>spring-webmvc</artifactId> &L t;version>${spring.version}</version> </dependency> <dependency> <grou Pid>org.springframework</groupid> <artifactId>spring-context</artifactId> < ;version>${spring.version}</version> </dependency> <dependency> <group Id>org.springframework</groupid> <artifactId>spring-core</artifactId> <ver sion>${spring.version}</version> </dependency> <dependency> <GROUPID&G T;org.springframework</groupid> <artifactId>spring-beans</artifactId> <VERSION>${SPRING.VERSION}&L t;/version> </dependency> <dependency> <groupid>org.springframework</g Roupid> <artifactId>spring-aop</artifactId> <version>${spring.version}</ve rsion> </dependency> <dependency> <groupid>org.springframework</group Id> <artifactId>spring-tx</artifactId> <version>${spring.version}</version > </dependency> <dependency> <groupid>org.springframework</groupid>
; <artifactId>spring-jdbc</artifactId> <version>${spring.version}</version> < /dependency> <dependency> <groupId>org.springframework</groupId> < ; artifactiD>spring-context-support</artifactid> <version>${spring.version}</version> </d ependency> <dependency> <groupId>org.springframework</groupId> <a Rtifactid>spring-expression</artifactid> <version>${spring.version}</version> < ;/dependency> <dependency> <groupId>org.quartz-scheduler</groupId> &
Lt;artifactid>quartz</artifactid> <version>2.1.7</version> </dependency>
<!--+++web Container interface--<dependency> <groupId>org.apache.openejb</groupId>
<artifactId>javaee-api</artifactId> <version>5.0-3</version> <scope>provided</scope> </dependency> <dependency> <groupid>java X.servlet</groupid> <artifactId>jstl</artifactId> <version>1.2</version> <scope>provided </scope> </dependency> <dependency> <groupid>javax.servlet.jsp</gro
Upid> <artifactId>jsp-api</artifactId> <version>2.2</version> <scope>provided</scope> </dependency> <dependency> <groupid>t Aglibs</groupid> <artifactId>standard</artifactId> <version>1.1.2</vers Ion> </dependency> <!--database Configuration--<dependency> <groupid>c Om.alibaba</groupid> <artifactId>druid</artifactId> <version>0.2.25</ve Rsion> </dependency> <!--mysql--<dependency> <groupid>m Ysql</gRoupid> <artifactId>mysql-connector-java</artifactId> <version>5.1.38</ver
sion> </dependency> <dependency> <groupId>jstl</groupId>
<artifactId>jstl</artifactId> <version>1.2</version> </dependency> <!--JSON--<dependency> <groupId>com.alibaba</groupId> & Lt;artifactid>fastjson</artifactid> <version>${fastjson.version}</version> </d ependency> <dependency> <groupId>com.google.code.gson</groupId> <a
Rtifactid>gson</artifactid> <version>2.2.4</version> </dependency> <!--+ + + Log configuration + +-<dependency> <groupId>org.slf4j</groupId> & Lt;artifactid>slf4j-aPi</artifactid> <version>${slf4j.version}</version> </dependency> < Dependency> <groupId>org.slf4j</groupId> <artifactid>log4j-over-slf4j</art ifactid> <version>${slf4j.version}</version> </dependency> <dependency
> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId>
<version>${slf4j.version}</version> </dependency> <dependency>
<groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId>
<version>${logback.version}</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactid>slf4j-api</artifacti D> </exclusion> </exclusions> </dependency> <!--Apache Commons common class library-- <dependency> <groupId>org.apache.commons</groupId> <artifactid>commo
Ns-lang3</artifactid> <version>${clang.version}</version> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactid>commons-lang<
;/artifactid> <version>2.6</version> </dependency> <dependency>
<groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>${cio.version}</version> </dependency> <dependency> <grou Pid>ant</groupid> <artifactId>ant</artifactId> <version>1.6.5</versi On> </dependency> <dependency> <groupId>commons-beanutils</groupId> <ARTIFAC Tid>commons-beanutils</artifactid> <version>1.8.3</version> <exclusions>
; <exclusion> <groupId>commons-logging</groupId> <artifactid> ;commons-logging</artifactid> </exclusion> </exclusions> </depend ency> <dependency> <groupId>commons-fileupload</groupId> <artifact
Id>commons-fileupload</artifactid> <version>1.2.2</version> </dependency> <dependency> <groupId>commons-discovery</groupId> <artifactid>comm ons-discovery</artifactid> <version>0.2</version> </dependency> <d EpendeNcy> <groupId>net.sf.jxls</groupId> <artifactId>jxls-core</artifactId>
<version>1.0</version> <exclusions> <exclusion> <artifactId>commons-beanutils</artifactId> <groupid>commons-beanutils</ GroupId