Michal Krátký, Miroslav Beneš

Rozměr: px
Začít zobrazení ze stránky:

Download "Michal Krátký, Miroslav Beneš"

Transkript

1 Tvorba informačních systémů 1/50 Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2008/2009

2 Tvorba informačních systémů 2/50 Obsah Obsah ASP (ActiveServer Pages) ASP.NET Struktura ASP.NET: Web Forms, Controls Uživatelské řídící komponenty Příklad: objektově-relační mapování

3 Tvorba informačních systémů 3/50 ASP (Active Server Pages) Historie ASP (Active Server Pages) Skriptovací technologie na straně serveru Značkovací jazyk HTML, WML. Interpretovaný skript JScript, VBScript, JavaScript. Objektový model (Application, Server, Request, Response, Session+ COM komponenty). Chyby v návrhu Nedostatečné zapouzdření omezené opakované použití. Obtížné přizpůsobení různým klientům. Nedostatečná typová kontrola. Opakovaná interpretace všech požadavků. Obtížné uchováváni stavu formuláře.

4 Tvorba informačních systémů 4/50 ASP.NET ASP.NET Vývoj webových aplikací v libovolném jazyce podporovaném platformou.net. Kompilace aplikačního kódu. Přístup k rozsáhlým knihovnám.net (.NET classes). Jmenný prostor: System.Web.*. Web Forms. XML Web Services.

5 Tvorba informačních systémů 5/50 ASP.NET Vývojové nástroje MS VisualStudio.NET 2005/2008 Integrované vývojové prostředí. Komerční produkt. Vlastní WWW server. MS VisualStudio.NET (2003) + IIS. Integrované vývojové prostředí. Komerční produkt. MS.NET Framework + IIS Pouze řádkové překladače. ASP.NET Web MatrixProject Volně dostupné integrované prostředí. Vlastní WWW server.

6 Tvorba informačních systémů 6/50 ASP.NET Vývojové nástroje

7 Tvorba informačních systémů 7/50 ASP.NET Struktura ASP.NET namespace: System.Web.UI class Control - zapouzdřuje společné funkce prvků uživatelského rozhraní Controls, ID, Parent, EnableViewState, Visible, Context, ViewState,... class Page - reprezentuje webovou stránku Application, Request, Response, Server, Session, Cache, ErrorPage, IsPostBack, IsValid, Trace, Validators,... class UserControl bázová třída pro uživatelem definované komponenty.

8 Tvorba informačních systémů 8/50 ASP.NET Web Forms ASP.NET Web Forms Vizualní aplikační komponenty. Značkovací jazyk HTML/WML. XML znaky pro řídící prvky. Stránka ASP.NET Web Forms - soubor.aspx. Blok: <% %>. Na rozdíl od ASP není blok interpretován, ale kompilován. Programová logika. Zpracování událostí. Libovolný podporovaný jazyk. Součást souboru.aspx (Code Inline) nebo kód na pozadí (Code Behind) v samostatném souboru.

9 Tvorba informačních systémů 9/50 ASP.NET Controls ASP.NET Controls (řídící komponenty) Standard/Server Controls - Label, CheckBox,..., Data Controls, Validation Controls, Login Controls, Navigation Controls - Menu, TreeView,..., WebParts Controls, HTML Controls - prvky HTML, User Controls - uživatelské značky.

10 Tvorba informačních systémů 10/50 ASP.NET Controls ASP.NET Server Controls Programovatelné objekty na straně serveru, typicky UI elementy na stránce (např. textové pole). Objekty se podílejí na vytváření stránky, mohou mít vlastní výstup. Jednoduché přizpůsobení potřebám programátora. Vlastnosti nastavujeme deklarativně (atributy značek) nebo programově (v kódu).

11 Tvorba informačních systémů 11/50 ASP.NET Controls Práce se Server Controls Server controls (SC) jsou se stránkou identifikovány pomocí elementu obsahujícího atribut runat="server". Každý SC na stránce může mít přiřazeno jedinečné označení pomocí atributu id. Atribut id je pak použit při programové manipulaci s konkrétním SC. Ošetření událostí jméno události jako hodnota atributu. Např. asp:button obsahuje atribut Onclick. Implementace metody (události) se jménem shodným s hodnotou atributu.

12 Tvorba informačních systémů 12/50 ASP.NET Controls Server Controls namespace: System.Web.UI.WebControls AdRotator BulletedList Button Calendar CheckBox CheckBoxList DropDownList FileUpload HiddenField HyperLink Image ImageButton ImageMap Label LinkButton ListBox Literal MultiView and View Panel PlaceHolder RadioButton RadioButtonList Substitution Table TextBox Wizard Xml

13 Tvorba informačních systémů 13/50 ASP.NET Controls Příklad - Server Controls 1/3

14 Tvorba informačních systémů 14/50 ASP.NET Controls Příklad - Server Controls, servercontrols.aspx 2/3 1 <html> 2 <head> 3 < l i n k r e l = " s t y l e s h e e t " href= " i n t r o. css " > 4 < / head> 5 < sc ript language= "C# " runat =server > 6 void SubmitBtn_Click ( Object sender, EventArgs e ) { 7 Message. Text = " Hi " + H t t p U t i l i t y. HtmlEncode ( 8 Name. Text ) + ", you selected : " + 9 Category. SelectedItem ; 10 } 11 < / s c r i p t > 12 <body> 13 <center> 14 <form i d = " Form1 " action= " s e r v e r c o n t r o l s. aspx " 15 method= " post " runat=" server " > Řádky 5-10: Implementace metody volané na serveru po stisku tlačítka na formuláři.

15 Tvorba informačních systémů 15/50 ASP.NET Controls Příklad - Server Controls, servercontrols.aspx 3/3 1 <h3>name : <asp : textbox i d = "Name" runat=" server " / > 2 Category : 3 <asp : dropdownlist i d = " Category " runat=server> 4 <asp : l i s t i t e m >Student< / asp : l i s t i t e m > 5 <asp : l i s t i t e m >Developer< / asp : l i s t i t e m > 6 <asp : l i s t i t e m > S c i e n t e r < / asp : l i s t i t e m > 7 < / asp : dropdownlist> 8 < / h3> 9 <asp : button ID= " Button1 " text=" Lookup " 10 OnClick= " SubmitBtn_Click " runat = " server " / > 11 <p> 12 <asp : l a b e l i d = " Message " runat=" server " / > 13 < / form>< / center> 14 < / body> 15 < / html> Řádky 9-10: Po stisku tlačítka bude na serveru zavolána metoda SubmitBtn_Click

