Java Bases SQL

Embed Size (px)

Citation preview

  • 7/25/2019 Java Bases SQL

    1/43

    AVA FOR HACK X CRACKQue es Java?

    enguaje de programacin nacido en 11 su padre SUN MICROSYSTEMS,

    presa "a cua" #aido "a promo$ora de es$e desde e" principio de "os $iempos%

    &e'ido a" avance en "as $ecno"og(as de compu$adoras) versa$i"idad en "os sis* di+erencias

    en$re "os mismos &ic#a empresa desarro""a un cdigo ,neu$ra"- e" cua" de correr endi+eren$es $ipos de p"a$a+ormas sin impor$ar "a ma.uina * e" $ipo de s

    .ue maneje)orriendo "as ap"icaciones en una ,ma.uina vir$ua"- JAVA VIRTUAL MACHIN+uncin en

    par$icu"ar de es$a JV/ es conver$ir e" cdigo java a" +orma$o i0o "enguaje code "a ma.uinan$riona #aciendo de es$e un "enguaje apreciado #o* d(a por muc#os program

    gracias au mu"$ip"a$a+orma%

    2n 'reve repasocon$inuacin a"gunas carac$er(s$icas "as cua"es #acen de java marcar "a

    erencia en$remuc#os "enguajes de programacin3

    45/6L5C5&A&3Que sea simp"e no .uiere decir.ue seamenos po$en$e .ue o$ros "enguaje

    deprogramacin no7

    4o"o .ue java posee "as +uncionesde un

    enguaje po$en$e * ro'us$o) e"iminandounciones mu* poco usadas * con+uss a"

    usuario%

    &548R5925&O3n cuan$o a su dis$ri'ucin ap"ica a"

    manejode "i'rer(as .ue es$e incorpora

    8C6056 * pro$oco"os como #$$p * +$paacceder a 'ases de da$os) c#

    *

    +unciones .ue seencuen$ren en

    ordenadores remo$os%

  • 7/25/2019 Java Bases SQL

    2/43

    RO92485C5&A&Lo .ue ""eva a java a ser un "eng

    ro'us$odirec$amen$e es su pro$eccin

    a"programador en cuan$o a even$eserrores de programacin) vericandos

    mismos en $iempo de compi"acin comen$iempo de ejecucin%

    =!28RAL5&A&4u neu$ra"idad se 'asa en "a geacin de

    un cdigo o'je$o e" cua" es inden$e

    de "a ar.ui$ec$ura de cua".uier ma.e"

    c#ero generado por un compi"ador dva

    ac$ua"men$e $iene sopor$e para sis

    4o"aris) Linuindos) /ac) App"e !

    2

    www.hackxcra

    4!@2R5&A&" cdigo Java pasa muc#os tests an$

    es deejecu$arse en una m.uina% !" cdigo

    sepasa a $ravBs de un vericador de'*$eDodes .ue comprue'a e" +orma$o de

    osragmen$os de cdigo * ap"ica un pro'dor

    de $eoremas para de$ec$ar +ragmen$osdedigo i"ega" Dcdigo .ue +a"sea

    pun$eros)vio"a derec#os de acceso so're o'je$os

    on$en$a cam'iar e" $ipo o c"ase de uno'je$oD

    4i "os '*$eDcodes pasan "a vericacinsin

    generar ningEn mensaje de error) en$onesa'emos .ue3

    !" cdigo no producedes'ordamien$o de operandos enpi"as

    !" $ipo de "os parme$ros deodos

    "os cdigos de operacin son

    conocidos * correc$os

    en$eros en pun$eros !" acceso a "os campos de

    o'je$ose sa'e .ue es "ega"3 pu'"i

    iva$e)pro$ec$ed

    =o #a* ningEn in$en$o devio"ar "as

    reg"as de acceso * s

    dad es$a'"ecidas

  • 7/25/2019 Java Bases SQL

    3/43

    R8A95L5&A&por$a'i"idad va desde su poder

    ucin en mE"$ip"es p"a$a+ormas) #as$ai$ar un en$orno desarro""ado idBn$ico

    a $odos "os usuarios en diversa

    .uinas%

    !R6R!8AC5O=ema RunD8ime es e" in$erpre$e de

    argado de "a ejecucin de" cdigo o'je$o

    Enmen$e e" in$erpre$e consume menosursos .ue a" compi"ar e" code por "o .

    o$ros como desarro""adores java

    $endremos ms $iempo para crear) ser

    java un "enguaje in$erpre$ado "o ms

    "en$o .ue o$ros "enguajes de procincompi"ados *a .ue es$e :java;

    serin$erpre$ado * no compi"ado *a

    nocuen$a #as$a a#ora con un cdorpropio para cada p"a$a+orma%

    OR5!=8A&O A O9J!8O44opor$a "os $res paradigmas +undamspara "a orien$acin a o'je$os3!ncapsu"acin) #erencia * po"imorsmo

    =8OR=O4 &! &!4ARROLLO

  • 7/25/2019 Java Bases SQL

    4/43

    =os 2'icamos en e" direc$orio donde es$e se ins$a"a 6or de+ec$o es :C3Arc#ivos de 6maJava; $a" veengas o$ras versiones ins$a"adas se"eccionas "a ms recien$e .ue $engas ins$a"ada "o ro'a'"e es .ueea "a .ue aca'amos de ins$a"ar indos I R 8ipeamos C/& !n$er

    Hacemos una esca"a de direc$orios #as$a ""egar a" &irec$orio Ra( C3\conelcomandoC

    ! www.hackxcrack.es

    uando

    estemos

    en

    c:\ tipeamos javac

    Si

    Nos

    muestra

    algn

    error

    de

    n

    econocerelcomandoesporquenoestbienconfguradonuestropatperosi

    Y #un$ones de

  • 7/25/2019 Java Bases SQL

    5/43

    o se estar&n pre"untandoe' path para (u)*+s e' path nos perm$t$r&er re#eren$a a

    mponentes

    ra nuestro Uso D

    on es$o podemos con p"ena cer$ea compi"ar * !jecu$ar programas !scri$os en JAprimera

    medida compi"emos nues$ro primer programa) A" 5gua" .ue en muc#as ocasiones aremos a"s$re""a$o programando e" popu"ar ,HOLA /2=&O-

    " www.hackxcrack.es

    6RO@RA/A=&O J CO/65LA=&O =2!48RO 6R5/!R 6RO@/A!= JAVA ,HOLA /2=&O-

    Concep$os a $ener en cuen$a an$es de iniciar3Q2! !4 2=A CLA4!?

  • 7/25/2019 Java Bases SQL

    6/43

    2n mB$odo JAVA es un 9"o.ue de cdigo .ue se "e asigna un nom're para ser """uego en cua".uier

    ven$o de" programa%is$o despuBs seguimos con ms concep$osmpeamos a programar en JAVA nada mas 'as$a con a'rir un edi$or de $e

  • 7/25/2019 Java Bases SQL

    7/43

    a" Ve si nunca #as programado en java $e pregun$aras 6or &ios Que es es$e c?

    is$o e

  • 7/25/2019 Java Bases SQL

    8/43

    ouble

    res

    =

    3.5;

    ouble

    numero1;

    &ec"aramos una varia'"e res con va"or de ]% * una varia'"e numero1 sin nina"or $a" ve "aec"aramos para asignar"e a"gEn va"or duran$e "a ejecucin de" programaoa$ varia'"e1)varia'"eM)varia'"e]Soa$ nn NNS

    &ec"aramos inicia"men$e ] varia'"es sin va"or * mas a'ajo una varia'"e nn con va"or

    Varia'"es de $ipo 4i$c# Fa"so o Verdaderooolean

    respuesta1=true;

    ariable

    respuesta1

    equivalente

    a

    true

    verdadero

    os va"ores .ue puede $omar una varia'"e de $ipo 9OOL!A=) son va"ores "gs decir) 8R2!verdadero; o FAL4! :+a"so;

    am'iBn !ncon$ramos o$ros $ipos de da$os primi$ivos como c#ar) "ong) '*$e .ue

    $ra$ados con

    os$eridad por a#ora $ra'ajaremos con es$os $ipos de da$osS &

    &!=85F5CA&OR!43

    2n iden$icador es un nom're .ue o$orgamos a una varia'"e para di+erenciar"a

    de" programa)

    ic#os iden$icadores es$n regidos por a"gunas reg"as e

  • 7/25/2019 Java Bases SQL

    9/43

    [ Ho"a 4o* 2n Comen$ario en Java

    [ &e Varias Lineas &

    [0

    9ien a#ora $eniendo unos cuan$os concep$os 'sicos $iramos e" code3

    u'"ic c"ass suma

    pu'"ic s$a$ic void main :4$ring W args;V

    n$ num1 MNSin$ numM MNSin$ sumaSsuma num1 I numMS

    4*s$em%ou$%prin$"n:Y!" resu"$ado esYIsuma;SZ

  • 7/25/2019 Java Bases SQL

    10/43

    uma num1InumMS*s$em%ou$%prin$"n:Y!" resu"$ado es3YIsuma;SZ

    =os $opamos .ue #emos usado "a ins$ruccin impor$ con "a .ue%% si si%% amos "a "i'rer(a

    ava%u$i"%4canner para poder recuperar en nues$ras varia'"es "os da$os digi$ados en "a a %&/edian$e num1 reader%ne

  • 7/25/2019 Java Bases SQL

    11/43

    pu'"ic s$a$ic void main:4$ring ArgsW;in$ edaddejuan) edaddecar"os) edaddemigue"S

    4canner reader ne 4canner:4*s$em%in;S4*s$em%ou$%prin$ :Y&igi$e "a edad de juanY;S

    edaddejuan reader%ne= 18) {

    System.out.println("CARLS !#$# #%&RAR A LA $'SC A # &'#%#"*edaddecarlos)+

    {

    System.out.println("CARLS % !#$# #%&RAR A LA $'SC A # &'#%#"*edaddecarlos)+

    edaddecar"os es ma*or o igua" : ` ; a 1P escri'a CARLO4 62!&! !=8RAR A LA

    no es as(3 CARLO4 =O 62!&! !=8RAR A LA &54CO" verdad?

    11 www.hackxcrack.es

    /A@!= &!L !J!RC5C5O A=8!R5OR

  • 7/25/2019 Java Bases SQL

    12/43

    =48R2CC5O=!4 &! R!6!85C5O= ,C5CLO FOR-

    2n 6oco mas de 8eoria%% es 'ueno por .ue muc#os ,6rogramadores- so"o con" nom're de "as

    unciones) no se muc#as veces usan ins$rucciones en un "enguaje por ,inercia- 'ue%% s%%

    " 9uc"e FOR es una es$ruc$ura de con$ro" disponi'"e en casi $odos "os "engue programacin%%

    O+reciBndo"e a" programador "a posi'i"idad de denir cuan$as veces desea generar de$eraccin

    in$a

  • 7/25/2019 Java Bases SQL

    13/43

    omo vemos pedimos e" numero de "a $a'"a .ue deseamos ver * median$e e" ,+or- iniciamos "a

    aria'"e ,varia'"e1- en un va"or de ,1- e incremen$ndo"a #as$a .ue sea menor a "uego mos$ramos "a

    a"ida por pan$a""a con un mensaje en e" cua" $am'iBn ""eva "a operacin de mu"$%

    =48R2CC5b= &! R!6!85C5O= C5CLO ,>H5L!- /ien$as Q2!

    s$a es o$ra ins$ruccin poderosa a" momen$o de repe$ir '"o.ues de cdigo) su +uncia cen$rada enjecu$ar '"o.ues de cdigo mien$ras una ins$ruccin sea verdadera%

    in$a#i"e :Condicin;V

    5ns$rucciones%%

    Z

    a"e !jemp"o%%%Hacer 2n programa .ue pida e" nEmero de no$as a $ra'ajar * "as promedie%

    [6RO/!&5O &! =O8A4285L5A=&O C5CLO >H5L! != JAVA YRecuerda 4o* 2n Comen$ario &Y0mpor$ java%u$i"%4cannerS

    13 www.hackxcrack.es

    u'"ic c"ass promediodeno$as

    u'"ic s$a$ic void main :4$ring ArgsW;&ec"aracion de Varia'"esn$ nnSn$ $ope 1Soa$ nSoa$ no$as NScanner readerne 4canner:4*s$em%in;S

  • 7/25/2019 Java Bases SQL

    14/43

    nreader%ne

  • 7/25/2019 Java Bases SQL

    15/43

  • 7/25/2019 Java Bases SQL

    16/43

    =e

  • 7/25/2019 Java Bases SQL

    17/43

    a .ue $enemos e" +ormu"ario "is$o so"o $enemos .ue arras$rar con$ro"es de "a pa"e$a on$ro"es .ue sencuen$ra a "a derec#a%

    Hagamos un primer ejercicio 'sico arras$ramos ] j$e

  • 7/25/2019 Java Bases SQL

    18/43

    856O4 &! /!=4AJ!4 CO= JO685O=6A=!

    " code siempre ser e" mismo "o Enico .ue muc#as veces de'emos mos$rar di+eren$es de mensajesjemp"os3

    /ensaje de !rror

    JOp$ion6ane%s#o/essage&ia"og:$#is) Y%38!X8O /!=4AJ!33%Y) Y8582L5/O=4AJ!Y) JOp$ion6ane%!RROR/!44A@!;S

    /ensaje de 6regun$a

    JOp$ion6ane%s#o/essage&ia"og:$#is) Y%38!X8O /!=4AJ!33%Y) Y8582L5 /O=4AJ!Y)JOp$ion6ane%Q2!485O=/!44A@!;S

    /ensaje de Adver$encia

    JOp$ion6ane%s#o/essage&ia"og:$#is) Y%38!X8O /!=4AJ!33%Y) Y8582L5/O=4AJ!Y) JOp$ion6ane%CA=C!LO685O=;S

    s$os son a"gunos ejemp"os) so"o es co"ocarOp$ion6ane%s#o/essage&ia"og:$#is) Y%38!X8O /!=4AJ!33%Y) Y8582L5 /O=4AJ!Y) JOp$ion6ane% J sa"drn

    "aspciones para e" manejo de mensajes *a sea de in+ormacin o de so"ici$ud de da$os mu* con

    es%

    1$ www.hackxcrack.es

    !J!RC5C5O4 6RO62!48O4 6ARA 6RAC85CAR F2=C5O=!4 &! AL@2=O4 CO/=8!4

    CO/6O=!=8! A !482&5AR JRA&5O9288O=Los Radio9u$$ons son componen$es para se"eccin de opciones un ejemp"o3

    &igi$amos "os M nEmeros * escogemos sum

    igi$amos "os

    M nEmeros * escogemos

    mos * as( sucesivamen$e H;

  • 7/25/2019 Java Bases SQL

    19/43

    Accin 6er$inen$e en

    umar) res$ar) mu"$ip"icar o dividir

    =o$a3 Cada JRadio9u$$on ""eva consigo pues$o e" nom're e.uiva"en$e a su +5niciamos3

    &o'"e c"ic a" 9o$n ca"cu"ar3

    4$ring n1)nMS

    i+ :sumar%is4e"ec$ed:;; 00a.ui es donde vericamos&ou'"e numero1)numeroM)resu"$adoS

    n1 j8e

  • 7/25/2019 Java Bases SQL

    20/43

    " uso #a'i$ua" de un Jcom'o'o< o "is$as desp"ega'"es es de se"eccionar un ($em * sere una accin o

    muc#as veces $am'iBn #as podido dar$e cuen$a en "os $(picos +ormu"arios de ren cua".uier e'

    uando vas a se"eccionar e" pa(s "e das c"ic a "a "is$a desp"ega'"e ,com'o'o

  • 7/25/2019 Java Bases SQL

    21/43

    $e

  • 7/25/2019 Java Bases SQL

    22/43

    JOp$ion6ane%s#o/essage&ia"og:$#is) Y%339ienvenido a "a Ap"icaciYAcceso Correc$oY)

    JOp$ion6ane%5=FOR/A85O=/!44A@!;S00vericamos si es$os e.uiva"en a nues$ro "ogin user Adminis$ra$or * pass 1M]

    1Nmipro*ec$odeejemp"o%principa" principa" ne mipro*ec$odeeje

    rincipa":;Sprincipa"%s#o?:;S

    00&e ser cier$o /os$ramos e" +ormu"ario principa"se$Visi'"e:+a"se;S

    00* ocu"$amos e" "oginZ e"se V

    00 de ser erroneo nues$ros da$os digi$ados mos$ramos un error de accesoJOp$ion6ane%s#o/essage&ia"og:$#is) Y2suario o Con$rasea 5ncorr

    VericaY) Y!rror deAccesoY) JOp$ion6ane%!RROR/!44A@!;S

    user%se$8e

  • 7/25/2019 Java Bases SQL

    23/43

    Armando e" menu asi%%RCH5VO AC!RCA &!%%

    pcion 1 #acerca de #acG < cracG

    Opcion M

    Opcion ]a"ir

    A" picar en opcion1 a'riremos un +ormu"ario puede ser en '"anco * asi con M)] * $am'ien en e"

    menu acerca de%%"ic derec#o so're e" primer i$em edi$ $e

  • 7/25/2019 Java Bases SQL

    24/43

    A45@=A=&O F2=C5O=!4 A CA&A 58!/

    2'i.uemos Opcion 1 de" menu arc#ivo * demos c"ic derec#o even$sac$ionac$ion6er

    n es$e caso a'rire un +ormu"ario .ue se "e ""ame opcion1mipro*ec$odeejemp"o%opcion1 varia'"e ne mipro*ec$odeejemp"o%opcion1:;S

    varia'"e%s#o?:;S

    si mismo con "os demas i$emse" i$em sa"ir? Asi me gus$a .ue es$es a$en$o &

    acemos igua" .ue en "os demas pero e" code seria3*s$em%e

  • 7/25/2019 Java Bases SQL

    25/43

    A.u( se"eccionas /a$$e 9order * "uego c"ic en icon se"eccionas e

  • 7/25/2019 Java Bases SQL

    26/43

    2" www.hackxcrack.es

    /on$amos un escenario con J$$e

  • 7/25/2019 Java Bases SQL

    27/43

    26 www.hackxcrack.es

    Vemos como es$an cons$i$uidos "os da$os de "a $a'"a * $am'ien vemos .ue "a ""ave

    ria es e" campo

    den$icacionLAV! 6R5/AR5A3 es "a co"umna .ue represen$ara "os da$os a"macenados en "a $a'"a de'e repe$irse

    jemp"o3 5nser$as$e en iden$icacion3 1M]) en nom're3 jose) en ape""idos3 mende)ocupacion3

    esemp"eado a" 'uscar "a iden$icacion con numero 1M] sa'ras .ue #aces re+erencia amedes .ue esn desocupado

  • 7/25/2019 Java Bases SQL

    28/43

    u'"ic c"ass cone

  • 7/25/2019 Java Bases SQL

    29/43

    Zca$c# :!

  • 7/25/2019 Java Bases SQL

    30/43

    2% www.hackxcrack.es

    Vericamos "a 9ase de da$os%%

    +ec$ivamen$e Los da$os son enviados correc$amen$e a "os campos de "a 9&A.u( #emos $erminado nues$ra primera cone

  • 7/25/2019 Java Bases SQL

    31/43

    30 www.hackxcrack.es

    Creamos "a $a'"a donde guardaremos $odos "os regis$ros

    CREATE TA:LE a'umnos ;d VARCHAR; NOT NULL,nom.res VARCHAR;?=> NOT NULL,pe''$dos VARCHAR;?=> NOT NULL,

    edad VARCHAR;8=> NOT NULL,d$re$@n VARCHAR;=> NOT NULL,pr$mar4 Be4;$d>

    R!C595/O4%%

    Quer* OK) N ros akec$ed :N%M sec;

    6!RO aun asi%% vericamos .ue "a $a'"a se #a*a creado%% necio *o? 8A9L!4S

    +ables#in#colegio!

    +alumnos !

    +

    OGe* #a* $enemos nues$ra $a'"a creada en "a 'ase de da$os co"egio

    O$ro $ip 4QL de paso miremos como es$ compues$a "a $a'"a%%

    DESCRI:E a'umos

    ++++++$ield !

    %pe !

    &ull

    !

    'e%

    !

    (e)ault

    !

    *xtra

    !++++++id !varchar,0-!&. !/! ! !nombres !varchar20-!&. ! ! ! !apellidos!varchar20-!&. ! ! ! !

    edad !

    varchar10-

    !

    &. ! ! ! !direccion

    !

    varchar50-

    !

    &. ! ! ! !++++++

    OGe* #a* $enemos "a descripcin de "a $a'"a .ue #icimos an$eriormen$e)) 'ue)mos e" 4QL

    por a#ora%%

    A'rimos =ues$ro 5&! de =e$9eans * Creamos e" 6ro*ec$o para Rea"iar "as Cones%%

  • 7/25/2019 Java Bases SQL

    32/43

    a es$a par$e de creacion de pro*ec$os "a e

  • 7/25/2019 Java Bases SQL

    33/43

    is$o en$onces en e" pa.ue$e c"ase si\ guardaremos $odo "os .ue son

    es * en e" pa.ue$e

    pro*ec$ocone

  • 7/25/2019 Java Bases SQL

    34/43

    u'"ic void conec$ar9ase&e&a$os:;

    r* V

    na" 4$ring CO=8ROLA&OR Yorg%gj$%mm%m*s."%&riverYSA" igua" .ue en e" ejemp"o an$erior &ec"aramos .ue driver vamoa a u$i"iar

    "ass%+or=ame: CO=8ROLA&OR ;S

    one

  • 7/25/2019 Java Bases SQL

    35/43

    uego nos vamos a 9i'"io$ecas * aadimos nues$ro driver

    C"ic derec#o en e" pa.ue$e 'i'"io$ecas aadir 9i'"io$eca

    ncaso de =o $ener e" &river 5ns$a"ado no ser(a nada raro _& pues "o desmos

    #$$p300dev%m*s."%com0ge$0&on"oads0Connec$orDJ0m*s."Dconnec$orDjavaD%1%1]%$ar%g

    o descargamos o'vio .ue *a no ser(a c"ic derec#o so're 9i'"io$ecas aadir 'ecasA#ora seria c"ic derec#o so're 'i'"io$ecas Aadir arc#ivo JAR0Carpe$a

    9uscamos La carpe$a m*s."Dconnec$orDjavaD%1%1] * aadimos e" arc#ivo JAR

    A#ora agregamos !" +ormu"ario e" cua" $endr "as +unciones as @uardar)"iminar)9uscar)/odicar * cua".uier o$ra .ue se nos ocurra

  • 7/25/2019 Java Bases SQL

    36/43

    a J8e

  • 7/25/2019 Java Bases SQL

    37/43

    O&5@O &! LA CLA4! @2AR&AR

    acGage c"asesS

    mpor$ java

  • 7/25/2019 Java Bases SQL

    38/43

    acGage c"asesSmpor$ java

  • 7/25/2019 Java Bases SQL

    39/43

    pu'"ic void 'uscara"umno:4$ring 'uscarid;

    $r*'d%conec$ar9ase&e&a$os:;S

    'd%resu"$ado H 'd%sen$encia%e

  • 7/25/2019 Java Bases SQL

    40/43

    pro*ec$ocone

  • 7/25/2019 Java Bases SQL

    41/43

    4!@25/O4 CO= LA4 F2=C5O=!4 &! LO4 9O8O=!4

    9O8O= @2AR&ARid i%ge$8e

  • 7/25/2019 Java Bases SQL

    42/43

    A.ui $ermina "a cone

  • 7/25/2019 Java Bases SQL

    43/43

    !2 www.hackxcrack.es