The code form of a SCF function developed in Java is generally as follows:
package example;
public class Hello {
public String mainHandler(KeyValueClass kv) {
System.out.println("Hello world!");
System.out.println(String.format("key1 = %s", kv.getKey1()));
System.out.println(String.format("key2 = %s", kv.getKey2()));
return String.format("Hello World");
}
}
Create the parameter KeyValueClass
class:
package example;
public class KeyValueClass {
String key1;
String key2;
public String getKey1() {
return this.key1;
}
public void setKey1(String key1) {
this.key1 = key1;
}
public String getKey2() {
return this.key2;
}
public void setKey2(String key2) {
this.key2 = key2;
}
public KeyValueClass() {
}
}
As Java has the concept of package, its execution method is different from other languages and requires package information. The corresponding execution method in the code example is example.Hello::mainHandler
, where example
is identified as the Java package, Hello
the class, and mainHandler
the class method.
In the sample code, the input parameters used by mainHandler
have two types: String
and Context
, and the return is in String
type. The former type of the input parameters identifies the event input parameter, while the latter the function runtime information. Currently, types supported for event input parameters and function returns include Java base types and POJO type; the function runtime is currently in com.qcloud.scf.runtime.Context
type, and its associated library files can be downloaded here.
byte
, int
, short
, long
, float
, double
, char
, and boolen
) and String
type.Context
, you need to use com.qcloud.scf.runtime.Context;
in the code to import the package and include the jar package when it is packaged.public String mainHandler(String name)
.Note:The event structures of input parameters passed in by certain triggers have been defined and can be used directly. You can get and use the Java libraries through the Cloud Event Definition. If you have any questions during use, you can submit an issue or ticket for assistance.
Was this page helpful?