URL do Uniform Resource Locator (Uniform Resource Locator) é o nome e endereço usado pelos clientes www para identificar recursos ao acessar a Internet. Links de hipertexto são mantidos por URLs de localização uniforme de recursos. O formato da URL é:
<MÉTODO>://<NOMEHOST:PORTA>/<PATH>/<ARQUIVO>
Entre eles: Método é o protocolo de transmissão: HOSTNAME é o nome do host da Internet onde o documento e o servidor estão localizados (o endereço do ponto no DNS no sistema de nomes de domínio é o número da porta do serviço (pode ser omitido); nome do caminho e FILE é o nome do arquivo. Por exemplo:
http://www.weixueyuan.net/(http é o nome do protocolo, www.weixueyuan.net é o nome do host)
http://www.weixueyuan.net/view/6079.html (www.weixueyuan.net é o nome do host, view/6079.html é o caminho e o nome do arquivo)
Classe de URL
O pacote Java.net possui uma classe URL, um objeto URL pode representar um recurso de rede. Os programas podem usar objetos URL para implementar endereçamento de Internet, localização de conexões de recursos de rede, acesso direto entre clientes e servidores, etc. O método construtor da classe URL é
URL(Strings)
Entre eles, s aponta para um recurso da rede.
O método para usar objetos URL para acessar recursos online é primeiro criar um objeto URL, conforme mostrado no código a seguir:
URL meuURL; tente { meuURL = novo URL("http://www.weixueyuan.net:80/");}catch(MalformedURLException e){ System.out.println("URL errado:"+url+e ); }
MalformedURLException pode ocorrer devido à criação de um objeto URL. Portanto, o código que cria o objeto URL deve aparecer no bloco de instrução try...catch para que as exceções de erro de URL possam ser detectadas.
Classe URLConnection
Para receber e enviar informações, deve-se utilizar a classe URLConnection. O programa obtém um objeto URLConnection, que equivale a completar uma conexão HTTP com a URL especificada. A seguir está o código para obter o objeto URLConnection.
URL mu = new URL("http://www.sun.com/");//Primeiro crie um objeto URL URLConnection muC = mu.openConnection();//Obtenha o objeto URLConnection
O código acima ilustra que você deve primeiro criar um objeto URL e, em seguida, usar o método openConnection() do objeto URL para obter um objeto URLConnection do sistema. Depois que o programa tiver um objeto URLConnection, ele poderá usar os seguintes métodos fornecidos pela classe URLConnection para obter o objeto de fluxo e implementar uma conexão de rede:
getOutputStream(): Obtenha o objeto de fluxo OutputStream que envia informações para o host remoto;
getInputStream(): Obtém o objeto de fluxo InputStream que obtém informações do host remoto. Com fluxos de entrada e saída conectados à rede, os programas podem se comunicar remotamente;
connect(): Configure a conexão de rede.
Envio e recebimento de informações
Para enviar e receber informações, um objeto de fluxo é obtido e um objeto de fluxo de dados de entrada ou saída é criado a partir do objeto de fluxo. Então, você pode usar o método de streaming para acessar recursos online.
Veja o método readByURL() no programa de exemplo abaixo. Este método ilustra o processo de leitura de conteúdo da web de um URL conhecido. O método usa os parâmetros de URL para criar um objeto URL url e, em seguida, usa o método openConnect() do objeto url para obter o objeto URLConnection tc, usa o método connect() do objeto tc para estabelecer uma conexão de rede e, em seguida, obtém o objeto da classe InputStreamReader na conexão de rede e coloca o objeto em , convertido em objeto BufferedRead dis, alterado para entrada em buffer. Por fim, use o método readLine() do objeto dis para concluir a leitura dos dados de texto da rede.
Assim como o fluxo de dados local, o fluxo de dados deve ser encerrado a tempo após a conclusão do uso dos recursos online. Por exemplo, o código
divulgar();
Feche o fluxo criado pelo código anterior.
[Exemplo] Um aplicativo que lê conteúdo da web usando um método de fluxo de dados. Quando o programa é executado, o URL é lido na caixa de texto.
importar java.net.*;importar java.awt.*;importar java.awt.event.*;importar java.io.*;importar java.javax.swing.*;classe pública Exemplo10_2{ public static void main(String args []){ new downNetFile() }}class DownNetFile estende JFrame implementa ActionListener{ JTextFileld infield = new JTextField(30); JTextarea showArea = new JTextArea(); super("ler arquivo de texto da rede"); this.getContentPane(); p.add(infield);p.add(b); JScrollPane(showArea); b.addActionListener(this); con.add(p,"Norte");con.add(jsp,"Center"); ; } public void actionPerformed(ActionEvent e){ readByURL(infield.getText()); } public void readByURL(String urlName){ try{ URL url = new URL(urlName);//Cria um objeto URL a partir do URL URLConnection tc = url.openConnectin();//Obter o objeto URLConnection tc.connect();//Definir a conexão de rede InptStreamReader in = new InputStreamReader(tc.getInputStream()); BufferedReader dis = new BufferedReader(in);//Usar entrada em buffer String inline; while((inline = dis.readLine())!=null){ showArea.append(inline +”/n”); );//Após a conclusão do uso dos recursos online, o fluxo de dados é fechado em time}catch(MalformedURLException e){ e.printStackTrace() } catch(IOException; e){e.printStacktrace();} /*Acessar recursos online pode gerar MalformedURLException e IOException*/ }}