logo

Codificador de URL Java

Java URLEncoder é uma classe de utilitário usada para codificar URLs (Uniform Resource Locator). A confiabilidade e a segurança são garantidas usando a codificação de URL. Quando o usuário solicita um determinado site através do método get, os parâmetros do formulário e seus valores são adicionados após o '?' faça login no URL. No entanto, o problema surge quando caracteres especiais são usados ​​nos valores que não são interpretados. Geralmente, o HTML lida com a parte de codificação automaticamente, processando os caracteres especiais e convertendo-os nos caracteres permitidos para um tratamento suave de todas as operações. No entanto, isso não confirma a codificação precisa, portanto, não podemos confiar apenas nos recursos HTML e, portanto, para codificar os URLs explicitamente, usamos a classe URL Encoder de Java.

É importante seguir as regras fornecidas ao codificar uma string:

  1. Os caracteres alfabéticos de 'a' a 'z' ou de 'A' a 'Z' e os dígitos de '0' a '9' permanecem os mesmos.
  2. Os caracteres alfanuméricos e alguns caracteres especiais como '*', '_', '-' e '.' não mude.
  3. Todos os espaços são convertidos em sinais '+'.
  4. O W3C recomenda o uso de 'UTF-8' para fins de codificação. Todos os outros caracteres são codificados por um ou mais bytes usando o esquema de codificação especificado. Eles são convertidos em uma sequência de três caracteres no formato %xy, onde xy representa a representação hexadecimal do caractere de codificação.

Exemplo 1:

Se a solicitação do usuário for tal que o valor do parâmetro contenha caracteres especiais e espaços como

listar métodos java

u@Java ponto T

Se a codificação usada for UTF-8, que é a mais comumente usada, o sinal '@' será convertido em '%40' e os espaços serão convertidos em sinais '+'. A string codificada é semelhante a esta:

u%40Java+T+Ponto

Exemplo 2:

Se a solicitação do usuário for tal que o valor do parâmetro não contenha caracteres especiais e espaços como

c booleano

você@JavaTpoint

A string codificada é semelhante a esta:

u%40JavaTPoint

inserção do mysql em

URL de codificação

Para codificar uma URL, a classe Java URLEncoder fornece o método encode().

URLEncoder.encode()

O método traduz uma string no formato codificado application/x-www-form-url usando um esquema de codificação específico. Obtém os bytes para caracteres inseguros usando o esquema de codificação fornecido.

Sintaxe:

 public static String encode(String s, String enc) throws UnsupportedEncodingException 

Nota: O World Wide Web Consortium recomenda que o esquema de codificação UTF-8 seja usado. Caso contrário, causa várias incompatibilidades.

Parâmetros:

é: A string a ser traduzida.

o que é um monitor

enc: O nome da codificação de caracteres suportada, como 'UTF-8'.

Retorna: Ele retorna a String traduzida.

Lança: UnsupportedEncodingException é lançada quando o esquema de codificação nomeado não é compatível.

UrlEncoder.java

 import java.io.UnsupportedEncodingException; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; public class UrlEncoder { public static void main(String[] args) throws MalformedURLException, UnsupportedEncodingException { String baseUrl = 'https://www.javatpoint.com/'; // String to be encoded as requested by the user String query = ' u@ java T point'; System.out.println(' URL without any encoding : ') ; // creating an object of the URL class URL url = new URL(baseUrl + query) ; System.out.println( url ) ; // using the encode( ) method to encode the URL System.out.println( ' URL after encoding : ' ) ; url = new URL( baseUrl + URLEncoder.encode( query, 'UTF-8' ) ) ; System.out.println( url ) ; } } 

Saída:

 URL without any encoding: https://www.javatpoint.com/ u@ java T point URL after encoding: https://www.javatpoint.com/+u%40+java+T+point