Um Mundo Java Sem XML

646 views

Published on

Apresentação de Victor Oliveira Nascimento durante o 7Masters - Encontro iMasters de Especialistas em Java - novembro/2012

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
646
On SlideShare
0
From Embeds
0
Number of Embeds
70
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Um Mundo Java Sem XML

  1. 1. Um mundo Java sem XMLVictor Oliveira Nascimento - victor.olinasc27 de Novembro, SP - iMasters
  2. 2. Configurações em Python e Erlang:LGIG={ OGN eso 1 vrin: , ial_xsiglges:Fle dsbeeitn_ogr as, itr { fles: eur_eu_as { rqiedbgfle: ):jnouislgRqieeuFle ( dag.tl.o.eurDbgas } }}[bs,[ {os {ah ".Ciaoos} pt, ./hcgBs", {plctos [acr], apiain, bsoe} {suelcl,"n} asm_oae e"]}]
  3. 3. Configurações em Java:<en xls"tp/wwsrnfaeokogshm/en" bas mn=ht:/w.pigrmwr.r/ceabas xlsxi"tp/www.r/01XLceaisac"xlscnet"tp/wwsrnfaeokogshm mn:s=ht:/w.3og20/MShm-ntne mn:otx=ht:/w.pigrmwr.r/cea xlst=ht:/w.pigrmwr.r/ceat"xlsjb=ht:/w.pigrmwr.r/ceajb mn:x"tp/wwsrnfaeokogshm/x mn:dc"tp/wwsrnfaeokogshm/dc xishmLcto=ht:/w.pigrmwr.r/ceabas s:ceaoain"tp/wwsrnfaeokogshm/en ht:/w.pigrmwr.r/ceabassrn-en-..s tp/wwsrnfaeokogshm/en/pigbas31xd ht:/w.pigrmwr.r/ceacnet tp/wwsrnfaeokogshm/otx ht:/w.pigrmwr.r/ceacnetsrn-otx-..s" tp/wwsrnfaeokogshm/otx/pigcnet31xd> <otx:opnn-cnbs-akg=b.o.oceeouin"/ cnetcmoetsa aepcae"rcmcnrtsltos > <encas"r.pcecmosdc.aiDtSuc" ba ls=ogaah.omn.bpBscaaore dsrymto=coe i=dtSuc" eto-ehd"ls" d"aaore> <rprynm=dieCasae vle"r.2Die"/ poet ae"rvrlsNm" au=ogh.rvr > <rprynm=ul vle"dch:/bntrD; / poet ae"r" au=jb:2~d/auaB" > <rprynm=uenm"vle"a / poet ae"srae au=s" > <rprynm=pswr"vle"a / poet ae"asod au=s" > <ba> /en<bas /en>
  4. 4. Qual o problema?· Python: listas, tuplas, dicionários· Ruby: listas, tuplas, dicionários· Erlang: listas, tuplas, tuplas nomeadas· Lisp: parênteses, parênteses, parênteses· Java: XML??? Properties???
  5. 5. Nenhum problema! Annotations!ipr jvxsrltSrltotxEet mot aa.eve.eveCnetvn;ipr jvxsrltSrltotxLsee; mot aa.eve.eveCnetitnripr jvxsrltantto.eLsee; mot aa.eve.noainWbitnr@eLsee Wbitnrpbi casLgigntaieFle ipeet SrltotxLsee { ulc ls ognIiilzritr mlmns eveCnetitnr @vrie Oerd pbi vi cnetetoe(eveCnetvn ag){ ulc od otxDsrydSrltotxEet r0 } @vrie Oerd pbi vi cnetntaie(eveCnetvn ag){ ulc od otxIiilzdSrltotxEet r0 }}
  6. 6. Muita hora nessa calma!· Apenas para configurações inerentes da aplicação· Diferenças entre ambientes devem ser externalizadas para ferramentas que gerenciem os ambientes (Puppet, Juju?)
  7. 7. Algumas vantagens da abordagem· Propriedades type-safe· Habilidade de customizar a incialização dos frameworks· Não depender das capacidades do namespace· Evita conhecer novas semânticas· JavadocAlgumas desvantagens· Configuração compilada (???)
  8. 8. Exemplo: WAR sem XML· Spring 3.1· Jersey 1.15· Apache Shiro (segurança) 1.2.1· Hibernate 4.1Sem nada de:· application-context.xml· web.xml· spring-security.xml· persistence.xml
  9. 9. Aplicação de exemplohttps://github.com/victorolinasc/java-xml-freeAlgumas das principais anotações e classes utilizadas: Nome Framework javax.servlet.annotation.WebListener Servlet 3.0 org.springframework.web.WebApplicationInitializer Spring Framework 3.1 org.springframework.context.annotation.Configuration Spring Framework 3.1
  10. 10. Obrigado :)Contato:· Victor Oliveira Nascimento· victor.olinasc [arroba] gmail [ponto] com· https://github.com/victorolinasc· https://bitbucket.org/cs_victor_nascimento

×