16 Tvorba informačních systémů 16/50 Code Inline vs. Code Behind Code Inline vs. Code Behind Code Inline - kód v jednom souboru Code Behind - kód na pozadí, ve více souborech.

17 Tvorba informačních systémů 17/50 Code Inline vs. Code Behind Příklad - Code Inline, inline.aspx 1/2 <%@ page language= "C# " %> < script runat=" server " > void Button1_Click ( o b j e c t sender, EventArgs e ) { Label1. Text = " Hello " + TextBox1. Text ; } < / script> <html> <head> < t i t l e >ASP.NET I n l i n e Pages< / t i t l e > < / head>

18 Tvorba informačních systémů 18/50 Code Inline vs. Code Behind Příklad - Code Inline, inline.aspx 2/2 <body> <form i d = " Form1 " runat=" server " > <h1>welcome to ASP.NET 2. 0! < / h1> <b>enter Your Name: < / b> <asp : TextBox ID= " TextBox1 " Runat= " server " / > <asp : Button ID= " Button1 " Text= " C l i c k Me" OnClick= " Button1_Click " Runat= " server " / > <br / > <br / > <asp : Label ID= " Label1 " Text= " Hello " Runat= " server " / > < / form> < / body> < / html>

19 Tvorba informačních systémů 19/50 Code Inline vs. Code Behind Příklad - Code Behind, behind.aspx 1/3 <%@ page language= "C# " CodeFile= " behind. aspx. cs " I n h e r i t s = " behind_aspx " %> <html> <head> < t i t l e >ASP.NET CodeBehind Pages< / t i t l e > < / head> <body> <form i d = " Form1 " runat=" server " > <h1>welcome to ASP.NET 2. 0! < / h1> <b>enter Your Name: < / b> <asp : TextBox ID= " TextBox1 " Runat= " server " / > <asp : Button ID= " Button1 " Text= " C l i c k Me" OnClick= " Button1_Click " Runat= " server " / >

20 Tvorba informačních systémů 20/50 Code Inline vs. Code Behind Příklad - Code Behind, behind.aspx 2/3 <br / > <br / > <asp : Label ID= " Label1 " Text= " Hello " Runat= " server " / > < / form> < / body> < / html>

21 Tvorba informačních systémů 21/50 Code Inline vs. Code Behind Příklad - Code Behind, behind.aspx.cs 3/3 using System ; p u b l i c p a r t i a l class behind_aspx : System.Web. UI. Page { protected void Button1_Click ( o b j e c t sender, EventArgs e ) { Label1. Text = " Hello " + TextBox1. Text ; } }

22 Tvorba informačních systémů 22/50 Code Directory Sdílení kódu mezi stránkami Adresář kódu (Code Directory) Adresář App_Code. Možné podadresáře App_Code musí být registrovány v souboru Web.config. Global Assembly Cache.NET komponenty je nutné opět registrovat v souboru Web.config.

23 Tvorba informačních systémů 23/50 Code Directory Příklad - Code Directory, CodeFolder.aspx 1/3 <%@ page language= "C# " %> < script runat=" server " > void Button1_Click ( o b j e c t sender, EventArgs e ) { CustomClass c = new CustomClass ( ) ; Label1. Text = c. GetMessage ( TextBox1. Text ) ; } < / script> <html> <head> < t i t l e >ASP.NET I n l i n e Pages< / t i t l e > < / head> <body>

24 Tvorba informačních systémů 24/50 Code Directory Příklad - Code Directory, CodeFolder.aspx 2/3 <form i d = " Form1 " runat=" server " > <h1>welcome to ASP.NET 2. 0! < / h1> <b>enter Your Name: < / b> <asp : TextBox ID= " TextBox1 " Runat= " server " / > <asp : Button ID= " Button1 " Text= " C l i c k Me" OnClick= " Button1_Click " Runat= " server " / > <br / > <br / > <asp : Label ID= " Label1 " Text= " Hello " Runat= " server " / > < / form> < / body> < / html>

25 Tvorba informačních systémů 25/50 Code Directory Příklad - Code Directory, App_Code/CustomClass.cs 3/3 using System ; p u b l i c class CustomClass { p u b l i c S t r i n g GetMessage ( S t r i n g i n p u t ) { r e t u r n " Hello " + i n p u t ; } }

26 Tvorba informačních systémů 26/50 User Controls Příklad - User Controls, usercontrols.aspx 1/2 Podobně jako v JSP, můžeme i v ASP.NET vytvářet vlastní uživatelské značky. <%@ Page Language= "C# " %> <%@ Register TagPrefix=" tuo " TagName= " message " Src= " u s e r c o n t r o l s. ascx " %> <html> <body style=" f o n t : 10 pt verdana " > <h3>a Simple User Control< / h3> <tuo : message Text= " Hello World! " Color= " blue " runat=" server " i d = " Message " / > < / body> < / html>

27 Tvorba informačních systémů 27/50 User Controls Příklad - User Controls, usercontrols.ascx 2/2 < script language= "C# " runat=" server " > p u b l i c S t r i n g Color ; p u b l i c S t r i n g Text ; < / script> <span i d = " Message " style=" c o l o r :<%=Color%>" > <%=Text%>< / span>

28 Tvorba informačních systémů 28/50 Příklad, práce s databází Příklad, práce s databází 1/3 <%@ Page Language= "VB" %> <html> <head runat=" server " > < t i t l e >GridView Bound to SqlDataSource< / t i t l e > < / head> <body> <form i d = " form1 " runat=" server " > <asp : GridView ID= " GridView1 " DataSourceID= " SqlDataSource1 " runat=" server " / >

29 Tvorba informačních systémů 29/50 Příklad, práce s databází Příklad, práce s databází 2/3 <asp : SqlDataSource ID= " SqlDataSource1 " runat=" server " SelectCommand= "SELECT [ au_id ], [ au_lname ], [ au_fname ], [ phone ], [ address ], [ c i t y ], [ s t a t e ], [ z i p ], [ c o n t r a c t ] FROM [ authors ] " ConnectionString="<%$ ConnectionStrings : Pubs %>" / > < / form> < / body> < / html> Nevhodné: Ve view se objevuje SQL příkaz!

30 Tvorba informačních systémů 30/50 Příklad, práce s databází Příklad, práce s databází 3/3

