SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Downloaden Sie, um offline zu lesen
65 Curso de Java
Annotations
(Anotações -
metadados)
• Java 5+
• Java 5+
• Recurso que permite embutir informações complementares
no código fonte
• Java 5+
• Recurso que permite embutir informações complementares
no código fonte
• Informações para o compilador
• Java 5+
• Recurso que permite embutir informações complementares
no código fonte
• Informações para o compilador
• Runtime (tempo de execução)
• Java 5+
• Recurso que permite embutir informações complementares
no código fonte
• Informações para o compilador
• Runtime (tempo de execução)
• Compile ou Deploy-time (tempo de compilação ou deploy
- web)
• Java 5+
• Recurso que permite embutir informações complementares
no código fonte
• Informações para o compilador
• Runtime (tempo de execução)
• Compile ou Deploy-time (tempo de compilação ou deploy
- web)
• Precedida de um arroba (@)
• Java 5+
• Recurso que permite embutir informações complementares
no código fonte
• Informações para o compilador
• Runtime (tempo de execução)
• Compile ou Deploy-time (tempo de compilação ou deploy
- web)
• Precedida de um arroba (@)
• Exemplos: @Override, @Inherited, @Deprecated,
@SupressWarnings
@Override
public String toString() {
return "Contato [nome=" + nome + ", telefone=" + telefone + ", email="
+ email + "]";
}
Criando uma anotação
@interface InfoAula {
String autor() default "Loiane Groner";
int aulaNum();
String blog() default "http://loiane.com";
String site() default "http://loiane.training";
String canalYoutube() default "youtube.com/loianegroner";
}
@InfoAula(
autor = "Loiane Groner",
aulaNum = 65,
blog = "loiane.com"
)
public class UsandoAnnotations {
public static void main(String[] args){
System.out.println("Estamos usando uma anotação criada por nós!");
}
}
Exemplos de projetos reais
https://github.com/loiane/extjs-crud-grid-spring-hibernate
https://github.com/loiane/java-spring4-examples/tree/master/spring4-hibernate4-crud
https://github.com/loiane/javaone-exjts4-jaxrs
https://github.com/loiane/curso-java-basico
Código Fonte:
Não conhece Git/Github?
http://www.loiane.com/2013/11/
screencast-git-e-github-para-iniciantes
http://loiane.training
Fórum para dúvidas + certificado do curso.
Cadastro em:
Obrigada!
http://loiane.com
facebook.com/loianegroner
twitter.com/loiane
https://github.com/loiane
youtube.com/loianegroner
http://loiane.training

Weitere ähnliche Inhalte

Andere mochten auch

[Curso Java Basico - Orientacao a Objetos] Aula 25: Classes e metodos simples
[Curso Java Basico - Orientacao a Objetos] Aula 25: Classes e metodos simples[Curso Java Basico - Orientacao a Objetos] Aula 25: Classes e metodos simples
[Curso Java Basico - Orientacao a Objetos] Aula 25: Classes e metodos simplesLoiane Groner
 
[Curso Java Basico - Exceptions] Aula 51: tipos de erros no Java
[Curso Java Basico - Exceptions] Aula 51: tipos de erros no Java[Curso Java Basico - Exceptions] Aula 51: tipos de erros no Java
[Curso Java Basico - Exceptions] Aula 51: tipos de erros no JavaLoiane Groner
 
[Curso Java Basico] Aula 69: Criando varias Threads + metodos isAlive e join
[Curso Java Basico] Aula 69: Criando varias Threads + metodos isAlive e join[Curso Java Basico] Aula 69: Criando varias Threads + metodos isAlive e join
[Curso Java Basico] Aula 69: Criando varias Threads + metodos isAlive e joinLoiane Groner
 
[Curso Java Basico] Aula 72: Threads: notify, wait e notifyAll
[Curso Java Basico] Aula 72: Threads: notify, wait e notifyAll[Curso Java Basico] Aula 72: Threads: notify, wait e notifyAll
[Curso Java Basico] Aula 72: Threads: notify, wait e notifyAllLoiane Groner
 
