6
VEŽBE 11 – JSTL JSTL – Java Standard Tag Library Olakšava rad na JSP stranama pri ispisu vrednosti prenetih atributa Nije potrebna provera Null Exception, ispisuje ako ima atributa a ako nema ne ispisuje Neophodno za korišćenje: U okviru WEB-INF/lib direktorijuma dodaju se jar arhive: o jstl.jar o standard.jar U okviru JSP stranice na kojoj se koristi JSTL na vrhu se dodaje: <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> Način upotrebe: Za prosleđen jedan prost atribut na primer msg na JSP strani njegova vrednost se ispisuje na sledeći način: Bez JSTL <% String msg = (String) request.getAttribute("msg"); if (msg!= null && msg.length() > 0){ %> <%=msg %> <%} %> Sa JSTL ${msg } 1

vezbe 11 - JSTL

Embed Size (px)

DESCRIPTION

java

Citation preview

VEBE 11 JSTLJSTL Java Standard Tag Library Olakava rad na JSP stranama pri ispisu vrednosti prenetih atributa

Nije potrebna provera Null Exception, ispisuje ako ima atributa a ako nema ne ispisuje

Neophodno za korienje:

U okviru WEB-INF/lib direktorijuma dodaju se jar arhive: jstl.jar

standard.jar

U okviru JSP stranice na kojoj se koristi JSTL na vrhu se dodaje:

Nain upotrebe:

Za prosleen jedan prost atribut na primer msg na JSP strani njegova vrednost se ispisuje na sledei nain:

Bez JSTL

0){%>

Sa JSTL

${msg}

Za prosleen jedan sloen atribut na primer osoba (sa atributima: ime, prezime) na JSP strani njihova vrednost se ispisuje na sledei nain:

Bez JSTL

Sa JSTL

${osoba.ime}

${osoba.prezime}

Za prosleen niz (listu) lo sloenih atributa na primer osoba (sa atributima: ime, prezime) na JSP strani njihova vrednost se ispisuje na sledei nain:

Bez JSTL

for (Osoba osoba : lo) {

Sa JSTL

${osoba.ime}

${osoba.prezime}

ZADATAK 1: Kreirati index.jsp sa formom za unos imena osobe koja se prosledjuje na ServletJSTL get metodom.

Verzija 1: U servletu pokupiti prosleeni parametar i ako je OK proslediti ga na stranicu ispis.jsp koja e ga ispisati 10 puta. Ako nije dobro prenet parametar ili je prazan vratiti poruku Greska na index.jsp.

Verzija 2: kreirati bazu jstl.sql sa tabelom osoba (id, ime) i za dobro preneto ime kreirati jednu osobu i pomou DAO metode insert uneti je u kreiranu bazu podataka.

Projekat. IP11.rar ZADATAK 2: Za osobu sa imenom, prezimenom i JMBG realizivati unos osobe u bazu kao i ispis svih osoba iz baze sa opcijama izmeni, obrisi. Probati realizovati sa ili bez JSTL.

Projekat. IP11-2.rar POMO za rad sa mysql bazom preko DAO klase1. u okviru WebContent/META-INF/context.xml fajla mysql connection url string treba da izgleda ovako:

2. struktura DAO klase sa jednom primer metodom izgleda ovako:import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import javax.sql.DataSource;import javax.naming.InitialContext;import javax.naming.NamingException;public class OsobaDAO {

private DataSource ds;

// DEFINICIJA KONEKCIONIH STRINGOVA

private static String SQLSTRING = "UPDATE osoba SET JMBG=12129668911 WHERE ime=?";

// DEFINICIJA KONSTRUKTORA ZA PODESAVNJE KONEKCIJE

public OsobaDAO(){

try {

InitialContext cxt = new InitialContext();

if ( cxt == null ) {

}

ds = (DataSource) cxt.lookup( "java:/comp/env/jdbc/mysql" );

if ( ds == null ) {

}

} catch (NamingException e) {

}

}

// DEFINICIJA METODE ZA UNOS OSOBE U BAZU

public void daoMetoda(String ime){

Connection con = null;

PreparedStatement pstm = null; try {

con = ds.getConnection();

pstm = con.prepareStatement(SQLSTRING); // dopunjavanje SQL stringa

pstm.setString(1, ime);

pstm.execute();

}

catch (SQLException e) {

e.printStackTrace();

}

try {

con.close();

} catch (SQLException e) {

e.printStackTrace();

}

// return (ako metoda vraca nesto) ...

}

// DEFINICIJA OSTALIH METODA ...

}

1