Programmable Media

Java quick start

Last updated: Oct-07-2024

This quick start lets you get an end-to-end implementation up and running using the Java SDK in 5 minutes or less.

1. Set up and configure the library

Using a clean Java project using Maven, add the cloudinary and dotenv dependencies to the list of dependencies in pom.xml:

pom.xml
<dependency>
    <groupId>com.cloudinary</groupId>
    <artifactId>cloudinary-http5</artifactId>
    <version>2.0.0</version>
</dependency>
<dependency>
    <groupId>com.cloudinary</groupId>
    <artifactId>cloudinary-taglib</artifactId>
    <version>2.0.0</version>
</dependency>
<dependency>
    <groupId>io.github.cdimascio</groupId>
    <artifactId>dotenv-java</artifactId>
    <version>2.2.4</version>
</dependency>

Note
We recommend updating the version number to use the latest version of the Java SDK.

Then, in your project, create a file called .env and add the following line with your Cloudinary environment variable (replace cloudinary://<API_KEY>:<API_SECRET>@<CLOUD_NAME> below with your own environment variable value):

.env
// Copy and paste your API environment variable

CLOUDINARY_URL=cloudinary://<API_KEY>:<API_SECRET>@<CLOUD_NAME>

Important
When writing your own applications, follow your organization's policy on storing secrets and don't expose your API secret.

In your code, include the following Cloudinary libraries as well as the dotenv library in your project. Copy and paste the following code into your Main.java file:

Main.java
Java
// Import the required packages

import com.cloudinary.*;
import com.cloudinary.utils.ObjectUtils;
import io.github.cdimascio.dotenv.Dotenv;

import java.util.Map;

You can now load your Cloudinary credentials from your .env file as shown below. Copy and paste the following code into your Main class:

Main.java (continued)
Java
// Set your Cloudinary credentials

Dotenv dotenv = Dotenv.load();
Cloudinary cloudinary = new Cloudinary(dotenv.get("CLOUDINARY_URL"));
System.out.println(cloudinary.config.cloudName);

2. Upload an image

Copy and paste the following code into a try block within your Main class:

Main.java (continued)
Java

// Upload the image
Map params1 = ObjectUtils.asMap(
    "use_filename", true,
    "unique_filename", false,
    "overwrite", true
);

System.out.println(
        cloudinary.uploader().upload("https://cloudinary-devs.github.io/cld-docs-assets/assets/images/coffee_cup.jpg", params1));

3. Get details of the image

Main.java (continued)
Java
// Get the asset details
Map params2 = ObjectUtils.asMap(
        "quality_analysis", true
);

System.out.println(
        cloudinary.api().resource("coffee_cup", params2));

4. Transform the uploaded image

Main.java (continued)
Java

// Create the image tag with the transformed image and log it to the console
System.out.println(
        cloudinary.url().transformation(new Transformation()
        .crop("pad")
        .width(300)
        .height(400)
        .background("auto:predominant"))
        .imageTag("coffee_cup"));

// The code above generates an HTML image tag similar to the following:
//  <img src='https://res.cloudinary.com/demo/image/upload/b_auto:predominant,c_pad,h_400,w_300/coffee_cup' height='400' width='300'/>

5. Run your code

Run your code by clicking the Run button on the main class.

You can use the returned image tag to display the image on your website. For now, copy and paste the URL to see the transformed image in the browser:

Transformed coffee_cup image

View the completed code

You can find the full code example for this on GitHub.

Next steps

  • Learn more about the Java SDK by visiting the other pages in this SDK guide.
  • Get comprehensive details about Cloudinary features and capabilities:

✔️ Feedback sent!