[Curso Java Basico] Aula 70: Threads: Definindo prioridades
[Curso Java Basico] Aula 70: Threads: Definindo prioridades[Curso Java Basico] Aula 70: Threads: Definindo prioridades
[Curso Java Basico] Aula 70: Threads: Definindo prioridadesLoiane Groner
 
[Curso Java Basico] Aula 54: Enumeradores como classe (construtor e metodos)
[Curso Java Basico] Aula 54: Enumeradores como classe (construtor e metodos)[Curso Java Basico] Aula 54: Enumeradores como classe (construtor e metodos)
[Curso Java Basico] Aula 54: Enumeradores como classe (construtor e metodos)Loiane Groner
 
[Curso Java Basico] Aula 55: Enum: metodos value e valueOf
[Curso Java Basico] Aula 55: Enum: metodos value e valueOf[Curso Java Basico] Aula 55: Enum: metodos value e valueOf
[Curso Java Basico] Aula 55: Enum: metodos value e valueOfLoiane Groner
 
[Curso Java Basico - Orientacao a Objetos] Aula 34: Variáveis e metodos estat...
[Curso Java Basico - Orientacao a Objetos] Aula 34: Variáveis e metodos estat...[Curso Java Basico - Orientacao a Objetos] Aula 34: Variáveis e metodos estat...
[Curso Java Basico - Orientacao a Objetos] Aula 34: Variáveis e metodos estat...Loiane Groner
 
[Curso Java Basico] Aula 23: Como debugar no Netbeans
[Curso Java Basico] Aula 23: Como debugar no Netbeans[Curso Java Basico] Aula 23: Como debugar no Netbeans
[Curso Java Basico] Aula 23: Como debugar no NetbeansLoiane Groner
 
[Curso Java Basico] Aula 22: Como debugar no Eclipse
[Curso Java Basico] Aula 22: Como debugar no Eclipse[Curso Java Basico] Aula 22: Como debugar no Eclipse
[Curso Java Basico] Aula 22: Como debugar no EclipseLoiane Groner
 
[Curso Java Basico] Aula 59: Importacao estatica (static import)
[Curso Java Basico] Aula 59: Importacao estatica (static import)[Curso Java Basico] Aula 59: Importacao estatica (static import)
[Curso Java Basico] Aula 59: Importacao estatica (static import)Loiane Groner
 
[Curso Java Basico] Aula 74: Threads: deadlocks
[Curso Java Basico] Aula 74: Threads: deadlocks[Curso Java Basico] Aula 74: Threads: deadlocks
[Curso Java Basico] Aula 74: Threads: deadlocksLoiane Groner
 
[Curso Java Basico - Exceptions] Aula 52: criando sua propria exception
[Curso Java Basico - Exceptions] Aula 52: criando sua propria exception[Curso Java Basico - Exceptions] Aula 52: criando sua propria exception
[Curso Java Basico - Exceptions] Aula 52: criando sua propria exceptionLoiane Groner
 
[Curso Java Basico] Aula 57: Wrappers: classes de tipos primitivos
[Curso Java Basico] Aula 57: Wrappers: classes de tipos primitivos[Curso Java Basico] Aula 57: Wrappers: classes de tipos primitivos
[Curso Java Basico] Aula 57: Wrappers: classes de tipos primitivosLoiane Groner
 
[Curso Java Basico - Orientacao a Objetos] Aula 28: Pacotes (packages) e import
[Curso Java Basico - Orientacao a Objetos] Aula 28: Pacotes (packages) e import[Curso Java Basico - Orientacao a Objetos] Aula 28: Pacotes (packages) e import
[Curso Java Basico - Orientacao a Objetos] Aula 28: Pacotes (packages) e importLoiane Groner
 
[Curso Java Basico - Orientacao a Objetos] Aula 40: Heranca e Polimorfismo: s...
[Curso Java Basico - Orientacao a Objetos] Aula 40: Heranca e Polimorfismo: s...[Curso Java Basico - Orientacao a Objetos] Aula 40: Heranca e Polimorfismo: s...
[Curso Java Basico - Orientacao a Objetos] Aula 40: Heranca e Polimorfismo: s...Loiane Groner
 
