














Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Appunti informatica 5 superiore
Tipologia: Appunti
1 / 22
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!















Base dati normalizzata = ben scritta = non presenta ridondanze Verificare se ci sono delle ridondanze DIPENDENZA FUNZIONALE : Data una relazione R, due insiemi di attributi(=campi) V e W si dice che VW ,cioè W dipende funzionalmente da V se e solo se per ogni coppa di tuple t1 t2; t1[V]=t2[V]t1[W]=T2[W] …. Data una tabella e 2 insieme di campi all’interno della stessa tabella, un campo dipende funzionalmente dall’altro se x ogni coppia di record dentro quella tabella t1, t2 se è vero che i 2 record hanno lo stesso valore per il campo V vuol dire che hanno lo stesso valore nel campo W T1 record; V campo Es: tab persona (nome, cognome, codice fiscale, indirizzo, provincia, nome provincia, sigla provincia), Mario, Rossi, R SSMR… via Roma 4, Cuneo, Cuneo (=W), CN(=V) per ogni coppia di record della tabella delle persone CN= V, tutte le volte che il valore della sigla è lo stesso (CN) dall’altra parte c’è sempre Cuneo ----- per creare un database normalizzato, ben scritto deve EVITARE le dipendenze funzionali
06-11- NORMALIZZAZIONE DELLA BASE DATI 1 FORMA NORMALE : Una relazione R(una tabella) è in prima forma normale se possiede una chiave primaria ed il valore dei campi di ogni record sono singoli. (Cioè in ogni record io non ho nessun campo il cui valore è un multi valore, il valore è singolo/unico. ) La tabella deve sempre avere una chiave primaria, bisogna sempre specificarla! 2 FORMA NORMALE: Una relazione R è in seconda normale quando è in prima forma normale e non esiste alcuna dipendenza funzionale con parte della chiave primaria. (Chiave primaria con almeno due campi Es: IdFilm, IdAttore, IdRuolo, NomeRuolo Nomeruolo è in dipendenza funzionale con IdRuolo -> creazione di una tabella dei ruoli con IdRuolo (PK) e NomeRuolo 3 FORMA NORMALE : Una relazione R è in terza forma normale quando è in seconda forma normale e non esiste alcuna dipendenza funzionale tra attributi, campi che non fanno parte della chiave primaria. Es JDBC (Java DataBase Connectivity): Driver java che permette a java di comunicare con un qualsiasi DBMS
Zip estrai
https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-usagenotes-statements.html publicpublic class static LoadDriver { void main(String[] args) { try { // The newInstance() call is a work around for some// broken Java implementations
Class.forName("com.mysql.jdbc.Driver").newInstance(); //agganciare il driver della libreria; facciamo una richiesta alla JVM per prendere (se esiste) l classe che a questo nome all’interno di questo package con il tuo modulo class loader (carica le classi, le prende da disco e le porta in memoria); cerca classe con quel nome e se la trovi il risultato che è un oggetto di tipo class lo istanzi con NewIstance Reflection posso lavorare su una classe utilizzando i nomi di classe, metodo, attributo; cerco la classe che si chiama x, se esiste la istanzio, evoco il metodo y passandoci i parametri e prendo il risultato
conn =DriverManager.getConnection("jdbc:mysql://didattica.liceocuneo.it/db5I?" + "user=quintai&quintai31=greatsqldb"); // connessione con la base dati
stmt = conn.createStatement(); rs = stmt.executeQuery("SELECT foo FROM bar"); //sulla connessione creo uno statemnet/comando che mi fa eseguire la selezione del campo fo dalla tabella bar -> sql che vinene inviato al dbms x far legere il contenuto della tabella. Seleziona il campo foo (cioè tutti i suoi record) nella tab bar. Per selezionare tutti i campi devo fare select*
if (stmt.execute("SELECT foo FROM bar")) {rs = stmt.getResultSet(); //possibilità di prendere dei risultati; guarda getResultSet su java
Per le query https://www.w3schools.com/ Materia (Id (PK), Nome) Docente(Id(PK), Cognome, Nome, ClasseConcorso) DocenteMateria (Id (PK, FK), IdMateria, (PK, FK))
1 -selezionare cognome, nome e nome della materia per tutti i docenti; ordinare in ordire alfabetico SELECT Docente.cognome, Docente.nome, Materia.nome FROM Docente, Materia, DocenteMateria WHERE DocenteMateria.IdDocente= Docente.id AND DocenteMateria.IdMateria = Materia.Id ORDER BY Docente.cognome, Docente.nome (DESC per l’ordine decrescente)
2 -selezionare gli identificativi dei docenti della classe di concorso A042 ordinati per cognome (ERRATA) SELECT Docente.Id, Docente.cognome FROM Docente WHERE Docente.ClasseConcorso = ‘A042’ ORDER BY Docente.Cognome //quando c’è un order by quello che è nell’order by deve stare nel select
3 -selezionare gli identificativi dei docenti della classe di concorso A SELECT Docente.Id FROM Docente WHERE Docente.ClasseConcorso = ‘A042’
4- Selezionare le materia insegnate dai docenti che hanno il cognome che inizia per A //con * seleziono tutto SELECT DISTINCT Materia.* //filtra solo i record diversi FROM Docente, Materia, DocenteMateria WHERE DocenteMateria.IdDocente= Docente.id AND DocenteMateria.IdMateria = Materia.Id AND Docente.cognome LIKE ‘A%’
SELECT DISTINCT Materia.* FROM Materia WHERE Materia.Id IN //Sta nell’insieme// (SELECT DocenteMateria.IdMateria FROM DocenteMateria, Docente WHERE DocenteMateria.IdDocente = Docente.Id AND Docente.cognome LIKE ‘A%’ )
5 – Selezionare il numero di insegnati abilitati sulla classe di concorso A SELECT count () FROM Docente WHERE ClasseConcorso = ‘A042’ SELECT SELECT count () SELECT AVF() //media SELECT SUM() //somma FROM
SELECT DISTINCT considera solo i record che sono diversi, sulla base dei campi se ci sono dei record uguali li scarta IN (SELECT .. JOIN INNER JOIN
INFORMATICA 08/01/2019 appun� Pea
WEB = servizio offerto da internet INTERNET = interconnessione di re�. Infrastru�ura mondiale che collega i calcolatori Offre servizi mail,web, peer to peer, deep web
Client usano browser per comunicare con pagine web che stanno nel web server Client devono conoscere indirizzo ip e porta delle pagine web Servizio DNS ricava indirizzo ip dal nome di dominio che noi scriviamo Pagina principale da far vedere subito chiamata index h�p: protocollo liceocuneo: dominio :80 porta Quaderno ele�ronico: percorso (rela�vo, non assoluto) all’interno del web server
Preparare per 15/01/19 un paragrafo: Cronologia eventelecomunicazioni (dai segnali di fumo a internet) � importan� per arrivare alle nostre
Eclipse enterprise edi�on per programmazione web New ➔ dynamic web project ➔ nome del proge�o Java resouces _ src. Copio i sorgen� del proge�o qui Wide/content ➔ new html file ➔ versione 5
Appunti miei
INTERNET: Rete globale
-Storia di interet
Entriprise ee new dynamic project web project name: "MioSito" dynamic web mopdule non oltre 3.
Context root: "MioSito" --> serve x discriminare il suito asll'interno dello stesso web server Context diurectory:
https://://percorso relativo della risorsa (html, mp3, jpg, pdf ..) le pagine del sito devono avere un percorso pt di partenza radice contesto (context root)
Java Resources x i sorgenti Java WebContent - new page html- Filename index - versione html la 5-
bootstrap https://getbootstrap.com/docs/4.2/getting-started/introduction/
La mia pag
Hello, world lo script linguaggio che viene inetrpretato dal browser
se tra i div scrivi qualcosaq esce -->
x eseguire run as- run on server tomcat7 - next -browser -... -
btn
div: è una sezione, contenitore vuoto = rappresenta una sezione della base
il mio primo link: link, ancora. attributo hres, cioè riferinento della risorsa "quaaa" se voglio la pag2, come link, metto il mio primo link
immagine src = percorso immagine collocare imm all'interno della cartella del sito imm-copia-incolla nella cartella- web content- new cartella"im"- copio dentro- -->
se imm non nella mia cartella: imm-copia inditizzo immagine- la inserisco -->
WEB: architettura client-server WEB SERVER: Software in grado di rimanere in attesa da parte di un client Quali protocolli si utilizzano maggiormente sul web? https, http
………..HTML Per passare al web 2.0--> SERVLET: Classe java in grado di rispondere ad una richiesta web New-DynamiWebProject-NewServled- Nome classe es ElencoLibriServled Scrivere il nome della risosrsa che corrisponde alla nostra classe (non più index.html)
Librerie aggiuntive in concat Proprietà progetto --> new build path- add external – tomcat cartella – cartella lib invludo jsp-api, servlet- api
TOMCAT è un application server New jsp file
%> scrivo codice java come lo scrivere nel jsp Import in cima %@page import = “classechemiserve.*” %
05-02-
Se voglio passare info nell url hhtp…… ?parameter1=4¶meter2= Punto? per sepratae pagine da parametri App Pea 12-02.-
Parte dell’url che serve ad identiticare un particolare sito .. …. SESSIONE DEL BROWSER: 26-02.-
La jsp è una servlet Add external jar- aggiungi librerie per evitare errore SESSIONE : La navigazione all’interno del web è conseguita da chiamate di un server e immediata risposta, poi la comunicazione si interrompe, il socket si chiude. Meccanismo in grado di far riconoscere dal server il singolo browser che sta navigando. Il server deve poter riconoscere ogni client durante la sua navigazione. , meccanismo che prevede utilizzo di cookie, per tenere traccia del singolo client. Mi connetto al sito, server mi invia il cookie di sessione che all’interno ha Cookie: nome, dominio di riferimento, scadenza, data ora accesso, contenuto Cookie inoltrato dal server, al fronte di una nuova richiesta il Cookie viene sempre inviato, al server lo vede e dentro al cookie c’è identificativo e va a vedere all’interno della struttura di memoria con che cosa è in relazione il contenuto tomcat vede contenuto, vede a cosa corrisponde, oggetto di sessione del server dentro pox memorizzare info accessibili x chiave string hashtable per coppie chiave valore
SELECT, NOMEREGIONE COUNT NOMEREGIONE GRUPOY NOME
09/04/ ESERCIZIO : considerata una rete ethernet a 100 Mb/s (Megabit), quanto tempo è necessario per scaricare un file di 50 MB (MegaByte)?