31 Tvorba informačních systémů 31/50 INSERT INTO FileType Values ( pdf, a p p l i c a t i o n / pdf ) ;... INSERT INTO PaperVersion Values ( 2/12/2008, 1 ) ;... Příklad, ORM Příklad, ORM, create.sql Evidujeme informace o verzích článků a souborech ve kterých byl článek zaslán. CREATE TABLE PaperVersion ( i d INT NOT NULL PRIMARY KEY IDENTITY, date DATETIME NOT NULL, i d F i l e T y p e INT REFERENCES FileType ) ; CREATE INDEX PaperVersion_ id ON PaperVersion ( i d ) ; CREATE TABLE FileType ( i d INT NOT NULL PRIMARY KEY IDENTITY, extension VARCHAR( 5 ) NOT NULL, mime VARCHAR( 2 0 ) NOT NULL ) ; CREATE INDEX FileType_id ON FileType ( i d ) ;

32 Tvorba informačních systémů 32/50 Příklad, ORM Příklad, ORM

33 Tvorba informačních systémů 33/50 Příklad, ORM Příklad ORM, TableRelForm.aspx 1/ <html xmlns= " h t t p : / / www. w3. org /1999/ xhtml " > 3 <head runat=" server " >< t i t l e >AspNetExampleApp< / t i t l e >< / head> 4 <body> 5 <form i d = " form1 " runat=" server " ><div> 6 <asp : GridView ID= " GridView1 " runat = " server " AllowPaging= " True " 7 AutoGenerateColumns= " False " DataSourceID= " ODS_PaperVersion " > 8 <Columns> 9 <asp : BoundField DataField=" Id " HeaderText= " Id " 10 SortExpression= " Id " / > 11 <asp : BoundField DataField=" Date " HeaderText= " Date " 12 SortExpression= " Date " / > 13 <asp : BoundField DataField=" IdFileType " HeaderText= " IdFileType " 14 SortExpression= " IdFileType " / > Řádky 9-11: Přiřazení datového zdroje ke komponentě uživatelského rozhraní. Řádky 13-18: Definice jednotlivých sloupců tabulky atribut DataField obsahuje název atributu doménového objektu.

34 Tvorba informačních systémů 34/50 Příklad, ORM Příklad ORM, TableRelForm.aspx 2/2 1 <asp : TemplateField HeaderText= " FileType " SortExpression= " FileType " > 2 <ItemTemplate> 3 <asp : Label ID= " LabelFileType " runat = " server " 4 Text= <%# Eval ( " FileType. Extension " ) %> >< / asp : Label> 5 < / ItemTemplate> 6 < / asp : TemplateField> 7 < / Columns>< / asp : GridView>< / div> 8 <asp : ObjectDataSource ID= " ODS_PaperVersion " runat = " server " 9 SelectMethod= " Select " 10 TypeName= " AspNetExampleApp. Database. PaperVersionTable " > 11 < / asp : ObjectDataSource> 12 < / form>< / body>< / html> Řádky 1-6: Definice sloupce, který obsahuje hodnotu atributu záznamu s tabulky na kterou odkazuje cizí klíč idfiletype. Řádky 8-11: Definice datové zdroje GridView je naplněn kolekcí instancí získaných voláním metody Select třídy PaperVersionTable.

35 Tvorba informačních systémů 35/50 Příklad, ORM Příklad ORM, PaperVersion 1/2 Doménový objekt reprezentující záznam z tabulky PaperVersion. 1 using System ; 2 using System. C o l l e c t i o n s. Generic ; 3 using System. Text ; 4 5 namespace AspNetExampleApp. Database { 6 public class PaperVersion { 7 public s t a t i c S t r i n g ATTR_id = " i d " ; 8 public s t a t i c S t r i n g ATTR_date = " date " ; 9 public s t a t i c S t r i n g ATTR_idFileType = " i d F i l e T y p e " ; private i n t mid ; 12 private DateTime mdate ; 13 private i n t midfiletype = 0 ; 14 private FileType mfiletype ; Řádek 14: Implementace vazby 1:1. Zde uložíme instanci na kterou odkazuje cizí klíč idfiletype.

36 Tvorba informačních systémů 36/50 Příklad, ORM Příklad ORM, PaperVersion 2/2 1 public i n t Id 2 { 3 get 4 { 5 return mid ; 6 } 7 set 8 { 9 mid = value ; 10 } 11 } / /... set / get metody pro vsechny a t r i b u t y 14 } 15 } Pak můžeme psát: instance.id=...; popř. int myid = instance.id;

