JAVA JDBC Java, letní semestr 2018
|
|
- Luděk Pavlík
- před 7 lety
- Počet zobrazení:
Transkript
1 JAVA JDBC
2 Přehled rozhraní pro přístup k relační databázi jednotné nezávislé na databázi výrobce databáze musí dodat JDBC driver umožňuje vykonávání SQL dotazů přístup k výsledkům dotazů podobné reflection API balíky java.sql, javax.sql verze JDK 1.4 JDBC 3.0 JDK 6 JDBC 4.0 JDK 7 JDBC 4.1 JDK 8 JDBC 4.2 JDK 9, 10 JDBC 4.3
3 JDBC Driver JDBC API v podstatě jen rozhraní implementace dodána přes driver driver explicitně natáhnout a zaregistrovat Class.forName("com.driver.Name"); po natažení driveru, vytvořit připojení na DB Connection con = DriverManager.getConnection(url, "mylogin", "mypassword"); url jdbc:mysql://localhost/test jdbc:odbc:source
4 JDBC Driver typy driveru Native-protocol pure Java driver Native-API partly-java driver JDBC-Net pure Java driver JDBC-ODBC bridge plus ODBC driver
5 Základní třídy a rozhraní DriverManager třída všechny metody jsou statické getconnection() několik variant getdrivers() všechny natažené drivery getlogwriter(), setlogwriter() println() zapis do logu getlogintimeout(), setlogintimeout()
6 Základní třídy a rozhraní Connection interface vytváření a vykonávání dotazů ResultSet interface výsledky dotazu
7 Základní příklad Class.forName("com.mysql.jdbc.Driver"); Connection con = DriverManager.getConnection( "jdbc:mysql://localhost/test", "",""); Statement stmt = con.createstatement(); ResultSet rs = stmt.executequery("select * FROM test"); while (rs.next()) { // zpracování výsledků po řádcích } stmt.close(); con.close();
8 Přístup k výsledkům podbné reflection API getstring(), getint(),... pracuje se nad aktuálním řádkem identifikace sloupce pomocí jména pořadí ResultSet rs = stmt.executequery("select ID, NAME FROM TEST"); while (rs.next()) { int id = rs.getint("id"); String s = rs.getstring("string"); System.out.println(id + " " + s); }
9 Přístup k výsledkům ResultSet.next() musí být zavoláno i na první řádek getstring() lze volat na všechny typy nelze na nové SQL3 typy automatická konverze na String
10 Dotazy Connection.createStatement() vytvoření dotazu ("prázdného") Statement.executeQuery("...") pro dotazy vracející vysledky (SELECT) výsledky přes ResultSet Statement.executeUpdate("...") pro dotazy nevracející výsledky UPDATE CREATE TABLE
11 PreparedStatement PreparedStatement interface dědí od Statement předpřipravený dotaz s parametry vyplní se před použitím metody settype(int index, type v) clearparameters() PreparedStatement pstmt = con.preparestatement("update EMPLOYEES SET SALARY =? WHERE ID =?"); pstmt.setbigdecimal(1, ) pstmt.setint(2, )
12 Transakce implicitně auto-commit mód commit se provede po každé změně auto-commit lze zrušit con.setautocommit(false); // // posloupnost změn // con.commit(); // nebo con.rollback() con.setautocommit(true);
13 Callable Statements pro přístup k uloženým procedurám dědí od PreparedStatement nastavení parametrů settype(int index, type v) návratový typ nutno zaregistrovat registeroutparameter(int index, int sqltype) formát a) {?= call <procedure-name>[<arg1>,<arg2>, ]} b) {call <procedure-name>[<arg1>,<arg2>, ]} CallableStatement cs = con.preparecall("{call SHOW_SUPPLIERS}"); ResultSet rs = cs.executequery();
14 Ošetření chyb SQLException a její potomci String getsqlstate() definováno X/Open int geterrorcode() specifický pro konkrétní databázi varování (warnings) SQLWarning není to výjimka nutno explicitně testovat Statement.getWarnings() SQLWarning.getNextWarning()
15 Batch update zpracování více dotazů najednou Statement.addBatch(String sql) přidá dotaz do dávky int[] Statement.executeBatch(); provede dávku vrací počet ovlivněných řádků pro každý dotaz v dávce
16 Updatable ResultSet implicitní ResultSet nelze měnit, lze se pohybovat pouze vpřed lze změnit při vytváření Statementu Statement stmt = con.createstatement( ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet rs = stmt.executequery("select..."); výsledný ResultSet lze měnit, lze se v něm volně pohybovat, nejsou v něm vidět změny od ostatních uživatelů
17 Java DB distribuovaná s Java 7 a 8 není v Java 9+ Oraclem podporovaná distribuce databáze Apache Derby kompletně v Javě lze používat samostatně jako server uvnitř jiné aplikace snaha o malou spotřebu paměti (~ 2MB) existují i jiné databáze napsané v Javě
18 Objektové databáze ne-relační databáze ukládaní a vyhledávání objektů vlastní přístup bez JDBC NeoDatis db4o příklad pro NeoDatis Sport sport = new Sport("volley-ball"); ODB odb = ODBFactory.open("test.neodatis"); odb.store(sport); Objects<Player> players = odb.getobjects(player.class); odb.close(); moc se nepoužívají
19 ORM problém s OO databázemi jednoduché na použití nepříliš výkonné, nepříliš podporované,... řešení ORM (object-relational mapping) vrstva mapující relační databázi na objekty zjednodušeně třída ~ schéma tabulku objekt ~ řádek v tabulce JDBC se typicky používá uvnitř automaticky Hibernate nejpoužívanější ORM pro Javu implementace i pro další technologie
20 Dokumentové databáze ukládání dokumentů semi-structured date MongoDB dokumenty ~ JSON MongoClient mongoclient = new MongoClient(); MongoDatabase database = mongoclient.getdatabase("mydb"); MongoCollection<Document> collection = database.getcollection("test"); Document doc = new Document("name", "MongoDB").append("type", "database").append("count", 1).append("versions", Arrays.asList("v3.2", "v3.0", "v2.6")).append("info", new Document("x", 203).append("y", 102)); collection.insertone(doc);
21 JAVA Hibernate
22 Architektura image source:
23 Základní API Session propojení mezi DB a aplikací schovává v sobě spojení do DB JDBC connection spravuje objekty obsahuje cache objektů SessionFactory tvůrce session obsahuje mapovaní mezi objekty a DB může obsahovat cache objektů persistentní objekty obyčejné Java objekty POJO/JavaBeans měly by dodržovat pravidla pro JavaBeans ale není to nutné
24 Použití zjednodušeně vytvořit konfiguraci XML vytvořit třídy Java vytvořit mapovaní XML nebo Java anotace
25 Konfigurace XML soubor definuje připojení do DB typ (dialekt) DB kde je mapovaní <hibernate-configuration> <session-factory> <property name="connection.driver_class">org.h2.driver</property> <property name="connection.url">jdbc:h2:mem:db1;db_close_delay=-1;mvcc=true</property> <property name="connection.username">sa</property> <property name="connection.password"/> <property name="connection.pool_size">1</property> <property name="dialect">org.hibernate.dialect.h2dialect</property> <property name="cache.provider_class">org.hibernate.cache.nocacheprovider</property> <property name="show_sql">true</property> <property name="hbm2ddl.auto">create</property> <mapping resource="org/hibernate/tutorial/hbm/event.hbm.xml"/> </session-factory> </hibernate-configuration>
26 Třídy pro persistentní data POJO měly by dodržovat pravidla pro JavaBeans není nutné je potřeba konstruktor bez parametrů jeho viditelnost je libovolná public class Event { private Long id; private String title; private Date date; public Event() {} public Event(String title, Date date) { this.title = title; this.date = date; } public Long getid() { return id; } private void setid(long id) { this.id = id; } public Date getdate() { return date; } public void setdate(date date) { this.date = date; } public String gettitle() { return title; } public void settitle(string title) { this.title = title; } }
27 Mapování XML soubor mapování atributů třídy na sloupce definuje se jméno typ není nutný, pokud je zřejmý Hibernate typy nejsou to ani Java ani SQL typy jsou to převodníky mezi Java a SQL typy sloupec není nutný pokud je stejný jako jméno <hibernate-mapping package="org.hibernate.tutorial.hbm"> <class name="event" table="events"> <id name="id" column="event_id"> <generator class="increment"/> </id> <property name="date" type="timestamp" column="event_date"/> <property name="title"/> </class> </hibernate-mapping>
28 Mapování name = "EVENTS" ) public class Event { private Long id; private String title; private Date date; public Event() { } public Event(String title, Date date) { this.title = title; this.date = date; } mapování lze i pomocí anotací v konfiguraci je pak v mapování přímo odkaz @GenericGenerator(name="increment", strategy = "increment") public Long getid() { return id; } private void setid(long id) { this.id = = "EVENT_DATE") public Date getdate() { return date; } public void setdate(date date) { this.date = date; } } public String gettitle() { return title; } public void settitle(string title) { this.title = title; }
29 Používání SessionFactory sessionfactory = new Configuration().configure().buildSessionFactory(); Session session = sessionfactory.opensession(); session.begintransaction(); session.save(new Event("Our very first event!", new Date())); session.save(new Event("A follow up event", new Date())); session.gettransaction().commit(); session.close(); List result = session.createquery( "from Event" ).list();
30 Stavy objektů Transient vytvořený objekt (new) ale ještě neasociovaný s Hibernate session Persistent objekt asociovaný se session vytvořený a pak uloženy nebo načtený Detached perzistentní objekt jehož session byla skončena lze asociovat s novou session
31 Používání objektů načítání sess.load( Event.class, new Long(id) ); při neexistenci vyhazuje výjimku nemusí nutně sahat ihned do DB sess.get( Event.class, new Long(id) ); při neexistenci vrací null dotazování sess.createquery(...).list() modifikování objektů Event e = sess.load( Event.class, new Long(69) ); e.set... sess.flush();
32 Používání objektů modifikace odpojených objektů Event e = sess.load( Event.class, new Long(69) ); e.set secondsess.update(e); mazání objektů sess.delete(e);
33 Dotazování HQL Hibernate query language obdoba SQL select foo from Foo foo, Bar bar where foo.startdate = bar.date lze používat i nativní SQL sess.createsqlquery("select * FROM CATS").list();
34 Hibernate... další součásti vytváření tříd podle tabulek podpora pro full-text vyhledávání verzování objektů validace objektů podpora JPA (Java Persistence API)...
35 JAVA Práce s XML
36 Přehled JAXP Java API for XML Processing čtení, zápis a transformaci XML SAX, DOM, XSLT podle W3C podporuje různé implementace referenční implementace součástí JDK lze použít jiné JDOM zjednodušený DOM pro Javu JAXB Java Architecture for XML Binding mapování XML <=> Java objekty Elliotte Rusty Harold: Processing XML with Java kniha volně ke stažení
37 JAXP přehled balíky javax.xml.parsers org.w3c.dom org.xml.sax javax.xml.transform SAX (Simple API for XML) průchod přes XML dokument element po elementu na každém elementu něco provést rychlé, nenáročné na paměť složitější na použití DOM postaví z dokumentu strom v paměti jednoduché na použití pomalé, náročné na paměť 37
38 SAX 38
39 DOM 39
40 DOM: použití DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newdocumentbuilder(); // vytvoří celý strom v paměti Document document = builder.parse("file.xml"); Element root = document.getdocumentelement(); NodeList nl = root.getchildnodes(); for (int i=0; i<nl.length(); i++) { Node n = nl.item(i);... } 40
41 SAX: použití class MyHandler extends DefaultHandler { void startdocument() {... } void enddocument() {... } void startelement(...) {... }... } SAXParserFactory factory = SAXParserFactory.newInstance(); SAXParser saxparser = factory.newsaxparser(); saxparser.parse("file.xml", new MyHandler() ); 41
42 Implementace existují různé implementace JAXP DocumentBuilderFactory.newInstance() i SAXParserFactory.newInstance() uvnitř používají ServiceLoader varianta newinstance(string factoryclassname, ClassLoader classloader) hledá danou třídu 42
43 JDOM Přehled API pro XML přímo pro Javu používá std. API z Javy (kolekce,...) jednoduché na používání rychlé "light-weight" 43
44 Použití SAXBuilder builder = new SAXBuilder(); Document doc = builder.build(filename); Element root = doc.getrootelement(); List children = current.getchildren(); Iterator iterator = children.iterator(); while (iterator.hasnext()) { Element child = (Element) iterator.next();... } 44
45 JAXB přehled automatické mapovaní mezi XML dokumenty a Java objekty princip Java třídy a odpovídající XML schema lze vygenerovat třídy ze schematu i obraceně použití vytvoření Java objektů z XML (unmarshaling) práce s Java objekty uložení Java objektů do XML (marshaling) deprecated od Java 9 45
46 JAXB příklad <?xml version="1.0" encoding="utf-8"?> <xsd:schema xmlns:xsd=" xmlns:jxb=" jxb:version="2.0"> <xsd:element name="greetings" type="greetinglisttype"/> <xsd:complextype name="greetinglisttype"> <xsd:sequence> <xsd:element name="greeting" type="greetingtype" maxoccurs="unbounded"/> </xsd:sequence> </xsd:complextype> <xsd:complextype name="greetingtype"> <xsd:sequence> <xsd:element name="text" type="xsd:string"/> </xsd:sequence> <xsd:attribute name="language" type="xsd:language"/> </xsd:complextype> </xsd:schema> 46
47 JAXB příklad vygenerování tříd xjc -p hello hello.xsd 47
48 JAXB příklad public class Hello { private ObjectFactory of; private GreetingListType grlist; public Hello(){ of = new ObjectFactory(); grlist = of.creategreetinglisttype(); } public void make( String t, String l ){ GreetingType g = of.creategreetingtype(); g.settext( t ); g.setlanguage( l ); grlist.getgreeting().add( g ); } public void marshal() { try { JAXBElement gl = of.creategreetings( grlist ); JAXBContext jc = JAXBContext.newInstance( "hello" ); Marshaller m = jc.createmarshaller(); m.marshal( gl, System.out ); } catch( JAXBException jbe ){ } } Java, } letní semestr
49 JAXB příklad Hello h = new Hello(); h.make( "Bonjour, madame", "fr" ); h.make( "Hey, you", "en" ); h.marshal(); <?xml version="1.0" encoding="utf-8" standalone="yes"?> <Greetings> <Greeting language="fr"> <Text>Bonjour, madame</text> </Greeting> <Greeting language="en"> <Text>Hey, you</text> </Greeting> </Greetings> 49
50 JAVA Scripting API
51 Přehled podpora skriptovacích jazyku přímo z Javy integrace skriptů do Java programu volání skriptů používání Java objektů ze skriptu a obraceně JSR 223 Scripting for the Java TM Platform od Java 6 přímo součástí JDK součástí JDK je JavaScript engine Java 6-7 Mozilla Rhino engine Java 8 Nashorn engine implementace JavaScript jazyka v Javě implementuje rozhraní JSR 223 existuje mnoho implementací pro další jazyky stačí dát JAR balík na CLASSPATH
52 Proč jednotné rozhraní pro všechny skriptovací jazyky dříve si každá implementace řešila rozhraní po svém snadné požívání skr. jazyků proměnné bez typů automatické konverze programy není nutno kompilovat existence shelů použití složitější konfigurační soubory rozhraní pro administrátora aplikace rozšiřování aplikace (pluginy) skriptování v aplikaci obdoba jako JS v prohlížeči, VBScript v office,...
53 Použití balíček javax.scripting ScriptEngineManager základní třída nalezení a získání instance skript. enginu základní použití instance ScriptEngineManageru nalezení požadovaného enginu spuštění skriptu pomocí metody eval()
54 Hello world public class Hello { public static void main(string[] args) { ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getenginebyname("javascript"); //ScriptEngine engine = manager.getenginebyextension("js"); //ScriptEngine engine = manager.getenginebymimetype("application/javascript"); try { engine.eval("println( \"Hello World!\");" ); System.out.println( engine.eval( " 'Hello World again!' ")); } catch(scriptexception e) {... } } }
55 Přehled funkčnosti skript řetězec nebo znakový stream (reader) vyhodnocení přes ScriptEngine.eval() interface Compilable jeho implementace volitelná otestovat instanceof Compilable kompilace skriptu do byte-code interface Invocable jeho implementace volitelná otestovat instanceof Invocable volání metod a funkcí ze skriptů Bindings, ScriptContext prostředí pro vykonávání skriptů mapování proměnných sdílených mezi Javou a skriptem
56 Získání enginu (1) ScriptEngineManager.getEngineFactories() seznam všech ScriptEngineFactory for (ScriptEngineFactory factory : enginemanager.getenginefactories()) { System.out.println("Engine name: " + factory.getenginename()); System.out.println("Engine version: " + factory.getengineversion()); System.out.println("Language name: " + factory.getlanguagename()); System.out.println("Language version: " + factory.getlanguageversion()); System.out.println("Engine names:"); for (String name : factory.getnames()) { System.out.println(" " + name); } System.out.println("Engine MIME-types:"); for (String mime : factory.getmimetypes()) { System.out.println(" " + mime); } }
57 Získání enginu (2) ScriptEngineFactory.getEngine() nebo přímo ScriptEngineManager.getEngineByName() ScriptEngineManager.getEngineByExtension() ScriptEngineManager.getEngineByMimeType()
58 Skripty vykonání skriptu Object ScriptEngine.eval( String s,... Object ScriptEngine.eval( Reader r, předávání proměnných (základní varianta) void ScriptEngine.put(String name, Object value) Object ScriptEngine.get(String name) POZOR na konverze typů!
59 Předávání proměnných interface Bindings extends Map<String,Object> základní implementace SimpleBindings interface ScriptContext prostředí, ve kterém se skripty vykonávají základní implementace SimpleScriptContext obsahuje scopes scope = Binding speciální scopes ENGINE_SCOPE lokální pro ScriptEngine GLOBAL_SCOPE globální pro EngineManager getattribute(..) / setattribute(..) odpovídají getbindings(..).get / put lze nastavit standardní Reader a Writery (vstup a výstup) pro skript
60 Předávání proměnných zdroj obrázku:
61 Volání funkcí/metod interface Invocable volitelná funkčnost, je třeba testovat (instanceof) poskytuje volání funkcí skriptu z Java kódu volání metod objektů skriptu z Java kódu, pokud je skriptovací jazyk objektový implementace Java interface funkcemi (metodami) skriptu ScriptEngine engine = manager.getenginebyname("javascript"); Invocable inv = (Invocable) engine; engine.eval("function run() { println( 'funkce run'); };"); Runnable r = inv.getinterface(runnable.class); (new Thread(r)).start(); engine.eval("var runobj = { run: function() { println('metoda run'); } };"); o = engine.get("runobj"); r = inv.getinterface(o, Runnable.class); (new Thread(r)).start();
62 JavaScript engine v JDK (1) některé funkce odstraněny (nebo nahrazeny) převážně z důvodů bezpečnosti vestavěné funkce pro import Java balíčků importpackage(), importclass() balíčky přístupné přes Packages.JmenoBalíčku, pro nejpoužívanější balíčky jsou definované zkratky (proměnné): java (ekvivalentní Packages.java), org, com,.. java.lang není importován automaticky (možné konflikty objektů Object, Math,..) v Java 8 nutno nejdříve použít load("nashorn:mozilla_compat.js"); objekt JavaImporter pro ukrytí importovaných prvků do proměnné (předchází konfliktům) var imp = new JavaImporter( java.lang, java.io);
63 JavaScript engine v JDK (2) Java objekty v js vytváří se stejně jako v Javě var obj = new Trida(...) Javovské pole v js vytvoříme přes Java Reflection var pole = java.lang.reflect.array.newinstance(..) dále pracujeme běžně: pole[i], pole.length, var a = java.lang.reflect.array.newinstance( java.lang.string, 5); a[0] = "Hello" anonymní třídy anonymní implementace Java rozhraní var r = new java.lang.runnable() { run: function() { println( "running..."); } }; var th = null; th = new java.lang.thread( r); Java, letní semestr th.start(); 2018
64 JavaScript engine v JDK (3) anonymní třídy (pokrač.) autokonverze funkce na rozhraní s jednou metodou function func() { print("i am func!"); }; th = new java.lang.thread( func); th.start();
65 JavaScript engine v JDK (4) přetížené Java metody připomenutí overoading se děje při překladu (javac) při předání JavaScriptových proměnných Java metodám vybere script engine správnou variantu výběr můžeme ale ovlivnit objekt[ název_metody(typy parametrů) ](parametry) pozor! řetězec bez mezer!
66 Další enginy existuje velké množství hotových enginů awk, Haskell, Python, Scheme, XPath, XSLT, PHP,... použití stáhnout JAR dát JAR na CLASSPATH vytvoření vlastního enginu implementace API nutno implementovat alespoň ScriptEngineFactory ScriptEngine zabalení do JAR přidat soubor META-INF/services/javax.script.ScriptEngineFactory ScriptEngineManager používá ServiceLoader
67 Java, letní semestr Verze prezentace 2018 AJ07.cz Tato prezentace podléhá licenci Creative Commons Uveďte autora-neužívejte komerčně 4.0 Mezinárodní License. 67
JAVA V JDBC Java, letní semestr
JAVA JDBC Přehled rozhraní pro přístup k relační databázi jednotné nezávislé na databázi výrobce databáze musí dodat JDBC driver umožňuje vykonávání SQL dotazů přístup k výsledkům dotazů podobné reflection
JAVA Moduly Java, letní semestr 2019
JAVA Moduly Modularizace modul explicitně definované co poskytuje i co požaduje proč koncept classpath je křehký chybí zapouzření 2 3 Modulární aplikace motivace proč aplikace více a více komplexní skládání
JAVA V Hibernate Java, letní semestr
JAVA Hibernate ORM Object/Relational Mapping mapovaní mezi objekty a záznamy v relační databázi zjednodušeně třída ~ schéma tabulky objekt ~ řádek v tabulce ORM udržuje vazby mezi objektem a řádkem v tabulce
Java a XML. 10/26/09 1/7 Java a XML
Java a XML Java i XML jsou přenositelné V javě existuje podpora pro práci s XML, nejčastější akce prováděné při zpracování XML: načítání XML elementů generování nových elementů nebo úprava starého zápis
Semináˇr Java X JDBC Semináˇr Java X p.1/25
Seminář Java X JDBC Seminář Java X p.1/25 Úvod JDBC API poskytuje základní rozhraní pro unifikovaný přístup k databázím Programátor je odstíněn od specifického API databáze Jednotné rozhraní JDBC pro všechny
public static void main(string[] args) { System.out.println(new Main().getClass().getAnnotation(Greet.class).text());
Anotace a Hibernate Aleš Nosek, Ondřej Vadinský, Daniel Krátký Anotace v Javě Anotace jsou novinkou v Javy verze 5. Anotace umožňují doplnit kód Javy o dodatečné informace. Zapisují se přímo do zdrojového
Typ 2 - připojení prostřednictvím kódu nativního klienta pro přístup k síti
Práce s databází Specifikace JDBC Pro práci s relačními databázemi poskytuje Java rozhraní JDBC Java Database Connectivity. Specifikace tohoto rozhraní má několik verzí. Verze 1.x je součástí SDK již od
Datová vrstva informačního systému. Miroslav Beneš
Datová vrstva informačního systému Miroslav Beneš Obsah přednášky JDBC architektura ovladače použití ODBC architektura ovladače a zdroje dat použití PHP & MySQL Datová vrstva informačního systému 2 Java
JAVA Moduly Java, letní semestr 2018
JAVA Moduly Modularizace modul explicitně definované co poskytuje i co požaduje proč koncept classpath je křehký chybí zapouzření 2 Modularizace modul explicitně definované co poskytuje i co požaduje proč
O Apache Derby detailněji. Hynek Mlnařík
O Apache Derby detailněji Hynek Mlnařík Agenda Historie Vlastnosti Architektura Budoucnost Historie 1997 Cloudscape Inc. - JBMS 1999 Informix Software, Inc. odkoupila Cloudscape, Inc. 2001 IBM odkoupila
Anotace a Hibernate. Aleš Nosek Ondřej Vadinský Daniel Krátký
Anotace a Hibernate Aleš Nosek Ondřej Vadinský Daniel Krátký Anotace v Javě novinka Javy 5 umožňují k Java kódu přidávat dodatečné informace (podobně jako JavaDoc) za předchůdce anotací je možné považovat
STARÁ DOBRÁ JAVA A PERSISTENCE S CACHÉ
STARÁ DOBRÁ JAVA A PERSISTENCE S CACHÉ Technologie Jalapeño od InterSystems Andreas Dieckow, Principal Product Manager, Strategic Planning InterSystems Corporation Úvod Programovací jazyk Java má díky
Datová vrstva informačního systému. Java Database Connectivity JDBC. Obsah přednášky JDBC. Datová vrstva informačního systému
Datová vrstva informačního systému Miroslav Beneš Obsah přednášky JDBC architektura ovladače použití ODBC architektura ovladače a zdroje dat použití PHP & MySQL Datová vrstva informačního systému 2 Java
Platforma Java. Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. Petr Krajča (UP) KMI/PJA: Seminář V. 27. říjen, / 15
Platforma Java Objektově relační mapování II Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci Petr Krajča (UP) KMI/PJA: Seminář V. 27. říjen, 2016 1 / 15 Dotazování vyhledání objektu podle
API pro práci s XML. Jirka Kosek. Poslední modifikace: $Date: 2014/12/17 17:15:28 $ Copyright 2001-2014 Jiří Kosek
Jirka Kosek Poslední modifikace: $Date: 2014/12/17 17:15:28 $ Obsah Úvod... 3 Parsery XML... 4 Rozhraní pro přístup k dokumentu XML... 5 Další charakteristiky parseru... 6 Sekvenční čtení... 7 Push parsery...
14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.
Základy programování (IZAPR) Přednáška 7 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 229, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky 7 Parametry metod, předávání
Iterator & for cyklus
Iterator & for cyklus for (Object o : foo) funguje pokud je foo pole nebo je foo iterovatelné jako to zařídit? implementovat interface java.lang.iterable Iterable má jednu metodu java.util.iterator iterator()
Rozhraní SAX, SAX vs. SAX2. Jaroslav Ciml
Rozhraní SAX, SAX vs. SAX2 Jaroslav Ciml Použití SAX - připomenutí Vytvoření instance parseru XMLReader xmlreader = XMLReaderFactory.createXMLReader(); Registrace handleru xmlreader.setcontenthandler(
Definice třídy. úplná definice. public veřejná třída abstract nesmí být vytvářeny instance final nelze vytvářet potomky
JAVA Třídy Definice třídy úplná definice [public] [abstract] [final] class Jmeno [extends Predek] [impelements SeznamInterfacu] {... // telo tridy public veřejná třída abstract nesmí být vytvářeny instance
RMI Remote Method Invocation
2. cvičení RMI Remote Method Invocation 2007/09 ver.2.0 1 RMI co to je? vyvolání metody z jiné JVM lokalizace vzdáleného objektu komunikace se vzdálenými objekty přenos objektu v bytecode typicky klient
JAVA. Další jazyky kompilovatelné do Java byte-code
JAVA Další jazyky kompilovatelné do Java byte-code Přehled Scala objektový a funkcionální jazyk Closure funkcionální jazyk dialekt Lispu Groovy skritpovací jazyk Kotlin nová Java Jython Java implementace
4. lekce Přístup k databázi z vyššího programovacího jazyka
4. lekce Přístup k databázi z vyššího programovacího jazyka Studijní cíl Tento blok popisuje základní principy přístupu k databázi z vyššího programovacího jazyka. Doba nutná k nastudování 2-3 hodiny Průvodce
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é
Ú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
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ánoční hrátky s JAXB
Vánoční hrátky s JAXB http://jaxb.dev.java.net Martin Grebáč, martin.grebac@sun.com Pavel Bucek, pavel.bucek@sun.com 1 Přehled Příklad 1 - Jednoduché čtení/zapisování z/do XML Co je JAXB > O projektu >
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
Bridge. Známý jako. Účel. Použitelnost. Handle/Body
Bridge Bridge Známý jako Handle/Body Účel odděluje abstrakci (rozhraní a jeho sémantiku) od její konkrétní implementace předchází zbytečnému nárůstu počtu tříd při přidávání implementací používá se v době
GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím
GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER váš partner na cestě od dat k informacím globtech spol. s r.o. karlovo náměstí 17 c, praha 2 tel.: +420 221 986 390 info@globtech.cz
Oracle XML DB. Tomáš Nykodým
Oracle XML DB Tomáš Nykodým xnykodym@fi.muni.cz Osnova Oracle XML DB Architektura Oracle XML DB Hlavní rysy Oracle XML DB Hlavní rysy Oracle XML DB - pokračování XMLType XML Repository Využívání databázových
Ukládání a vyhledávání XML dat
XML teorie a praxe značkovacích jazyků (4IZ238) Jirka Kosek Poslední modifikace: $Date: 2014/12/04 19:41:24 $ Obsah Ukládání XML dokumentů... 3 Ukládání XML do souborů... 4 Nativní XML databáze... 5 Ukládání
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
Jalapeño: pekelně ostrá Java persistence v Caché. Daniel Kutáč Senior Sales Engineer
Jalapeño: pekelně ostrá Java persistence v Caché Daniel Kutáč Senior Sales Engineer Co je Jalapeño Pár slov ředitele vývoje software Klikni! Tak tedy, o čem dnes budeme mluvit Architektura Instalace Anotace
Vytváření uživatelských datových typů a funkcí v Javě
IBM Software Group Vytváření uživatelských datových typů a funkcí v Javě Jan Musil (jan_musil@cz.ibm.com) IBM Certified System Administrator - Informix Dynamic Server V11 2007 IBM Corporation Přehled prezentace
UJO Framework. revoluční architektura beans. verze 0.80 http://ujoframework.org/
UJO Framework revoluční architektura beans verze 0.80 http://ujoframework.org/ Pavel Pone(c), září 2008 Historie rok 2004 upravené objekty z frameworku Cayenne nevýhodou byla špatná typová kontrola rok
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
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
Podmínky na zápočet. Java, zimní semestr
Podmínky na zápočet zápočtový test u počítače zápočtový program "rozumná" velikost téma do 12. 1. 2018 emailem cvičícímu domácí úkoly 225 bodů (max 450) docházka víc než 3 absence 315 bodů 1 Domácí úkoly
George J. Klir. State University of New York (SUNY) Binghamton, New York 13902, USA gklir@binghamton.edu
A Tutorial Advances in query languages for similarity-based databases George J. Klir Petr Krajča State University of New York (SUNY) Binghamton, New York 13902, USA gklir@binghamton.edu Palacky University,
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
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
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ý
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
GUI. Systémová integrace pro desktopové aplikace
GUI Systémová integrace pro desktopové aplikace 1 java.awt.desktop systémová integrace desktopových aplikací static boolean isdesktopsupported() test zda je integrace k dispozici static Desktop getdesktop()
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
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
Java a Caché IV: Manipulace s objekty
1 z 6 11.1.2007 11:13 přihlašovací jméno heslo Registrace Přihlásit články odkazy aktuality CZJUG konference o portálu přidejte se o nás Vyhledávání Text: najdi Oborový filtr J2ME J2SE J2EE Enterprise
Statické proměnné a metody. Tomáš Pitner, upravil Marek Šabo
Statické proměnné a metody Tomáš Pitner, upravil Marek Šabo Úvod Se statickou metodou jsme se setkali už u úplně prvního programu - Hello, world! public class Demo { public static void main(string[] args)
Nástroje a frameworky pro automatizovaný vývoj. Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/
Nástroje a frameworky pro automatizovaný vývoj Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Proces vývoje webové aplikace Předepsaná adresářová struktura. Kompilace zdrojových kódů.
Programování v Javě I. Leden 2008
Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Leden 2008 Radek Kočí Seminář Java Programování v Javě (1) 1/ 45 Téma přednášky Datové typy Deklarace třídy Modifikátory
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
Michal Krátký. Tvorba informačních systémů, 2008/2009. Katedra informatiky VŠB Technická univerzita Ostrava. Tvorba informačních systémů
Tvorba informačních systémů 1/18 Tvorba informačních systémů Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2008/2009 Tvorba informačních systémů 2/18 Úvod
Programování v Javě I. Únor 2009
Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Únor 2009 Radek Kočí Seminář Java Programování v Javě (1) 1/ 44 Téma přednášky Datové typy Deklarace třídy Modifikátory
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ů
Databáze v Java aplikacích, JPA Handout
Databáze v Java aplikacích, JPA Handout Martin Ledvinka martin.ledvinka@fel.cvut.cz 11. listopadu 2015 1 Přístup k databázím v Javě Jednou z mnoha výhod (a občas nevýhodou) platformy Java je její zaměření
Replikace je proces kopírování a udržování databázových objektů, které tvoří distribuovaný databázový systém. Změny aplikované na jednu část jsou
Administrace Oracle Replikace je proces kopírování a udržování databázových objektů, které tvoří distribuovaný databázový systém. Změny aplikované na jednu část jsou zachyceny a uloženy lokálně před poslání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
Podpora XML v.net. Podpora XML v.net. nezávislý publicista. Jirka Kosek. http://www.kosek
Podpora XML v.net Podpora XML v.net Jirka Kosek nezávislý publicista http://www.kosek kosek.cz Co nás čeká? Co nás čeká?! podpora XML ve VisualStudio.NET! architektura System.Xml! čtení XML dokumentů!
JAVA Unit testing Java, zimní semestr
JAVA Unit testing Úvod unit testing testování malý jednotek funkčnosti jednotka nezávislá na ostatních testování zcela oddělené vytvářejí se pomocné objekty pro testování kontext typicky v OO jazycích
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
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ů
JAVA. Krátce o Reflection API
JAVA Krátce o Reflection API 1 Přehled reflection, introspection umožňuje zjišťování informací o třídách, atributech, metodách vytváření objektů volání metod... balík java.lang.reflect třída java.lang.class
Rozhraní pro práci s XML dokumenty. Roman Malo
Rozhraní pro práci s XML dokumenty Roman Malo Práce s XML dokumenty Datově a dokumentově orientované XML dokumenty Problém preference elementů a atributů Strom elementů Strom uzlů Základní zpracování dokumentů
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ý
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
Abstraktní datové typy: zásobník
Abstraktní datové typy: zásobník 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 Abstraktní datové typy omezené rozhraní
Jazyk C# (seminář 6)
Jazyk C# (seminář 6) Pavel Procházka KMI 29. října 2014 Delegát motivace Delegáty a události Jak docílit v C# funkcionální práce s metodami v C je to pomocí pointerů na funkce. Proč to v C# nejde pomocí
Pokročilé techniky tvorby sestav v Caché. ZENové Reporty
Pokročilé techniky tvorby sestav v Caché ZENové Reporty Úvodem Jednoduché sestavy Pokročilé sestavy Ladění Historie ZEN reporty sdílejí podobný princip definování obsahu jako ZENové stránky Byly uvedeny
8 Třídy, objekty, metody, předávání argumentů metod
8 Třídy, objekty, metody, předávání argumentů metod Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost třídám a objektům, instančním
Generické programování
Generické programování Od C# verze 2.0 = vytváření kódu s obecným datovým typem Příklad generická metoda, zamění dva parametry: static void Swap(ref T p1, ref T p2) T temp; temp = p1; p1 = p2; p2 =
JAVA V RMI Java, letní semestr
JAVA RMI Přehled Remote Method Invocation používání vzdálených objektů objekty v jiné VM (na stejném počítači i přes síť) jako by to byly lokální objekty (téměř) pouze volání trvají déle Vzdálené volání
Definice třídy. úplná definice. public veřejná třída abstract nesmí být vytvářeny instance final nelze vytvářet potomky
JAVA Třídy Definice třídy úplná definice [public] [abstract] [final] class Jmeno [extends Predek] [impelements SeznamInterfacu] {... // telo tridy public veřejná třída abstract nesmí být vytvářeny instance
DPKOM_06 Dědičnost entit a zpětná volání posluchači
DPKOM_06 Dědičnost entit a zpětná volání posluchači 1 Obsah přednášky Jedna tabulka pro hierarchii tříd Tabulka pro konkrétní třídu Tabulka pro podtřídu Neentitní základní třídy Události zpětného volá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
Seznamy a iterátory. Kolekce obecně. Rozhraní kolekce. Procházení kolekcí
Kolekce obecně Seznamy a iterátory 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 Kolekce ::= homogenní sada prvků
Tvorba informačních systémů
Tvorba informačních systémů Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2006/2007 c 2006 2007 Michal Krátký Tvorba informačních systémů 1/37 Obsah 8.
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í
Technologie JavaBeans
Technologie JavaBeans 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 Historie Komponentový model Typy komponent
MBI - technologická realizace modelu
MBI - technologická realizace modelu 22.1.2015 MBI, Management byznys informatiky Snímek 1 Agenda Technická realizace portálu MBI. Cíle a principy technického řešení. 1.Obsah portálu - objekty v hierarchiích,
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é
Návrh softwarových systém. Návrh softwarových systémů
Návrh softwarových systém ů - Java 8 Jiří Šebek Návrh softwarových systémů (B6B36NSS) Co je nového? Default interface methods Lambda expressions Method references and repeatable annotations Streams Functional
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
Algoritmizace a programování
Algoritmizace a programování Struktura programu Vytvoření nové aplikace Struktura programu Základní syntaktické elementy První aplikace Verze pro akademický rok 2012/2013 1 Nová aplikace NetBeans Ve vývojovém
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
ANT. Aplikační programování v Javě (BI-APJ) - 1 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha
ANT Aplikační programování v Javě (BI-APJ) - 1 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
Jak správně na Hibernate. Martin Hlavatý
Jak správně na Hibernate Martin Hlavatý Úvod Co je Hibernate? Hibernate je ORM! Agenda 18:00 18:10 ORM základní koncepty, historie, vymezení 18:10 18:25 Plain Old JDBC 18:25 18:50 Základy Hibernate 18:50
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
SOUBORY, VSTUPY A VÝSTUPY POKRAČOVÁNÍ
SOUBORY, VSTUPY A VÝSTUPY POKRAČOVÁNÍ Vstupy a výstupy pokračování Kódování textů Texty (řetězce nebo znaky) v jazyce C# jsou v paměti uloženy v kódování označovaném běžně Unicode (kódová stránka 1200).
Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 3.4.
Základy programování 4 - C# - 8. cvičení Radek Janoštík Univerzita Palackého v Olomouci 3.4.2017 Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 3.4.2017 1 / 10 Reakce na úkoly
Tvorba informačních systémů
Tvorba informačních systémů Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2006/2007 c 2006 2008 Michal Krátký Tvorba informačních systémů 1/17 Úvod XML
IRAE 07/08 Přednáška č. 2. atr1 atr2. atr1 atr2 -33
Objekt jako proměnná Objekty a metody Objekt = proměnná referenčního typu vznik pomocí new, chování viz pole jako referenční proměnná minulý semestr Stack Heap objekt ref this 10 20 atr1 atr2 jinyobjekt
7. přednáška - třídy, objekty třídy objekty atributy tříd metody tříd
7. přednáška - třídy, objekty třídy objekty atributy tříd metody tříd Algoritmizace (Y36ALG), Šumperk - 7. přednáška 1 Třída jako zdroj funkcionality Třída v jazyku Java je programová jednotka tvořená
Business Intelligence
Business Intelligence Josef Mlnařík ISSS Hradec Králové 7.4.2008 Obsah Co je Oracle Business Intelligence? Definice, Od dat k informacím, Nástroj pro operativní řízení, Integrace informací, Jednotná platforma
Seminář Java II p.1/43
Seminář Java II Seminář Java II p.1/43 Rekapitulace Java je case sensitive Zdrojový kód (soubor.java) obsahuje jednu veřejnou třídu Třídy jsou organizovány do balíků Hierarchie balíků odpovídá hierarchii
Integrace OpenOffice.org a Javy. CZJUG, , Robert Vojta
Integrace OpenOffice.org a Javy CZJUG, 15.12.2008, Robert Vojta Obsah Část 1 - Teorie Úvodní informace, definice pojmů Dokumentace, Java Language Binding Pomocné nástroje Část 2 - Praktické ukázky Lokální
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ů
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ů
Ú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ýčtový typ strana 67
Výčtový typ strana 67 8. Výčtový typ V této kapitole si ukážeme, jak implementovat v Javě statické seznamy konstant (hodnot). Příkladem mohou být dny v týdnu, měsíce v roce, planety obíhající kolem slunce