HTTP Post envio de parametros array, Json

Alguém sabe com posso fazer isso em JAVA ?
andei lendo alguma coisas sobre Json mais não estou conseguindo entender.


// A query a seguir escolhe 100 mensagens da minha tabela de mensagen para montar o lote 
$sql = "SELECT * FROM sma.mensagens LIMIT 100"; 
$sql = mysql_query($sql); 

// O while a seguir monta o vetor(array) com as 100 mensagens já formatadas para o envio Json 

while($1inha = mysql_fetch_assoc($sql)){

 $senha = "Sua_senha_HTIP_aqui"; 

 $ArrayMsg = array('destino' => $cel,
                              'msg' => $r,
                              'ssid' => $s);
 $mensagem[] = array map(utf8_encode, $ArrayMag);


// Este segundo vetor insere o array dentro de outro array formatado 
$array[] = array('senha' => $senha, 'mensagens' => $mensagem); 


// Aqui usamos a função json_encode para codificar o array para ser enviado na requisição HTTP 
$json = json_encode($array); 

// Aqui enviamos a requisição HTTP utilizando o aplicativo Curl do linux 

$link = 'http://192.168.1.1/receberMúltiplos.php'; 

if(!empty($mensager)){ 

$texto ="/usr/bin/curl -v -H 'Accept: application/json' -H 'Content-Type:application/json' -X POST -d " . $json . ""$link'"; 
$ch = shell_exec($texto); 
 echo $ch."<br>";                              // Aqui imprimimos o resultado da execução da requisição HTTP
                                 
 else { 
echo "Vazio";                                    // Aqui imprimimos vazio caso a mensagem esteja vazia 
}
?>