2008-11-01ãã1ã¶æéã®è¨äºä¸è¦§
ActiveObjectsã使ã£ã¦ã¿ã(2) - PostgreSQLã¾ã§ã«ä½æããããååååä¸è¦§ç»é¢ãã«ãæ¤ç´¢æ©è½ã追å ãã¾ããã ã¾ãã¯ãç»é¢ã¤ã¡ã¼ã¸ åæ表示 ãã¹ã¦ã®ååååã表示ããã¾ãã ç»é¢ä¸é¨ã®ããã¹ãããã¯ã¹ã«æ¤ç´¢æ¡ä»¶ãå ¥åããæ¤ç´¢ãã¿ã³ãã¯ãªãã¯ããâ¦
ActiveObjectsã使ã£ã¦ã¿ã(1)ã§ã¯MySQLã使ãã¾ããããåãããã°ã©ã ãPosgreSQLã§ãåããã¦ã¿ã¾ããã ä»åä¿®æ£ãå¿ è¦ãªåæã¯3ç¹ã®ã¿ã§ããã EntityManagerã®çææã«æ¸¡ãURL/ã¦ã¼ã¶å/ãã¹ã¯ã¼ã ãã¤ã°ã¬ã¼ã·ã§ã³æã®ã¯ã©ã¹ãã¹ã«å«ããJDBCãã©ã¤â¦
PostgreSQL 8.3.5ææ¸ããActiveObjectsã¨çµã¿åãã使ãä¸ã§ç¥ã£ã¦ãæ¹ããããããªé¨åã®ã¿æç²ã ããè¨è¿°ã¯ä½¿ããªããä¿®æ£ãã¾ãããã®ä»è¿½è¨ã®éã«åèã«ããURL: http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/psql_k17.htm OSã³ãã³ãã§å ±éãªèâ¦
æåè¨å¿µå ¬åã®æ£é¢ ã¡ã¤æ§ãæ¼ãã¯ã æ± ããéè³ åç´ã»ã»ã»ãç²ãæ§ã§ãã ãªãã ã帰ãéãåç¥¥å¯ºé§ ãã«ã©ãã«ã ã£ã
ã¢ã¯ãã£ãã¬ã³ã¼ããã¿ã¼ã³ éè¦ãªãã¨ã¯ãã¢ã¯ãã£ãã¬ã³ã¼ãã®ãªãã¸ã§ã¯ãã¯ããã¼ã¿ãã¼ã¹ã¢ã¯ã»ã¹ãã«ãã»ã«åãã¦ãããã¨ã§ãããªãã¸ã§ã¯ãããã¼ã¿ã¢ã¯ã»ã¹ã®æ©è½ãæä¾ãã¦ããã¨è¨ãæãã¦ãããã§ãããããã£ã¨å ·ä½çã«ããã°ãã¨ã³ãã£ãã£ã¯â¦
ã¯ããã« ããã¾ã§ActiveObjectsã«ã¤ãã¦ãããã調ã¹ã¦ãã¾ããããã®çµæãã©ãããä»çµã¿ãªã®ãã¯ãªãã¨ãªã¼ãããã£ã¦ããã®ã§ããã使ããããã®ãã©ããªã®ãã¯ãã£ã±ããããã¾ããã§ãããããã§ãAOãå®éã«ä½¿ã£ã¦ã¿ã¦ãè¯ãæªãã確ããã¦ã¿ããã¨â¦
http://www.javalobby.org/articles/activeobjects/ã®æ¥æ¬èªè¨³ã§ãã ç®æ¬¡ã«æ»ã - An Easier Java ORM(2) æè¨ãJavaã«æ´»ãã >> 以ä¸æ¬æ Javaã«ã¯Object Relational Mappingãã¬ã¼ã ã¯ã¼ã¯ã溢ãã¦ãã¾ãããã¡ãããæåã«Hibernateãæãã¤ãã¾ãããiBâ¦
net.java.aoã®ã¢ããã¼ã·ã§ã³ã®æ¦è¦ãæ¥æ¬èªè¨³ãã¾ããã対象ã®ã¢ããã¼ã·ã§ã³ã¯ä¸è¡¨ã®ã¨ããã§ãã ã¢ããã¼ã·ã§ã³ 翻訳対象ã®javadoc Accessor https://activeobjects.dev.java.net/api/net/java/ao/Accessor.html Generator https://activeobjects.dev.jaâ¦
https://activeobjects.dev.java.net/api/net/java/ao/Transaction.htmlã®ã¯ã©ã¹ã®æ¦è¦ã翻訳ãã¾ããã æ¬æ ActiveObjects APIã§ã¯ãç°¡åãªæ§æã§ãã¼ã¿ãã¼ã¹ãã©ã³ã¶ã¯ã·ã§ã³ã使ç¨ã§ãã¾ãããã®ã¯ã©ã¹ã®æ§æã¯ãRailsã®ActiveRecord ORMãæä¾ããããâ¦
https://activeobjects.dev.java.net/api/net/java/ao/EntityManager.htmlã®ã¯ã©ã¹ã®æ¦è¦ã翻訳ãã¾ããã æ¬æ ActiveObjects APIå ¨ä½ãå¶å¾¡ããæä¸ä½ã¯ã©ã¹ãEntityManagerã¯ãã¹ã¦ã®RawEntityãªãã¸ã§ã¯ãã®æºæ³ã§ããã¨ã¨ãã«ã¨ã³ãã£ãã£éã®ãã£ã¹ãâ¦
https://activeobjects.dev.java.net/api/net/java/ao/cache/CacheLayer.htmlã®ã¯ã©ã¹ã®æ¦è¦ã翻訳ãã¾ããã æ¬æ ã¨ã³ãã£ãã£ã®ãã£ãã·ã¥ã®å¤ã»ãã³ãã£ã¯ã¹*1ã管çããã¯ã©ã¹ã®ä¸ä½ã¤ã³ã¿ãã§ã¼ã¹ã§ãããã®ã¤ã³ã¿ãã§ã¼ã¹ã®å®è£ ã¯ã対å¿ãããã£ãã·â¦
ActiveObjectsããµãã¼ããããã¼ã¿ãã¼ã¹ç¨ã®ãããã¤ãã¯ãnet.java.ao.db.SupportedDBProviderã®ENUMå®æ°ã«ãªã£ã¦ãã¾ãã ä»åã¯ãã®ENUMå®æ°ã®å 容ããã¨ã«ãActiveObjectsããµãã¼ããããã¼ã¿ãã¼ã¹ã表ãã¾ã¨ãã¾ããã DB URIãããã³ã« ãµãã¼ãç¶â¦
ActiveObjectsããµãã¼ãããã³ãã¯ã·ã§ã³ã»ãã¼ãªã³ã°ç¨ã®ãããã¤ãã¯ãnet.java.ao.db.SupportedPoolProviderã®ENUMå®æ°ã«ãªã£ã¦ãã¾ãã ä»åã¯ãã®ENUMå®æ°ã®å 容ããã¨ã«ãActiveObjectsããµãã¼ãããã³ãã¯ã·ã§ã³ã»ãã¼ãªã³ã°ã表ã«ã¾ã¨ãã¾ããã â¦
ActiveObjectsã®JavaDocããè±åèªãæ½åºããæé ãåç»ã«è¨é²ãã¦ã¿ã¾ãããç»é¢ãµã¤ãºã大ããããã®ã§ãåç»ã«ããã¨æåãããè¦ããªããªã£ã¦ãã¾ãã¾ããã ã¨ããããä»åã¯é°å²æ°ã ãã§ãä¼ããã°ããã§ãã»ã»ã»ã ã¾ãä»åº¦åãç´ãã¾ãã»ã»ã»ã åãâ¦
ãããããé¡ããã¾ãm(_ _)m
DatabaseTypeã®ä½¿ãã©ããã調æ»ãã¦ããã¨ãããDatabaseProviderã¨ãã®åã¯ã©ã¹ã§é »ç¹ã«ä½¿ããã¦ãããã¨ããããã¾ããã ããã§ãã¾ãDatabaseProviderã®å½¹å²ãç解ããããã«ãDatabaseProviderã®javadoc(ã¡ã½ããæ¦è¦é¨å)ãæ¥æ¬èªè¨³ãã¦ã¿ã¾ããã ãâ¦
ActiveObjectsã®DatabaseTypeãç¶æ¿ããã¯ã©ã¹ã¨ãJavaã®åã®é¢é£ãã¾ã¨ãã¾ããããªããDatabaseTypeãç¶æ¿ããã¯ã©ã¹ã¯publicã§ã¯ããã¾ããããã®æ å ±ãã©ãããå ´é¢ã§æç¨ãªã®ãã¯æªèª¿æ»ã§ãã以ä¸ãå人çãªå¤æã«åºã¥ã種é¡ã«åé¡ãã¦ããã¾ãã æ°å¤ â¦
ããã±ã¼ã¸ãã¯ã©ã¹ãã¨ã«ActiveObjectsã®ä¾å¤ã®throwã«ã¤ãã¦æ´çãã¾ããã å®è£ ä¾åãªæ å ±ãªã®ã§ãåèã¾ã§ã â»publicãªã¯ã©ã¹ã«ã¯javadocã¸ã®ãªã³ã¯ãã¤ãã¾ããã ããã±ã¼ã¸:net.java.ao.db ã¯ã©ã¹:SQLServerDatabaseProvider ã¨ã©ã¼ãªãã¸ã§ã¯ã ã¡ãâ¦
ãããã®æé no.2âããªãã¨ãããã¨ã®æéããã£ã¨ãããã¼ã«ãã ããããæ±ã£ãããã¨ãããã¨ãããã人ããããã¼ã«! (SEIBUNDO Mook)åºç社/ã¡ã¼ã«ã¼: èª æå æ°å 社çºå£²æ¥: 2008/11ã¡ãã£ã¢: ã ãã¯è³¼å ¥: 1人 ãã®ååãå«ãããã° (2件) ãè¦ã2008/1â¦
Enitityã®ç¶æ¿é¢ä¿ã表ç¾ã§ããããã«ãªãã¾ãããç¢å°ã®å ãç¶æ¿ãããã¨ã³ãã£ãã£ã§ããã¨ã³ãã£ãã£ã®ç§»åã追å ãèªåçã«è¿½è·¡ãã¾ãã
http://d.hatena.ne.jp/nattou_curry_2/20081112/1226497826ã§ä½ãå§ããGraphicalActiveObjectsã®ä½æç¶æ³ã§ãã â»GraphicalActiveObjectsâ¦ActiveObjectsã®ã¨ã³ãã£ãã£é¢é£ãä½æããGUIããã°ã©ã ãã©ãã°ã¢ã³ãããããã§ç»é¢ä¸ã®ã¨ã³ãã£ãã£ã®çµã¿ç«ã¦â¦
ActiveObjectsã試ãã¦ããæã«ãå¿ ã以ä¸ã®ãããªæé ãè¸ãã§ãã¾ããã ç´ãã¨ã¯ã»ã«ã«ã¨ã³ãã£ãã£é¢é£å³ãæ¸ãã ã¨ã³ãã£ãã£é¢é£å³ã®å 容ãEntity(Javaã®ã¤ã³ã¿ãã§ã¼ã¹)ã«ç´ãã ããããäºã¤ã¹ããããè¸ãã®ãç¡é§ãªã®ã§ãGUIã§æ¸ããã¨ã³ãã£ãã£â¦
ActiveObjectsã®ãã¤ã°ã¬ã¼ã·ã§ã³å¦çã®æµãd:id:nattou_curry_2:20081109:1226228944ã§çç¥ãããä¾åé¢ä¿ã®è§£æ±ºã¨DDLä½æã®ã¢ã«ã´ãªãºã ã«ã¤ãã¦å³è§£ãã¾ããã ä»åã®å¯¾è±¡ã¨ããã¨ã³ãã£ãã£é¢é£å³ 以ä¸ã¯ããã®é¢é£å³ã«ç¾ãããEntityAã®ãã¤ã°ã¬ã¼ã·ã§â¦
ã©ããããã¼ãã£ã³ã° http://www5b.biglobe.ne.jp/~Rabbit-I/contents.files/info.files/index.htmã¦ãµã®ãããããã¦ãµã®ã ãã¡ã®ã¦ãµã® ãã¼ã·ã§ãã 帽åã®ç´ æµãªå ã¡ã£ã¡ããã¦ããããã㢠ä»ã«ãããããã®ã¦ãµã®ãããéã¾ã£ã¦ãã¾ããã
d:id:nattou_curry_2:20081108:1226139684ã§ã¯ããã¤ã°ã¬ã¼ã·ã§ã³æã®ã¤ã³ããã¯ã¹DDLä½æã«ã¤ãã¦å°ã調ã¹ã¾ããã ä»åã¯ããå°ãç¯å²ãåºãã¦ãã½ã¼ã¹ã®å 容ãããã¤ã°ã¬ã¼ã·ã§ã³å¦çã®æµãã調ã¹ã¦ã¿ã¾ããã対象ã®ã¯ã©ã¹ã¯net.java.ao.schema.SchemaGenâ¦
ä»åã¯ãPolymorphicã¢ããã¼ã·ã§ã³ã¨OneToManyã¢ããã¼ã·ã§ã³ãçµã¿åãããå帰çãªãã¼ã¿æ§é ã表ç¾ãã¦ã¿ã¾ããã 使ç¨ããé¡æã¯ããã£ã¬ã¯ããªã»ãã¡ã¤ã«ã®é層æ§é ã§ãã ãã£ã¬ã¯ããªã®ä¸ã«ã¯ãµããã£ã¬ã¯ããªã¨ãã¡ã¤ã«ãè¤æ°å«ã¾ããããã«ãµããâ¦
ã¯ããã« ActiveObjectsã試ãã¦ãã¦ãæã£ãã¨ããã«åããªãã£ãã®ã§ãã½ã¼ã¹ã«ãã°åºåã追å ãã¦åãã追ã£ã¦ã¿ããã¨æãã¾ãã ãã°åºåã®è¿½å ã®ããã«ãActiveObjectsããã«ããã¾ãã ãã«ã対象ã®ã½ã¼ã¹ã®ãã¼ã¸ã§ã³ã¯ã0.8.2ã§ãã ãã«ã失æ åâ¦
ActiveObjectsã®Polymorphicã¢ããã¼ã·ã§ã³ã®æåãç解ããããã«ãã»ã»ã»ã®ç¬¬äºåã ã§ãããã¤ã¯ç¬¬ä¸åã®åã«è©¦ãã¦ããã®ãå¿ãã¦ããã ãã§ãã é åºãéã§ããããã¯ã¨ããããä»åã¯ã·ã³ãã«ãªPolymorphicã§ãã æ¦è¦ ã¾ããUserã¨Computerãé¢é£ããâ¦
ActiveObjectsã®Polymorphicã¢ããã¼ã·ã§ã³ã®æåãç解ããããã«ããããããªä½¿ãæ¹ã試ãã¦ã¿ããã¨æãã¾ãã ããããä½åããPolymorphicã®å®é¨ãã¨ããã¿ã¤ãã«ã§ãä»ã®ã¢ããã¼ã·ã§ã³ã¨ã®çµã¿åããçã試ãã¦ããã¾ããä»åã¯ãå¤å¯¾å¤ï¼ããªã¢ãã£â¦
Polymorphicãããããããªãã®ã§ã https://activeobjects.dev.java.net/api/net/java/ao/Polymorphic.htmlãæ¥æ¬èªè¨³ãã¦ã¿ã¾ããã net.java.ao.Polymorphic ã¨ã³ãã£ãã£åãããªã¢ãã£ãã¯ãªæ½è±¡åã«æå®ãããæå®ãããã¤ã³ã¿ãã§ã¼ã¹ã¯ã(ãã®ã¤ã³ã¿â¦