Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: JSP (Java Server Pages) ::: Dicas de Estudo e Anotações ::: JSP + JavaMail

Entenda a classe Transport do pacote javax.mail

Quantidade de visualizações: 6868 vezes
ENTENDA A CLASSE TRANSPORT

A parte final do envio de e-mails usando o JavaMail é conseguida por meio da classe Transport. Esta classe conhece a linguagem específica do protocolo de envio de mensagens (geralmente SMTP). É uma classe abstrata e funciona da mesma forma que a classe Session. Você pode usar a versão padrão da classe simplesmente chamando o método send():

Transport.send(message);

Ou você pode obter uma instância específica a partir do objeto session para o protocolo desejado, fornecer o nome de usuário e senha (podem ser em branco, se necessário), enviar a mensagem e fechar a conexão:
message.saveChanges(); // implícito com send()
Transport transport = session.getTransport("smtp");
transport.connect(host, username, password);
transport.sendMessage(message, message.getAllRecipients());
transport.close();
Esta última forma é usado quando precisamos enviar múltiplas mensagens, uma vez que a conexão com o servidor de e-mails será mantida ativa entre as mensagens. O mecanisco básico de send() cria uma conexão separada com o servidor para cada mensagem enviada.

Link para compartilhar na Internet ou com seus amigos:

C# ::: Dicas & Truques ::: Strings e Caracteres

Como remover espaços em excesso de uma string C# usando expressões regulares

Quantidade de visualizações: 14224 vezes
Nesta dica mostrarei como podemos usar expressões regulares em C# para remover os espaços em excesso de uma frase ou texto. Esta técnica é bem útil quando estamos trabalhando com dados informados pelos usuários de nossas aplicações. Temos sempre que verificar, não somente o excesso de espaços no meio do texto, quanto espaços no início e no fim das strings informadas.

Veja o código completo para o exemplo:

using System;
using System.Text.RegularExpressions;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      // vamos construir o Regex com o padrão que queremos
      Regex regex = new Regex("\\s +", RegexOptions.IgnoreCase | 
        RegexOptions.Compiled);

      // frase com espaços
      string frase = "   Gosto    muito     de    C#    ";

......


Ao executar este código C# nós teremos o seguinte resultado:

Frase com espaços em excesso:
    Gosto    muito     de    C#
......



wxWidgets ::: Dicas & Truques ::: wxApp

Como usar a classe wxApp em suas aplicações C++ wxWidgets

Quantidade de visualizações: 1540 vezes
A classe wxApp (Application Class) é uma das primeiras classes que devemos estudar se quisermos ter um domínio perfeito do framework wxWidgets. Para usá-la, devemos incluir #include <wx/app.h> em nossos códigos. Essa classe herda de wxAppConsole.

Todas as aplicações wxWidgets definem uma classe application derivada de wxApp. Há somente uma instância dela, e essa instância representa a aplicação sendo executada no momento.

De todos os métodos herdados de wxApp, há pelo menos um que devemos implementar, e ele é a função OnInit(), que é chamada quando o wxWidgets está pronto para executar o nosso código. OnInit() equivale ao main() em C/C++ ou WinMain (aplicações Win32).

Veja um trecho de código no qual declaramos e usamos a classe wxApp:

Código para aplicacao.h:

#include <wx/wx.h>

// arquivo de definição

// declaramos a classe application
class MinhaAplicacao : public wxApp{
public:
......


Código para aplicacao.cpp:

#include "aplicacao.h"

// arquivo de implementação

// aqui o wxWidgets implementa nosso objeto MinhaAplicacao
IMPLEMENT_APP(MinhaAplicacao)

bool MinhaAplicacao::OnInit(){
  // vamos mostrar uma mensagem ao iniciar a aplicação
  wxMessageDialog *alerta = new wxMessageDialog(NULL,
......


Veja que no arquivo de declaração (header file) nós temos a macro DECLARE_APP. Ela nos permite declarar a função wxGetApp() que retorna uma referência para o objeto aplicação. Se não fizermos isso, a única forma de obter tal referência é usando o ponteiro global wxTheApp, que é do tipo wxApp*.

A macro IMPLEMENT_APP, no arquivo de implementação, permite ao wxWidgets criar dinamicamente uma instância do objeto application no ponto apropriado da inicialização da biblioteca.

Esse trecho de código é totalmente funcional, mas teremos apenas a exibição de uma mensagem wxMessageDialog. Por essa razão eu retornei false no laço de eventos. Se tivéssemos criado uma janela wxFrame, o retorno deveria ser true, já que teríamos de lidar com eventos.

Para finalizarmos, lembre-se de que o método OnInit() da classe wxApp é o local ideal para se fazer as verificações iniciais da aplicação, tais como conexão com banco de dados, permissão do usuário, disponibilidade da rede, etc.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico

Exercício Resolvido de Java - Um programa Java console ou GUI que receberá a duração de um evento expresso em segundos e exiba-o expresso em horas, minutos e segundos

Quantidade de visualizações: 10731 vezes
Pergunta/Tarefa:

Escreva um programa Java console ou GUI que receberá a duração de um evento expresso em segundos e exiba-o expresso em horas, minutos e segundos. Seu programa deverá exibir uma saída parecida com:

Informe a duração do evento em segundos: 3712
Duração do evento: 01:01:52


Resposta/Solução:

Veja a resolução comentada deste exercício usando Java console (lendo a entrada do usuário por meio do uso da classe Scanner):

public static void main(String[] args){
  // não se esqueça de adicionar um import para a classe Scanner
  // import java.util.Scanner;

  // vamos criar um objeto da classe Scanner
  Scanner entrada = new Scanner(System.in);

  // variáveis que vão guardar a duração em horas, minutos e segundos;
  int horas, minutos, segundos;
  int duracao_segundos; // guardará a duração em segundos

  // vamos solicitar a duração do evento em segundos
  System.out.print("Informe a duração do evento em segundos: ");
......



Java ::: Fundamentos da Linguagem ::: Modificadores

Programação Orientada a Objetos em Java - Como usar o modificador de acesso public da linguagem Java

Quantidade de visualizações: 9622 vezes
O modificador de acesso public é aquele que permite o maior grau de acesso a um recurso Java (um recurso é uma classe, um método ou uma variável).

O único modificador de acesso permitido a uma classe não interna é public. Não é permitido usar outro modificador. Na ausência do modificador public, o acesso à classe será de pacote (package).

Quando usamos este modificador, as classes, métodos e variáveis podem ser acessadas a partir de qualquer outra classe sem qualquer restrição. Além disso, um método public pode ser sobrescrito (sofrer override) por qualquer subclasse da classe que o declara.

O método main() da aplicação é declarado public para que o ambiente de execução Java tenha acesso a ele. Declará-lo de outra forma fará com que a execução da aplicação se torne impossível.

Veja um exemplo de uma classe Java pública, com uma variável de instância pública e um método também público:

package arquivodecodigos;

// uma classe pública
public class Cliente {
  // uma variável pública  
  public int codigo;
  
  // um construtor público
......



C ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar o laço do...while em C - Linguagem C para iniciantes: O laço do...while

Quantidade de visualizações: 31298 vezes
O laço do...while em C é bem parecido com o laço while. A diferença é que no do...while, a condição é testada no final da primeira iteração, o que garante que o laço será executado no mínimo uma vez. Veja um exemplo de seu uso:

 
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int valor = 1;

  do{
    printf("%d  ", valor);
......



Desafios, Exercícios e Algoritmos Resolvidos de C

Veja mais Dicas e truques de C

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 17 usuários muito felizes estudando em nosso site.