[Curso Java Basico - Exceptions] Aula 50: stacktrace e throws
[Curso Java Basico - Exceptions] Aula 50: stacktrace e throws[Curso Java Basico - Exceptions] Aula 50: stacktrace e throws
[Curso Java Basico - Exceptions] Aula 50: stacktrace e throwsLoiane Groner
 
[Curso Java Basico - Orientacao a Objetos] Aula 31: Modificadores private e p...
[Curso Java Basico - Orientacao a Objetos] Aula 31: Modificadores private e p...[Curso Java Basico - Orientacao a Objetos] Aula 31: Modificadores private e p...
[Curso Java Basico - Orientacao a Objetos] Aula 31: Modificadores private e p...Loiane Groner
 
[Curso Java Basico] Aula 73: Threads: resume, suspend e stop
[Curso Java Basico] Aula 73: Threads: resume, suspend e stop[Curso Java Basico] Aula 73: Threads: resume, suspend e stop
[Curso Java Basico] Aula 73: Threads: resume, suspend e stopLoiane Groner
 
[Curso Java Basico - Exceptions] Aula 48: multiplos catch
[Curso Java Basico - Exceptions] Aula 48: multiplos catch[Curso Java Basico - Exceptions] Aula 48: multiplos catch
[Curso Java Basico - Exceptions] Aula 48: multiplos catchLoiane Groner
 

Andere mochten auch (20)

[Curso Java Basico - Orientacao a Objetos] Aula 25: Classes e metodos simples
[Curso Java Basico - Orientacao a Objetos] Aula 25: Classes e metodos simples[Curso Java Basico - Orientacao a Objetos] Aula 25: Classes e metodos simples
[Curso Java Basico - Orientacao a Objetos] Aula 25: Classes e metodos simples
 
[Curso Java Basico - Exceptions] Aula 51: tipos de erros no Java
[Curso Java Basico - Exceptions] Aula 51: tipos de erros no Java[Curso Java Basico - Exceptions] Aula 51: tipos de erros no Java
[Curso Java Basico - Exceptions] Aula 51: tipos de erros no Java
 
[Curso Java Basico] Aula 69: Criando varias Threads + metodos isAlive e join
[Curso Java Basico] Aula 69: Criando varias Threads + metodos isAlive e join[Curso Java Basico] Aula 69: Criando varias Threads + metodos isAlive e join
[Curso Java Basico] Aula 69: Criando varias Threads + metodos isAlive e join
 
[Curso Java Basico] Aula 72: Threads: notify, wait e notifyAll
[Curso Java Basico] Aula 72: Threads: notify, wait e notifyAll[Curso Java Basico] Aula 72: Threads: notify, wait e notifyAll
[Curso Java Basico] Aula 72: Threads: notify, wait e notifyAll
 
[Curso Java Basico] Aula 70: Threads: Definindo prioridades
[Curso Java Basico] Aula 70: Threads: Definindo prioridades[Curso Java Basico] Aula 70: Threads: Definindo prioridades
[Curso Java Basico] Aula 70: Threads: Definindo prioridades
 
[Curso Java Basico] Aula 54: Enumeradores como classe (construtor e metodos)
[Curso Java Basico] Aula 54: Enumeradores como classe (construtor e metodos)[Curso Java Basico] Aula 54: Enumeradores como classe (construtor e metodos)
[Curso Java Basico] Aula 54: Enumeradores como classe (construtor e metodos)
 
[Curso Java Basico] Aula 55: Enum: metodos value e valueOf
[Curso Java Basico] Aula 55: Enum: metodos value e valueOf[Curso Java Basico] Aula 55: Enum: metodos value e valueOf
[Curso Java Basico] Aula 55: Enum: metodos value e valueOf
 
