content: import com.aliyun.oss.ClientException;
  import com.aliyun.oss.OSS;
  import com.aliyun.oss.OSSClientBuilder;
  import com.aliyun.oss.OSSException;
  import com.aliyun.oss.model.*;
  
  
  public class BucketVersioningSample {
  
      private static String endpoint = "*** Provide OSS endpoint ***";
      private static String accessKeyId = "*** Provide your AccessKeyId ***";
      private static String accessKeySecret = "*** Provide your AccessKeySecret ***";
      private static String bucketName = "*** Provide bucket name ***";
      private static String objectName = "*** Provide object name ***";
  
      public static void main(String[] args) {
          // Create an OSSClient instance.
          OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
  
          try {
              // Set the versioning state of a bucket
              setBucketVersioning(ossClient);
  
              // Query the versioning state of a bucket
              getBucketVersioning(ossClient);
  
          } catch (OSSException oe) {
              System.out.println("Error Message: " + oe.getErrorMessage());
              System.out.println("Error Code:       " + oe.getErrorCode());
              System.out.println("Request ID:      " + oe.getRequestId());
              System.out.println("Host ID:           " + oe.getHostId());
          } catch (ClientException ce) {
              System.out.println("Error Message: " + ce.getMessage());
          } finally {
              /*
               * Do not forget to shut down the client finally to release all allocated resources.
               */
              ossClient.shutdown();
          }
      }
  
      private static void setBucketVersioning(OSS ossClient) {
          // Set the versioning state of the bucket to Enabled.
          BucketVersioningConfiguration configuration = new BucketVersioningConfiguration();
          configuration.setStatus(BucketVersioningConfiguration.ENABLED);
          SetBucketVersioningRequest request = new SetBucketVersioningRequest(bucketName, configuration);
          ossClient.setBucketVersioning(request);
      }
  
      private static void getBucketVersioning(OSS ossClient) {
          // Query the versioning status of the bucket.
          BucketVersioningConfiguration versionConfiguration = ossClient.getBucketVersioning("<yourBucketName>");
          System.out.println("bucket versioning status: " + versionConfiguration.getStatus());
  
      }
  }
  