Java QR Code Integration

Generate QR codes in Java and Spring Boot applications using the QR Code API.

Quick Start

Generate a QR code in Java using HttpClient (Java 11+):

Java - Basic Example
import java.net.http.*;
import java.net.URI;

public class QRCodeGenerator {
    private static final String API_URL = "https://www.qrcodeapi.io/api/generate";
    private final String apiKey;
    
    public QRCodeGenerator(String apiKey) {
        this.apiKey = apiKey;
    }
    
    public byte[] generate(String data, int size) throws Exception {
        String json = String.format(
            "{\"data\":\"%s\",\"size\":%d,\"format\":\"png\"}",
            data, size
        );
        
        HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create(API_URL))
            .header("Authorization", "Bearer " + apiKey)
            .header("Content-Type", "application/json")
            .POST(HttpRequest.BodyPublishers.ofString(json))
            .build();
        
        HttpClient client = HttpClient.newHttpClient();
        HttpResponse response = client.send(
            request, HttpResponse.BodyHandlers.ofByteArray()
        );
        
        return response.body();
    }
}

Spring Boot Service

QRCodeService.java
@Service
public class QRCodeService {
    
    @Value("${qr.api.key}")
    private String apiKey;
    
    private final RestTemplate restTemplate;
    
    public QRCodeService(RestTemplateBuilder builder) {
        this.restTemplate = builder.build();
    }
    
    public byte[] generateQRCode(String data, int size) {
        HttpHeaders headers = new HttpHeaders();
        headers.setBearerAuth(apiKey);
        headers.setContentType(MediaType.APPLICATION_JSON);
        
        Map body = Map.of(
            "data", data,
            "size", size,
            "format", "png"
        );
        
        HttpEntity> request = 
            new HttpEntity<>(body, headers);
        
        return restTemplate.postForObject(
            "https://www.qrcodeapi.io/api/generate",
            request, byte[].class
        );
    }
}

Controller Example

QRCodeController.java
@RestController
@RequestMapping("/api/qr")
public class QRCodeController {
    
    @Autowired
    private QRCodeService qrCodeService;
    
    @GetMapping(produces = MediaType.IMAGE_PNG_VALUE)
    public byte[] getQRCode(@RequestParam String url) {
        return qrCodeService.generateQRCode(url, 300);
    }
}

Ready to Integrate with Java?

Get your free API key and start generating QR codes in your Java application.

Get Your Free API Key