[Curso Java Basico - Orientacao a Objetos] Aula 34: Variáveis e metodos estat...
[Curso Java Basico - Orientacao a Objetos] Aula 34: Variáveis e metodos estat...[Curso Java Basico - Orientacao a Objetos] Aula 34: Variáveis e metodos estat...
[Curso Java Basico - Orientacao a Objetos] Aula 34: Variáveis e metodos estat...
 
[Curso Java Basico] Aula 23: Como debugar no Netbeans
[Curso Java Basico] Aula 23: Como debugar no Netbeans[Curso Java Basico] Aula 23: Como debugar no Netbeans
[Curso Java Basico] Aula 23: Como debugar no Netbeans
 
[Curso Java Basico] Aula 22: Como debugar no Eclipse
[Curso Java Basico] Aula 22: Como debugar no Eclipse[Curso Java Basico] Aula 22: Como debugar no Eclipse
[Curso Java Basico] Aula 22: Como debugar no Eclipse
 
[Curso Java Basico] Aula 59: Importacao estatica (static import)
[Curso Java Basico] Aula 59: Importacao estatica (static import)[Curso Java Basico] Aula 59: Importacao estatica (static import)
[Curso Java Basico] Aula 59: Importacao estatica (static import)
 
[Curso Java Basico] Aula 74: Threads: deadlocks
[Curso Java Basico] Aula 74: Threads: deadlocks[Curso Java Basico] Aula 74: Threads: deadlocks
[Curso Java Basico] Aula 74: Threads: deadlocks
 
[Curso Java Basico - Exceptions] Aula 52: criando sua propria exception
[Curso Java Basico - Exceptions] Aula 52: criando sua propria exception[Curso Java Basico - Exceptions] Aula 52: criando sua propria exception
[Curso Java Basico - Exceptions] Aula 52: criando sua propria exception
 
[Curso Java Basico] Aula 57: Wrappers: classes de tipos primitivos
[Curso Java Basico] Aula 57: Wrappers: classes de tipos primitivos[Curso Java Basico] Aula 57: Wrappers: classes de tipos primitivos
[Curso Java Basico] Aula 57: Wrappers: classes de tipos primitivos
 
[Curso Java Basico - Orientacao a Objetos] Aula 28: Pacotes (packages) e import
[Curso Java Basico - Orientacao a Objetos] Aula 28: Pacotes (packages) e import[Curso Java Basico - Orientacao a Objetos] Aula 28: Pacotes (packages) e import
[Curso Java Basico - Orientacao a Objetos] Aula 28: Pacotes (packages) e import
 
[Curso Java Basico - Orientacao a Objetos] Aula 40: Heranca e Polimorfismo: s...
[Curso Java Basico - Orientacao a Objetos] Aula 40: Heranca e Polimorfismo: s...[Curso Java Basico - Orientacao a Objetos] Aula 40: Heranca e Polimorfismo: s...
[Curso Java Basico - Orientacao a Objetos] Aula 40: Heranca e Polimorfismo: s...
 
[Curso Java Basico - Exceptions] Aula 50: stacktrace e throws
[Curso Java Basico - Exceptions] Aula 50: stacktrace e throws[Curso Java Basico - Exceptions] Aula 50: stacktrace e throws
[Curso Java Basico - Exceptions] Aula 50: stacktrace e throws
 
[Curso Java Basico - Orientacao a Objetos] Aula 31: Modificadores private e p...
[Curso Java Basico - Orientacao a Objetos] Aula 31: Modificadores private e p...[Curso Java Basico - Orientacao a Objetos] Aula 31: Modificadores private e p...
[Curso Java Basico - Orientacao a Objetos] Aula 31: Modificadores private e p...
 
[Curso Java Basico] Aula 73: Threads: resume, suspend e stop
[Curso Java Basico] Aula 73: Threads: resume, suspend e stop[Curso Java Basico] Aula 73: Threads: resume, suspend e stop
[Curso Java Basico] Aula 73: Threads: resume, suspend e stop
 
[Curso Java Basico - Exceptions] Aula 48: multiplos catch
[Curso Java Basico - Exceptions] Aula 48: multiplos catch[Curso Java Basico - Exceptions] Aula 48: multiplos catch
[Curso Java Basico - Exceptions] Aula 48: multiplos catch
 