37 Tvorba informačních systémů 37/50 Příklad, ORM Příklad ORM, PaperVersionTable 1/4 Třída obsahuje metody reprezentující operace nad tabulkou PaperVersion.... namespace AspNetExampleApp. Database { public class PaperVersionTable : DbTable { public s t a t i c S t r i n g TABLE_NAME = " PaperVersion " ; public S t r i n g SQL_SELECT = "SELECT id, date, i d F i l e T y p e from " + TABLE_NAME + " ORDER BY i d ; " ; public PaperVersionTable ( ) : base (TABLE_NAME) { } / / I n s e r t the record public i n t I n s e r t ( PaperVersion paperversion ) { /... / } / / Update the record public i n t Update ( PaperVersion paperversion ) { /... / }

38 Tvorba informačních systémů 38/50 Příklad, ORM Příklad ORM, PaperVersionTable 2/4 1 / / Delete the record. 2 public i n t Delete ( PaperVersion paperversion ) 3 { /... / } 4 5 / / Select records 6 public C o l l e c t i o n <PaperVersion > Select ( ) 7 { 8 SqlCommand command = mdatabase. CreateCommand ( ) ; 9 command. CommandText = SQL_SELECT; 10 SqlDataReader reader = mdatabase. Select ( command ) ; C o l l e c t i o n <PaperVersion > paperversions = Read ( reader ) ; 13 reader. Close ( ) ; 14 mdatabase. Close ( ) ; 15 return paperversions ; 16 } Řádky 8-10: Připravení dotazu a odeslání na databázi

39 Tvorba informačních systémů 39/50 Příklad, ORM Příklad ORM, PaperVersionTable 3/4 1 public C o l l e c t i o n <PaperVersion > Read ( SqlDataReader reader ) 2 { 3 C o l l e c t i o n <PaperVersion > paperversions = 4 new C o l l e c t i o n <PaperVersion > ( ) ; 5 while ( reader. Read ( ) ) { 6 PaperVersion paperversion = new PaperVersion ( ) ; 7 paperversion. Id = reader. GetInt32 ( 0 ) ; 8 paperversion. Date = reader. GetDateTime ( 1 ) ; 9 10 i f (! reader. IsDBNull ( 2 ) ) { 11 paperversion. IdFileType = reader. GetInt32 ( 2 ) ; 12 paperversion. FileType = 13 mdatabase. FileTypeTable. Select ( paperversion. IdFileType ) ; 14 } Řádky 10-14: Hodnota cizího klíče není NULL? Vyber záznam z tabulky FileType.

40 Tvorba informačních systémů 40/50 Příklad, ORM Příklad ORM, PaperVersionTable 4/4 1 else { 2 paperversion. IdFileType = 1; 3 paperversion. FileType = n u l l ; 4 } 5 paperversions. Add ( paperversion ) ; 6 } 7 return paperversions ; 8 } Řádky 1-4: Hodnota cizího klíče je NULL? Nastav null. Řádek 5: Přidáme načtený záznam do kolekce instancí.

41 Tvorba informačních systémů 41/50 Příklad, ORM Příklad ORM, DbTable 1 / /... 2 namespace AspNetExampleApp. Database { 3 public class DbTable { 4 i n t e r n a l s t a t i c Database mdatabase ; 5 protected S t r i n g mtablename ; 6 7 s t a t i c DbTable ( ) { 8 mdatabase = new Database ( ) ; 9 } public DbTable ( S t r i n g tablename ) { 12 mtablename = tablename ; 13 } / / } } Proměnná mdatabase je statická, bude tedy sdílena všemi třídami reprezentující tabulky. Platnost této instance skončí restartem webového serveru (IIS).

42 Tvorba informačních systémů 42/50 Příklad, ORM Příklad ORM, Database 1/ namespace AspNetExampleApp. Database { 3 { 4 public class Database { 5 / / p r i v a t e s t a t i c i n t TIMEOUT = ; 6 private SqlConnection mconnection = new SqlConnection ( ) ; 7 u i n t mconnectnumber = 0 ; 8 bool mtransactionflag = false ; 9 SqlTransaction msqltransaction ; 10 private S t r i n g mlanguage = " en " ; public PaperVersionTable PaperVersionTable ; 13 public FileTypeTable FileTypeTable ; Řádek 6: Všechny třídy reprezentující tabulky budou sdílet jedno spojení s databází. ASP.NET sám osobě používá pool - spojení se tedy nebude otevírat fyzicky. Řádek 12-13: Instance tříd reprezentující tabulky.

43 Tvorba informačních systémů 43/50 Příklad, ORM Příklad ORM, Database 2/6 1 public bool Connect ( ) 2 { 3 bool r e t = true ; 4 5 i f ( mconnection. State! = System. Data. ConnectionState. Open) 6 { 7 r e t = Connect ( WebConfigurationManager. 8 ConnectionStrings [ " ConnectionString " ]. ConnectionString ) ; 9 } 10 else i f (! mtransactionflag ) { 11 mconnectnumber++; 12 } return r e t ; 15 } Řádek 7: V metodě connect se volá mconnection.open(); Řádek 11: Spojení je již aktivní? Pak pouze inkrementuj počet požadovaných spojení.

44 Tvorba informačních systémů 44/50 Příklad, ORM Příklad ORM, Database 3/6 1 public bool Close ( ) 2 { 3 i f (! mtransactionflag ) 4 { 5 i f ( mconnectnumber > 0 ) 6 { 7 mconnectnumber ; 8 } 9 } i f ( mconnectnumber = = 0 ) 12 { 13 mconnection. Close ( ) ; 14 } 15 return true ; 16 } Řádky 11-14: Jakmile počet požadavků na spojení klesne na nula, můžeme zavolat close.

45 Tvorba informačních systémů 45/50 Příklad, ORM Příklad ORM, Database 4/6 1 public void BeginTransaction ( ) { 2 Connect ( ) ; 3 msqltransaction = mconnection. BeginTransaction ( 4 I s o l a t i o n L e v e l. S e r i a l i z a b l e ) ; 5 mtransactionflag = true ; 6 } 7 public void EndTransaction ( ) { 8 msqltransaction. Commit ( ) ; 9 mtransactionflag = false ; 10 mconnection. Close ( ) ; 11 Close ( ) ; 12 } Problém: Některé verze ADO.NET vyhodí výjimku pokud voláme BeginTransaction uvnitř jiné transakce. Musíme tedy zavést podobný systém jako v případě proměnné počítající počet požadavků na připojení mconnectnumber: int mtransactionnumber bude tedy obsahovat počet požadavků na začátek transakce.

46 Tvorba informačních systémů 46/50 Příklad, ORM Příklad ORM, Database 5/6 1 public SqlCommand CreateCommand ( ) { 2 SqlCommand command ; 3 i f ( mtransactionflag ) { 4 command = new SqlCommand ( n u l l, mconnection, msqltransaction ) ; 5 } 6 else { 7 command = new SqlCommand ( n u l l, mconnection ) ; 8 } 9 return command ; 10 } Před voláním každé operace s databází (Select, Insert apod.) volá třída reprezentující tabulku tuto metodu. Všichni klienti aplikace tedy sdílí connection, ale vytváří vlastní command. Poznámka: Je nutné provést zátěžové testy zda je toto řešení rovnocenné s řešením vytvářející pool spojení (v tomto případě by mconnection bylo pole připojení).

47 Tvorba informačních systémů 47/50 Příklad, ORM Příklad ORM, Database 6/6 1 public i n t I n s e r t ( SqlCommand command ) { 2 i n t rownumber = 0 ; 3 t r y { 4 Connect ( ) ; 5 command. Prepare ( ) ; 6 rownumber = command. ExecuteNonQuery ( ) ; 7 } 8 catch ( Exception e ) { 9 throw e ; 10 } 11 f i n a l l y { 12 Close ( ) ; 13 } 14 return rownumber ; 15 } 16 public SqlDataReader Select ( SqlCommand command ) { 17 Connect ( ) ; 18 command. Prepare ( ) ; 19 SqlDataReader sqlreader = command. ExecuteReader ( ) ; 20 return sqlreader ; 21 } 22 / /... D a l s i metody

48 Tvorba informačních systémů 48/50 Příklad, ORM Příklad, Diskuse Reprezentace databáze jako globální objekt se sdílenou instancí SqlConnection vede k těmto důsledkům: Musím zavést počítání požadavků na připojení a začátek transakce pro korektní uzavírání spojení. Musíme uzavírat části kódu, které pracují s těmito proměnnými, pro ostatní vlákna. Pokud Database odladíme, získáme transparentní objektové rozhraní k databázi. Alternativní řešení pak mohou vypadat takto: Objekt představující rozhraní k databázi popř. instanci SqlConnection vytváříme lokálně pro každý dotaz, popř. tuto instanci získáme jako parametr z metody, která otevírá transakci.

49 Tvorba informačních systémů 49/50 Příklad, ORM Další Detail záznamu s možností editace DetailView. Definice rolí a přiřazení viditelnosti položek menu a formulářů pro jednotlivé role. Společné vlastnosti stránky (záhlaví, zápatí) jsou shrnuty do tzv. MasterPage.

50 Tvorba informačních systémů 50/50 Příklad, ORM Reference Kurz na katedře informatiky: Vývoj webových aplikací Tutoriály aspnet/default.aspx.

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký 1, Miroslav Beneš 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2006/2007 c 2006-2007 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Web Jaroslav Nečas Obsah přednášky Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Co to je web HTTP protokol bezstavový GET POST HEAD Cookies Session HTTPS

Více

Programování v jazyku C# II. 8.kapitola

Programování v jazyku C# II. 8.kapitola Programování v jazyku C# II. 8.kapitola Obsah Kontrolky Validace Stavy Bezpečnost 2/27 Web formuláře Kontrolky na formuláři označené atributem runat="server" HTML kontrolky těsně kopírují rozhraní dané

Více

Komponenty v.net. Obsah přednášky

Komponenty v.net. Obsah přednášky doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah přednášky Rozdíl mezi COM a.net Distribuce komponent Programování

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký 1, Miroslav Beneš 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Programování v jazyku C# II. 5.kapitola

Programování v jazyku C# II. 5.kapitola Programování v jazyku C# II. 5.kapitola Obsah O ADO.NET Spojení s DB Příkazy Jednoduché čtení DataSet 2/28 ADO.NET ADO - ActiveX Data Object Orientováno na webové aplikace neexistence stavu v HTTP Obecný

Více

Základy jazyka C# Obsah přednášky. Architektura.NET Historie Vlastnosti jazyka C# Datové typy Příkazy Prostory jmen Třídy, rozhraní

Základy jazyka C# Obsah přednášky. Architektura.NET Historie Vlastnosti jazyka C# Datové typy Příkazy Prostory jmen Třídy, rozhraní Základy jazyka C# doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah přednášky Architektura.NET Historie Vlastnosti

Více

Jazyk C# - přístup k datům

Jazyk C# - přístup k datům Jazyk C# - přístup k datům Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Data Reader BI-PCS Evropský sociální fond Praha & EU:

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006-2007 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Programování v prostředí.net

Programování v prostředí.net Programování v prostředí.net ASP.NET 1 / 50 Obsah přednášky Dynamický web ASP.NET ASP.NET třídy Kontrolky Validace Stavy Bezpečnost 2 / 50 Dynamický web Stránka vytvořena programově na straně serveru poté

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2006-2008 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Google Web Toolkit. Martin Šurkovský, SUR března Katedra informatiky

Google Web Toolkit. Martin Šurkovský, SUR března Katedra informatiky Google Web Toolkit Martin Šurkovský, SUR096 Vysoká škola Báňská - Technická univerzita Ostrava Katedra informatiky 29. března 2010 Martin Šurkovský, SUR096 (VŠB - TUO) Google Web Toolkit 29. března 2010

Více

Třídy a objekty. Třídy a objekty. Vytvoření instance třídy. Přístup k atributům a metodám objektu. $z = new Zlomek(3, 5);

Třídy a objekty. Třídy a objekty. Vytvoření instance třídy. Přístup k atributům a metodám objektu. $z = new Zlomek(3, 5); Programovací jazyk PHP doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah Třídy a objekty Výjimky Webové aplikace

Více

Použití databází na Webu

Použití databází na Webu 4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2010/11/18 11:33:52 $ Obsah Co nás čeká... 3 Architektura webových databázových aplikací... 4 K čemu se používají databázové

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2006-2008 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Platforma.NET 11.NET Framework 11 Visual Basic.NET Základní principy a syntaxe 13

Platforma.NET 11.NET Framework 11 Visual Basic.NET Základní principy a syntaxe 13 Obsah Úvod 11 Platforma.NET 11.NET Framework 11 Visual Basic.NET 12 1 Základní principy a syntaxe 13 Typový systém 13 Hodnotové typy 13 Struktury 15 Výčtové typy 15 Referenční typy 15 Konstanty 16 Deklarace

Více

Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 10.4.

Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 10.4. Základy programování 4 - C# - 9. cvičení Radek Janoštík Univerzita Palackého v Olomouci 10.4.2017 Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 10.4.2017 1 / 13 Reakce na

Více

Databázové a informační systémy

Databázové a informační systémy Databázové a informační systémy doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah Jak ukládat a efektivně zpracovávat

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2006 2008 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Formuláře. Internetové publikování. Formuláře - příklad

Formuláře. Internetové publikování. Formuláře - příklad Formuláře Internetové publikování Formuláře - příklad 1 Formuláře - použití Odeslání dat od uživatele Možnosti zpracování dat Webová aplikace na serveru (ASP, PHP) Odeslání e-mailem Lokální script Formuláře

Více

Tvorba WWW stránek. přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování

Tvorba WWW stránek. přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování Tvorba WWW stránek přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování HTML/XHTML kaskádové styly PHP spolupráce PHP s databázemi Technologie

Více

Návrh a tvorba WWW stránek 1/14. PHP a databáze

Návrh a tvorba WWW stránek 1/14. PHP a databáze Návrh a tvorba WWW stránek 1/14 PHP a databáze nejčastěji MySQL součástí balíčků PHP navíc podporuje standard ODBC PHP nemá žádné šablony pro práci s databází princip práce s databází je stále stejný opakované

Více

Tvorba informačních systémů

Tvorba informačních systémů 9. Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2006-2008 Michal Krátký, Miroslav Beneš Tvorba

Více

Architektury informačních systémů

Architektury informačních systémů Architektury informačních systémů doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes/vyuka/tis Miroslav.Benes@vsb.cz Obsah přednášky Co je to

Více

Architektury informačních systémů

Architektury informačních systémů Architektury informačních systémů doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes/vyuka/tis Miroslav.Benes@vsb.cz Obsah přednášky Co je to

Více

Michal Krátký, Miroslav Beneš

Michal Krátký, Miroslav Beneš Tvorba informačních systémů 1/20 Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2008/2009 Tvorba informačních

Více

InterSystems Caché Post-Relational Database

InterSystems Caché Post-Relational Database InterSystems Caché Post-Relational Database Martin Holoubek xholoub@fi.muni.cz Úvod InterSystems byla založena shodou okolností ve stejném roce jako její největší konkurent Oracle 1978 Caché je velmi vyspělý

Více

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Šablona 32 VY_32_INOVACE_038.ICT.34 Tvorba webových stránek SQL stručné minimum OA a JŠ Jihlava, VY_32_INOVACE_038.ICT.34 Číslo

Více

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal Databázové systémy - SQL * definice dat * aktualizace * pohledy Tomáš Skopal Osnova přednášky definice dat definice (schémat) tabulek a integritních omezení CREATE TABLE změna definice schématu ALTER TABLE

Více

Jazyk C# - přístup k datům

Jazyk C# - přístup k datům Jazyk C# - přístup k datům Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Entity Framework BI-PCS Evropský sociální fond Praha

Více

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007 Úvod do programovacích jazyků (Java) Michal Krátký 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků

Více

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632

Více

Rezervační systém Tvorba WWW stránek

Rezervační systém Tvorba WWW stránek 2012 Rezervační systém Tvorba WWW stránek Vytvoření rezervačního systému pro rezervaci motokár,ubytování a atrakcí Marek Svoboda Motokáry Motobydlo 30.12.2012 Obsah 1.Základní charakteristika... 3 a) Téma

Více

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS 7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13

Více

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS 7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13

Více

1 - Úvod do platformy.net. IW5 - Programování v.net a C#

1 - Úvod do platformy.net. IW5 - Programování v.net a C# 1 - Úvod do platformy.net IW5 - Programování v.net a C# Strana 1 Obsah přednášky Objektově orientované paradigma.net Framework Základní rysy jazyka C# Strana 2 Objektová orientace C# implementuje základní

Více

Západočeská univerzita v Plzni Katedra informatiky a výpočetní techniky. 9. června 2007. krovacek@students.zcu.cz

Západočeská univerzita v Plzni Katedra informatiky a výpočetní techniky. 9. června 2007. krovacek@students.zcu.cz Databáze čajových sáčků Martina Málková Západočeská univerzita v Plzni Katedra informatiky a výpočetní techniky Databázové systémy 2 9. června 2007 krovacek@students.zcu.cz 1 1 Datová analýza V původním

Více

KIV/PIA 2013 Jan Tichava

KIV/PIA 2013 Jan Tichava KIV/PIA 2013 Jan Tichava Java EE JSF, PrimeFaces Spring JPA, EclipseLink Java Platform, Enterprise Edition Persistence Zobrazovací vrstva Interakce aplikací Deployment Java Persistence API Enterprise

Více

Verzování a publikace dat na webu za pomoci PostgreSQL

Verzování a publikace dat na webu za pomoci PostgreSQL Prague PostgreSQL Developers' Day 2013 Verzování a publikace dat na webu za pomoci PostgreSQL Jan Pěček Kdo jsem? Jan Pěček Programátor PostgreSQL Jyxo, s.r.o. (Blog.cz) MAFRA, a.s. - Internet Trading

Více

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007 Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků

Více

2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu.

2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu. Informatika 10. 9. 2013 Jméno a příjmení Rodné číslo 1) Napište algoritmus pro rychlé třídění (quicksort). 2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus

Více

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL 4 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, datové typy, klauzule SELECT, WHERE, a ORDER BY. Doporučená

Více

Michal Krátký, Miroslav Beneš

Michal Krátký, Miroslav Beneš Databázové a informační systémy Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava 5.12.2005 2005 Michal Krátký, Miroslav Beneš Databázové a informační systémy 1/24 Obsah

Více

Informační systémy 2008/2009. Radim Farana. Obsah. Aktivní serverové stránky ASP. Active Server Pages. Activex Data Objects. LDAP database.

Informační systémy 2008/2009. Radim Farana. Obsah. Aktivní serverové stránky ASP. Active Server Pages. Activex Data Objects. LDAP database. 11 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Tvorba webových aplikací. Active Server Pages. Activex Data Objects.

Více

Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni

Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni Webové aplikace Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni Harmonogram Dopolední blok 9:00 12:30 Ing. Dostal Úvod, XHTML + CSS Ing. Brada,

Více

Úvod do programovacích jazyků (Java)

Úvod do programovacích jazyků (Java) Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2007/2008 c 2006 2008 Michal Krátký Úvod do programovacích

Více

DUM 14 téma: Interakce s uživatelem

DUM 14 téma: Interakce s uživatelem DUM 14 téma: Interakce s uživatelem ze sady: 2 tematický okruh sady: Tvorba statických www stránek s použitím CSS ze šablony: 08 Internet určeno pro: 3. ročník vzdělávací obor: 18-20-M/01 Informační technologie

Více

Michal Krátký, Miroslav Beneš

Michal Krátký, Miroslav Beneš Tvorba informačních systémů 1/54 Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2008/2009 Tvorba informačních

Více

Michal Augustýn www.augi.cz Microsoft Most Valuable Professional

Michal Augustýn www.augi.cz Microsoft Most Valuable Professional Michal Augustýn www.augi.cz Microsoft Most Valuable Professional dříve převážně desktopové aplikace rozmach internetu poptávka po webových vývojářích ASP.NET WebForms snadný přechod - RAD mezitím jiné

Více

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Maturitní otázky z předmětu PROGRAMOVÁNÍ Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti

Více

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007 Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků

Více

Tvorba aplikací v Oracle Application Express

Tvorba aplikací v Oracle Application Express DBS 4. ročník APEX Tvorba aplikací v Oracle Application Express Cílem této lekce je vytvořit kompletní aplikaci v Apexu, postavenou na vzorových tabulkách společnosti Oracle. Postup: 1. Otevřete lekci

Více

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML Obsah přednášky Webové služby a XML Miroslav Beneš Co jsou to webové služby Architektura webových služeb SOAP SOAP a Java SOAP a PHP SOAP a C# Webové služby a XML 2 Co jsou to webové služby rozhraní k

Více

24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1 24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE AUTOR DOKUMENTU: MGR. MARTINA SUKOVÁ DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 UČIVO: STUDIJNÍ OBOR: PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) INFORMAČNÍ TECHNOLOGIE

Více

Databáze I. Přednáška 4

Databáze I. Přednáška 4 Databáze I Přednáška 4 Definice dat v SQL Definice tabulek CREATE TABLE jméno_tab (jm_atributu typ [integr. omez.], jm_atributu typ [integr. omez.], ); integritní omezení lze dodefinovat později Definice

Více

Databázové systémy II. KIV/DB2 LS 2007/2008. Zadání semestrální práce

Databázové systémy II. KIV/DB2 LS 2007/2008. Zadání semestrální práce Databázové systémy 2 Jméno a příjmení: Jan Tichava Osobní číslo: Studijní skupina: čtvrtek, 4 5 Obor: ININ SWIN E-mail: jtichava@students.zcu.cz Databázové systémy II. KIV/DB2 LS 2007/2008 Zadání semestrální

Více

Využití OOP v praxi -- Knihovna PHP -- Interval.cz

Využití OOP v praxi -- Knihovna PHP -- Interval.cz Page 1 of 6 Knihovna PHP Využití OOP v praxi Po dlouhé teorii přichází na řadu praxe. V následujícím textu si vysvětlíme možnosti přístupu k databázi pomocí různých vzorů objektově orientovaného programování

Více

Stored Procedures & Database Triggers, Tiskové sestavy v Oracle Reports

Stored Procedures & Database Triggers, Tiskové sestavy v Oracle Reports , Marek Rychlý Vysoké učení technické v Brně Fakulta informačních technologií Ústav informačních systémů Demo-cvičení pro IDS 9. dubna 2014 Marek Rychlý Stored Procedures & Database Triggers, Demo-cvičení

Více

JavaScript 101. "Trocha života do statických stránek"

JavaScript 101. Trocha života do statických stránek JavaScript 101 "Trocha života do statických stránek" Nacionále: JavaScript 101 Vznik: Netscape, 1995 Původně Mocha, později LiveScript, nakonec z marketingových důvodů přejmenován na JavaScript JavaScript

Více

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Číslo a název šablony Číslo didaktického materiálu Druh didaktického materiálu Autor Jazyk Téma sady didaktických materiálů Téma didaktického materiálu Vyučovací předmět Cílová skupina (ročník) Úroveň

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký 1, Miroslav Beneš 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Informační systém pro e-learning manuál

Informační systém pro e-learning manuál Informační systém pro e-learning manuál Verze 1.00 Úvod Tento dokument popisuje způsob práce s informačním systémem pro elektronické vzdělávání. Systém je určený pro vytvoření elektronického kurzu a jeho

Více

Maturitní témata Školní rok: 2015/2016

Maturitní témata Školní rok: 2015/2016 Maturitní témata Školní rok: 2015/2016 Ředitel školy: Předmětová komise: Předseda předmětové komise: Předmět: PhDr. Karel Goš Informatika a výpočetní technika Mgr. Ivan Studnička Informatika a výpočetní

Více

NSWI096 - INTERNET JavaScript

NSWI096 - INTERNET JavaScript NSWI096 - INTERNET JavaScript Mgr. Petr Lasák JAVASCRIPT JAK SE DNES POUŽÍVÁ Skriptovací (interpretovaný) jazyk Umožňuje interaktivitu Použití: Dialogy Kontrola dat ve formulářích Změny v (X)HTML dokumentu

Více

Databázové systémy Cvičení 5.2

Databázové systémy Cvičení 5.2 Databázové systémy Cvičení 5.2 SQL jako jazyk pro definici dat Detaily zápisu integritních omezení tabulek Integritní omezení tabulek kromě integritních omezení sloupců lze zadat integritní omezení jako

Více

Úvod do Entity Frameworku

Úvod do Entity Frameworku PV178 Úvod do Entity Frameworku Mgr. David Gešvindr MVP MSP MCSD: Windows Store MCSE: Data Platform gesvindr@mail.muni.cz Osnova 1. Úvod do Entity Frameworku 2. Návrh databáze s využitím Entity Framework

Více

Vytváření a použití knihoven tříd

Vytváření a použití knihoven tříd Vytváření a použití knihoven tříd doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Prostory jmen motivace spolupráce

Více

Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hoksza, Ph.D. http://siret.cz/hoksza

Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hoksza, Ph.D. http://siret.cz/hoksza Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hksza, Ph.D. http://siret.cz/hksza Osnva Seznámení s SQL Server Management Studiem (SSMS) Základní architektura

Více

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007 Úvod do programovacích jazyků (Java) Michal Krátký 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků

Více

Jakub Čermák <jakub@jcermak.cz> http://www.jcermak.cz. Microsoft Student Partner

Jakub Čermák <jakub@jcermak.cz> http://www.jcermak.cz. Microsoft Student Partner Jakub Čermák http://www.jcermak.cz Microsoft Student Partner Úvod, příklady použití, trocha teorie Struktura aplikace Typy obecně, primitivní typy, speciální typy Podmínky, cykly, namespaces

Více

Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 26.3.

Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 26.3. Základy programování 4 - C# 7. cvičení Radek Janoštík Univerzita Palackého v Olomouci 26.3.2017 Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 26.3.2017 1 / 14 Reakce na úkoly

Více

Struktura pamětí a procesů v DB Oracle. Radek Strnad

Struktura pamětí a procesů v DB Oracle. Radek Strnad Struktura pamětí a procesů v DB Oracle Radek Strnad radek.strnad@gmail.com 1 Základní rozdělení paměti Software codes area Chráněná část spustitelného kódu samotné DB. System global area (SGA) Sdílená

Více

PL/SQL. Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd.

PL/SQL. Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd. PL/SQL Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd. Rozšířením jazyka SQL o proceduralitu od společnosti ORACLE je jazyk

Více

Úvod do databázových systémů

Úvod do databázových systémů Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 8 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování Entita Entitní typ

Více

Stručný úvod pro programátory. Michal Kuchta

Stručný úvod pro programátory. Michal Kuchta Stručný úvod pro programátory Michal Kuchta Alespoň základní znalost PHP Základy klasického OOP a jeho implementaci v PHP Schopnost oprostit se od konvenčního tvoření stránek 2 Framework pro snazší vývoj

Více

Popis logování v aplikačním serveru

Popis logování v aplikačním serveru Popis logování v aplikačním serveru Zpracoval: Tomáš Urych U Mlýna 2305/22, 141 Praha 4 Záběhlice Dne: 3.10.2011 tel.: +420 585 203 370-2 e-mail: info@eso9.cz Revize: Urych Tomáš www.eso9.cz Dne: 26.3.2018

Více

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU 8.6.2011

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU 8.6.2011 Technologie Java Enterprise Edition Přemek Brada, KIV ZČU 8.6.2011 Přehled tématu Motivace a úvod Infrastruktura pro velké Java aplikace (Java základní přehled) Části třívrstvé struktury servlety, JSP

Více

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Kapitola 4. Úvod 11. Stručný úvod do relačních databází 13. Platforma 10g 23

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Kapitola 4. Úvod 11. Stručný úvod do relačních databází 13. Platforma 10g 23 Stručný obsah 1. Stručný úvod do relačních databází 13 2. Platforma 10g 23 3. Instalace, první přihlášení, start a zastavení databázového serveru 33 4. Nástroje pro administraci a práci s daty 69 5. Úvod

Více

1 Webový server, instalace PHP a MySQL 13

1 Webový server, instalace PHP a MySQL 13 Úvod 11 1 Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského

Více

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc.

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc. 1 Kurz Databáze Zpracování dat Doc. Ing. Radim Farana, CSc. Obsah Druhy dotazů, tvorba dotazu, prostředí QBE (Query by Example). Realizace základních relačních operací selekce, projekce a spojení. Agregace

Více

Jazyk C# - přístup k datům

Jazyk C# - přístup k datům Jazyk C# - přístup k datům Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Zpracování dat po částech ( stránkování DataSetu) BI-PCS

Více

Fronta (Queue) Úvod do programování. Fronta implementace. Fronta implementace pomocí pole 1/4. Fronta implementace pomocí pole 3/4

Fronta (Queue) Úvod do programování. Fronta implementace. Fronta implementace pomocí pole 1/4. Fronta implementace pomocí pole 3/4 Fronta (Queue) Úvod do programování Michal Krátký 1,Jiří Dvorský 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programování, 2004/2005 Fronta uplatňuje mechanismus přístupu FIFO first

Více

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE 2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE Studijní cíl Tento blok je věnován základní syntaxi příkazu SELECT, pojmům projekce a restrikce. Stručně zde budou představeny příkazy

Více

C# - Databáze úvod, ADO.NET. Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí

C# - Databáze úvod, ADO.NET. Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí C# - Databáze úvod, ADO.NET Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí Co je to databáze? Databáze je určitá uspořádaná množina informací

Více

Michal Augustýn www.augi.cz ALWIL Software Microsoft Most Valuable Professional

Michal Augustýn www.augi.cz ALWIL Software Microsoft Most Valuable Professional Michal Augustýn www.augi.cz ALWIL Software Microsoft Most Valuable Professional ASP.NET/IIS MVC v ASP.NET MVC Routing Controllery Views master pages kompozice framework pro tvorbu webového rozhraní na

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký 1, Miroslav Beneš 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Nové jazykové brány do Caché. Daniel Kutáč

Nové jazykové brány do Caché. Daniel Kutáč Nové jazykové brány do Caché Daniel Kutáč O čem budeme mluvit.net T/SQL Perl Python MultiValue Basic Téma.NET provider .NET Provider Co lze již dnes Factory / VisM ODBC.NET Web Services Factory a VisM

Více

8.2 Používání a tvorba databází

8.2 Používání a tvorba databází 8.2 Používání a tvorba databází Slide 1 8.2.1 Základní pojmy z oblasti relačních databází Slide 2 Databáze ~ Evidence lidí peněz věcí... výběry, výpisy, početní úkony Slide 3 Pojmy tabulka, pole, záznam

Více

Úvod do aplikací internetu a přehled možností při tvorbě webu

Úvod do aplikací internetu a přehled možností při tvorbě webu CVT6 01a Úvod do aplikací internetu a přehled možností při tvorbě webu Internet a www Internet? Služby www ftp e-mail telnet NetNews konference IM komunikace Chaty Remote Access P2P aplikace Online games

Více

Informační systém pro rezervaci pokojů hotelu SPORT

Informační systém pro rezervaci pokojů hotelu SPORT VŠB Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky Informační systém pro rezervaci pokojů hotelu SPORT Programátorská příručka systému Příloha bakalářské práce 2006

Více

Bottle -- příklad. Databáze. Testovací data. id Jedinečný identifikátor řádku: Bude typu INT s AUTO_INCREMENT a nastavíme ho jako primární klíč

Bottle -- příklad. Databáze. Testovací data. id Jedinečný identifikátor řádku: Bude typu INT s AUTO_INCREMENT a nastavíme ho jako primární klíč Bottle -- příklad V tomto příkladu se pokusíme vytvořit malou aplikaci umožňující psát jednoduché poznámky. Databáze Nejprve je třeba vytvořit v databázovém serveru uživatele (pokud už není vytvořen) a

Více

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita Aktivní webové stránky Úvod: - statické webové stránky: pevně vytvořený kód HTML uložený na serveru, ke kterému se přistupuje obvykle pomocí protokolu HTTP (HTTPS - zabezpečený). Je možno používat i různé

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006 Michal Krátký Tvorba informačních systémů 1/35 Konceptuální

Více

TÉMATICKÝ OKRUH TZD, DIS a TIS

TÉMATICKÝ OKRUH TZD, DIS a TIS TÉMATICKÝ OKRUH TZD, DIS a TIS Číslo otázky : 20. Otázka : Datová vrstva informačního systému. Nezávislý přístup k datům - standardy ODBC/JDBC. Architektura a použití ADO.NET. Obsah : 1. ODBC 2. JDBC 2.1

Více

Webové služby pro. CenovaMapa.cz

Webové služby pro. CenovaMapa.cz OctopusPro s.r.o. Webové služby pro CenovaMapa.cz Verze: 1.21 Datum vytvoření: 21.10. 2015 Datum poslední aktualizace: 7.7. 2016 Copyright OctopusPro s.r.o, Praha, 2012-2017 S t r á n k a 2 Obsah: 1 ÚVOD...

Více

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE

Více

ISZR Referenční agent.net

ISZR Referenční agent.net Informační systém základních registrů ISZR Referenční agent.net Název dokumentu: ISZR Referenční agent.net Verze: 1.04 Projekt: ISZR Stádium: Pracovní Autor/Autoři: Pavel Odstrčil Jméno souboru: ISZR Referenční

Více

Ruby on Rails. Bc. Tomáš Juřík Bc. Bára Huňková

Ruby on Rails. Bc. Tomáš Juřík Bc. Bára Huňková Ruby on Rails Bc. Tomáš Juřík Bc. Bára Huňková Co nás dnes čeká? Ruby (programovací jazyk) Ruby on Rails (webový framework) Praktická ukázka Ruby (programovací jazyk) Ruby (programovací jazyk) Skriptovací

Více

SQL v14. 4D Developer konference. 4D Developer conference 2015 Prague, CZ Celebrating 30 years

SQL v14. 4D Developer konference. 4D Developer conference 2015 Prague, CZ Celebrating 30 years SQL v14 4D Developer konference Obsah části SQL Porovnání 4D a SQL Nové příkazy SQL Upravené příkazy SQL Optimalizace SQL SQL v14 porovnání Definice dat - struktury Manipulace s daty Definice dat Vytvoření

Více