Ähnlich wie Java Annotations - Metadados para melhorar seu código

Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker ComposeScrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker ComposeStefan Teixeira
 
Painel HHVM, Zephir, PHPNG
Painel HHVM, Zephir, PHPNGPainel HHVM, Zephir, PHPNG
Painel HHVM, Zephir, PHPNGiMasters
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHPFelipe Ribeiro
 
Novidades do Universo MySQL Agosto 2014
Novidades do Universo MySQL Agosto 2014Novidades do Universo MySQL Agosto 2014
Novidades do Universo MySQL Agosto 2014MySQL Brasil
 
Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPArlindo Santos
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHPRangel Javier
 
Gestão automática de configuração usando puppet
Gestão automática de configuração usando puppetGestão automática de configuração usando puppet
Gestão automática de configuração usando puppetDaniel Sobral
 
CDI Extensions e DeltaSpike
CDI Extensions e DeltaSpikeCDI Extensions e DeltaSpike
CDI Extensions e DeltaSpikeRafael Benevides
 
Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014MySQL Brasil
 
Swift na linha de comando
Swift na linha de comandoSwift na linha de comando
Swift na linha de comandoTales Andrade
 
Análise estática de código Python
Análise estática de código PythonAnálise estática de código Python
Análise estática de código PythonGuilherme Vierno
 
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCCTDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCCStefan Teixeira
 
TDC2016SP - Trilha Banco de Dados
TDC2016SP - Trilha Banco de DadosTDC2016SP - Trilha Banco de Dados
TDC2016SP - Trilha Banco de Dadostdc-globalcode
 
E-book sobre HTML 5 (Devmedia)
E-book sobre HTML 5 (Devmedia)E-book sobre HTML 5 (Devmedia)
E-book sobre HTML 5 (Devmedia)Devmedia
 

Ähnlich wie Java Annotations - Metadados para melhorar seu código (20)

Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker ComposeScrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
 
Painel HHVM, Zephir, PHPNG
Painel HHVM, Zephir, PHPNGPainel HHVM, Zephir, PHPNG
Painel HHVM, Zephir, PHPNG
 
Zephir
ZephirZephir
Zephir
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHP
 
PHP MySQL Aula 07
PHP MySQL Aula 07PHP MySQL Aula 07
PHP MySQL Aula 07
 
Novidades do Universo MySQL Agosto 2014
Novidades do Universo MySQL Agosto 2014Novidades do Universo MySQL Agosto 2014
Novidades do Universo MySQL Agosto 2014
 
Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHP
 
Java 9, 10 e ... 11
Java 9, 10 e ... 11Java 9, 10 e ... 11
Java 9, 10 e ... 11
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
 
Apache poi
Apache poiApache poi
Apache poi
 
Gestão automática de configuração usando puppet
Gestão automática de configuração usando puppetGestão automática de configuração usando puppet
Gestão automática de configuração usando puppet
 
CDI Extensions e DeltaSpike
CDI Extensions e DeltaSpikeCDI Extensions e DeltaSpike
CDI Extensions e DeltaSpike
 
Cake PHP
Cake PHPCake PHP
Cake PHP
 
Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014
 
Swift na linha de comando
Swift na linha de comandoSwift na linha de comando
Swift na linha de comando
 
Análise estática de código Python
Análise estática de código PythonAnálise estática de código Python
Análise estática de código Python
 
De 0 a DevOps
De 0 a DevOpsDe 0 a DevOps
De 0 a DevOps
 
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCCTDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
 
TDC2016SP - Trilha Banco de Dados
TDC2016SP - Trilha Banco de DadosTDC2016SP - Trilha Banco de Dados
TDC2016SP - Trilha Banco de Dados
 
E-book sobre HTML 5 (Devmedia)
E-book sobre HTML 5 (Devmedia)E-book sobre HTML 5 (Devmedia)
E-book sobre HTML 5 (Devmedia)
 

Java Annotations - Metadados para melhorar seu código