<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4241622836651437847</id><updated>2011-04-21T15:54:46.182-07:00</updated><title type='text'>Технологи</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://technology-mn.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://technology-mn.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Sumbee</name><uri>http://www.blogger.com/profile/03956038029255794548</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>9</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4241622836651437847.post-2175976076591098812</id><published>2007-01-29T23:44:00.000-08:00</published><updated>2007-01-30T02:44:04.185-08:00</updated><title type='text'>Seasar2.3.X + Ajax(Teeda)</title><content type='html'>&lt;span style="font-family:arial;"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Seasar2.3.x-ийг Ajax&lt;/span&gt;-тай хамт яаж хэрэглэхийг хялбархнаар тайлбарлая. &lt;a href="http://sumbee.blogspot.com/"&gt;Teeda-ийн талаар эндээс харна уу.&lt;/a&gt;&lt;br /&gt;Ajax-ийг хэрэглэхийн тулд дараах файлууд хэрэгтэй.&lt;br /&gt;&lt;/span&gt;&lt;ul style="font-family: arial;"&gt;&lt;li&gt;Teeda-ajax-xx.jar&lt;/li&gt;&lt;li&gt;ajax.js&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-family:arial;"&gt;Гол гол хийх шаардлагатай үйлдлүүдийг тайлбарлая.&lt;br /&gt;Өөрийн application-ийхаа &lt;span style="color: rgb(255, 0, 0);"&gt;WEB-INF/lib&lt;/span&gt; директорт Teeda-ajax-xx.jar файлыг хуулна.&lt;/span&gt;&lt;span style="font-family:arial;"&gt; &lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Web.xml&lt;/span&gt; файлд &lt;span style="color: rgb(255, 0, 0);"&gt;AjaxServlet&lt;/span&gt;-ийг тодорхойлж өгнө.&lt;/span&gt;&lt;span style="font-family:arial;"&gt; &lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_n-p_8L2SPMc/Rb75nAPJMRI/AAAAAAAAAMc/u5UogzoeXIU/s1600-h/1.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_n-p_8L2SPMc/Rb75nAPJMRI/AAAAAAAAAMc/u5UogzoeXIU/s400/1.JPG" alt="" id="BLOGGER_PHOTO_ID_5025728682665783570" border="0" /&gt;&lt;/a&gt;  &lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Load-on-startup&lt;/span&gt;-д нь дурын утга тавиарай.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Ajax.js&lt;/span&gt;-ийг хэрэглэх арга:&lt;br /&gt;Хэрэглэх гэж буй HTML файлдаа ajax.js файлыг include хийнэ. жишээ нь:&lt;br /&gt;&lt;/span&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_n-p_8L2SPMc/Rb76nQPJMSI/AAAAAAAAAMk/GrGVkPIhyMk/s1600-h/2.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/Rb76nQPJMSI/AAAAAAAAAMk/GrGVkPIhyMk/s400/2.JPG" alt="" id="BLOGGER_PHOTO_ID_5025729786472378658" border="0" /&gt;&lt;/a&gt;   &lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;"Kumu.Ajax.executeTeedaAjax"&lt;/span&gt; функцийг дуудаж Ajax-ийг хэрэгжүүлнэ. Энэ функцийг ашиглах үед дараах зүйлийг тодорхойлж өгнө.&lt;br /&gt;&lt;/span&gt;&lt;ul style="font-family: arial;"&gt;&lt;li&gt;Буцаалтын функц&lt;/li&gt;&lt;li&gt;Параметр&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-family:arial;"&gt;Буцаалтын функц гэдэг нь Ajax-ийг хэрэгжүүлсэний дараагаар буцаж ирэх үр дүнг нь хүлээн авах функц юм. &lt;/span&gt; &lt;span style="font-family:arial;"&gt;Буцаалтын функц нь доорх дүрэмтэй төстэй байдлаар тодорхойлогдох ба автоматаар дуудах компонент болон функцийн нэрийг шийднэ.&lt;br /&gt;&lt;/span&gt;&lt;pre style="font-family: arial; color: rgb(0, 0, 153);"&gt;function hoge_foo(response){&lt;br /&gt;// response-д Ajax-ын хариу хадгалагдах юм&lt;br /&gt;alert(response);&lt;br /&gt;}&lt;br /&gt;Kumu.Ajax.executeTeedaAjax(hoge_foo, {"параметр нэр" : "утга"});&lt;/pre&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;"Дуудах компонентийн нэр _ дуудах функцийн нэр"&lt;/span&gt; гэсэн байдлаар нэрийг тодорхойлно.&lt;/span&gt;&lt;span style="font-family:arial;"&gt; &lt;/span&gt;&lt;span style="font-family:arial;"&gt;Дээрх байдлаар тодорхойлсон үед &lt;span style="color: rgb(255, 0, 0);"&gt;Dicon&lt;/span&gt;-д hoge компонентийн foo функцийг зарласан байх шаардлагатай. Мөн доорх байдлаар тодорхойлж болно.&lt;/span&gt; &lt;pre  style="font-family:arial;"&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;// Дурын нэрээр тодорхойлох&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;function test(response){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;Kumu.Ajax.executeTeedaAjax(test, { "component" : "hoge", "action" : "foo" });&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Дүрмийг хэрэглэхгүй тохиолдолд, параметрт компонент, action-ийг тодорхойлно.&lt;br /&gt;Жишээнд hoge компонентийн foo функцийг дуудсан байна.&lt;br /&gt;&lt;br /&gt;Параметр:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_n-p_8L2SPMc/Rb8QbgPJMUI/AAAAAAAAAM0/hO1g7uKLcIo/s1600-h/4.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/Rb8QbgPJMUI/AAAAAAAAAM0/hO1g7uKLcIo/s400/4.JPG" alt="" id="BLOGGER_PHOTO_ID_5025753773864726850" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Дээрх байдлаар HTML-д teeda, kumu гэсэн параметрүүдийг тодорхойлсон байна.&lt;br /&gt;&lt;br /&gt;Одоо Сервер талд хийгдэх зүйлийг тайбарлая. Дээр хэрэглэгдэж буй Hoge нь ямар нэг Dicon&lt;br /&gt;файлд дараах байдлаар тодорхойлогдсон байна.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_n-p_8L2SPMc/Rb8UtgPJMVI/AAAAAAAAAM8/s-NUcZzpRE8/s1600-h/5.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/Rb8UtgPJMVI/AAAAAAAAAM8/s-NUcZzpRE8/s400/5.JPG" alt="" id="BLOGGER_PHOTO_ID_5025758481148883282" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/pre&gt;        &lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;teeda-extension-ийн Ajax нь Dicon-д тодорхойлогдсон дурын POJO-г хэрэглэж чадна. &lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Дээр ашиглаж буй HogeBean-ний доторхыг харвал:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;pre  style="font-family:arial;"&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;package examples.ajax;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;public class HogeBean {&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   private String teeda;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   private String kumu;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   public void setTeeda(String teeda) {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;       this.teeda = teeda;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   public void setKumu(String kumu) {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;       this.kumu = kumu;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   public String foo() {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;       return "{ teeda :'" + this.teeda + "', kumu : '" + this.kumu + "' }";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Kumu.Ajax.executeTeedaAjax&lt;/span&gt;-аар тодорхойлогдсон параметрын нэртэй адилхан setter-т&lt;br /&gt;параметрыг автоматаар онооно. Түрүүн &lt;span style="color: rgb(255, 0, 0);"&gt;Teeda, kumu&lt;/span&gt; гэсэн нэртэй параметрыг тодорхойлсон&lt;br /&gt;учраас тэдгээр тус бүрийн Setter-т параметрын утгыг тодорхойлж өгнө. Дуудах функцийн&lt;br /&gt;буцах утга нь String байх параметргүй байна. Foo функц нь Javascript-д буцаах String-ийг&lt;br /&gt;үүсгэх юм. Буцах утгын үндсэн формат нь &lt;span style="color: rgb(255, 0, 0);"&gt;JSON &lt;/span&gt;боловч дурын форматтай байж болно.&lt;br /&gt;&lt;/pre&gt;&lt;ul style="font-family: arial; color: rgb(255, 0, 0);"&gt;&lt;li&gt;JSON&lt;/li&gt;&lt;li&gt;HTML&lt;/li&gt;&lt;li&gt;XML&lt;/li&gt;&lt;li&gt;TEXT&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-family:arial;"&gt;Дурын форматаар дамжуулах талаар "teeda-ajax-demo"-ийн &lt;span style="color: rgb(255, 0, 0);"&gt;"example.html"&lt;/span&gt; болон "ExampleBean.java"-ийг заавар болгоно уу. JSON-ийн талаар &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.json.org/" target="_blank"&gt;Эндээс  харна уу.&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Япон хэлний параметрын талаар гэвэл, Tomcat5.x хувилбарыг ашиглаж байгаа бол &lt;span style="color: rgb(255, 0, 0);"&gt;server.xml&lt;/span&gt;-ийн &lt;span style="color: rgb(255, 0, 0);"&gt;Connector &lt;/span&gt;элементийн &lt;span style="color: rgb(255, 0, 0);"&gt;useBodyEncodingForURI &lt;/span&gt;аттрибутад "true" гэж тохируулна.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_n-p_8L2SPMc/Rb8eIQPJMWI/AAAAAAAAANE/KT4iLcrvarE/s1600-h/6.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_n-p_8L2SPMc/Rb8eIQPJMWI/AAAAAAAAANE/KT4iLcrvarE/s400/6.JPG" alt="" id="BLOGGER_PHOTO_ID_5025768836315033954" border="0" /&gt;&lt;/a&gt;&lt;a style="font-family: arial;" href="http://teeda.seasar.org/download/2006-12-28/teeda-1.0.3.zip"&gt;Жишээ кодыг эндээс авна уу.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4241622836651437847-2175976076591098812?l=technology-mn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technology-mn.blogspot.com/feeds/2175976076591098812/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4241622836651437847&amp;postID=2175976076591098812' title='1 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/2175976076591098812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/2175976076591098812'/><link rel='alternate' type='text/html' href='http://technology-mn.blogspot.com/2007/01/seasar23x-ajaxteeda.html' title='Seasar2.3.X + Ajax(Teeda)'/><author><name>Sumbee</name><uri>http://www.blogger.com/profile/03956038029255794548</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_n-p_8L2SPMc/Rb75nAPJMRI/AAAAAAAAAMc/u5UogzoeXIU/s72-c/1.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4241622836651437847.post-3498490056943936508</id><published>2007-01-12T08:53:00.000-08:00</published><updated>2007-01-12T10:50:45.747-08:00</updated><title type='text'>Windows 2003 Server-ийн Active Directory-т аттрибут нэмэх</title><content type='html'>&lt;span style="font-family:arial;"&gt;Япон Windows 2003 Server дээр тайлбарласан болно.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Шинэ аттрибут нэмэхийн тулд дараах алхмыг хийгээд үзээрэй. Хэрвээ Server дээр [Active Directory Schema]-г суулгаагүй бол суулгах шаардлагатай. Суулгахад:&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:arial;"&gt;1. Command Prompt-ийг нээх.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Arial;"&gt;2. Дараах командыг оруулна.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-family:arial;"&gt;regsvr32 schmmgmt.dll&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Энэ команд нь компъютерт schmmgmt.dll-ийг бүртгэнэ. &lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:Arial;"&gt;3. Start-&gt;「ファイル名を指定して実行」 дээр [mms/ a] гэж оруулаад [OK]-г дарна.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_n-p_8L2SPMc/RafInwPJMCI/AAAAAAAAAJw/v4Xl_83Wvls/s1600-h/1.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5019200895016579106" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_n-p_8L2SPMc/RafInwPJMCI/AAAAAAAAAJw/v4Xl_83Wvls/s400/1.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;４．[File] цэсний [スナップインの追加と削除]-г сонгоно.&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RafIzAPJMDI/AAAAAAAAAJ4/zj_VXnTtiFM/s1600-h/2.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5019201088290107442" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/RafIzAPJMDI/AAAAAAAAAJ4/zj_VXnTtiFM/s400/2.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;５．Дараах дэлгэцнээс 「追加(Нэмэх)」-г дарна. 「利用できるスタンドアロン　スナップイン」 гэдгээс 「ActiveDirectoryスキーマ」 дээр 2 товшоод 「閉じる」-ийг дараад、өмнөх цонхны 「OK」-г дарна.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_n-p_8L2SPMc/RafJMwPJMEI/AAAAAAAAAKA/hs2eRxuI4ow/s1600-h/3.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5019201530671738946" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_n-p_8L2SPMc/RafJMwPJMEI/AAAAAAAAAKA/hs2eRxuI4ow/s400/3.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;６．Хадгалахдаа 「File」 цэсний 「保存(save)」-г сонгоно.&lt;br /&gt;７．「保存する場所(Хадгалах газар)」で＜システムルートディレクトリ(System directory)＞￥system32 директорт хадгална.&lt;br /&gt;８．「ファイル名(file name)」 хэсэгт 「schmmgmt.msc」 гэж оруулаад、「保存(save)」-г дарна.&lt;br /&gt;&lt;br /&gt;Үүнээс хойш аттрибут нэмэх талаар тайлбарлъя.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;１．「ActiveDirectoryスキーマ」の「属性(attribute)」-ийг сонгоод、хулганы баруун товчийг дарна. Түүний дараагаар 「属性の作成」 гэснийг сонгоно.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RafKFAPJMHI/AAAAAAAAAKY/bj5Ge5lR7sk/s1600-h/4.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5019202497039380594" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/RafKFAPJMHI/AAAAAAAAAKY/bj5Ge5lR7sk/s400/4.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;２. Дараагийн дэлгэцэнд аттрибутын нэр, тайлбар, OID, синтакс зэргийг оруулаад 「OK」-г дарна. OID нь давхардахгүй учир өөрөө шийдээд оруулчих. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RafKJgPJMII/AAAAAAAAAKg/DH-MUtIUJh8/s1600-h/5.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5019202574348791938" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RafKJgPJMII/AAAAAAAAAKg/DH-MUtIUJh8/s400/5.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;３．Start-&gt;「ファイル名を指定して実行」-ийг дарж 「ｃｍｄ」 гэж оруулаад 「OK」-г дарна.&lt;br /&gt;４．「ldifde –i –f c:\Update.ldf」 гэсэн командыг ажиллуулна. c:\update.ldf файлын доторх нь доор байна. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;dn: &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;changetype: &lt;/span&gt;&lt;span style="font-family:arial;"&gt;modify&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;replace: schema&lt;/span&gt;&lt;span style="font-family:arial;"&gt;updatenow&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;schemaupdatenow: 1&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;-&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;хуулж аваад ажиллуулна уу. Аттрибут нэмсэний дараагаар заавал ажиллуулна.&lt;br /&gt;５．Класст нэмсэн аттрибутыг бүртгэхийн тулд 「ActiveDirectoryスキーマ」-ийн 「クラス」-г сонгож 、түүн дотроос классыг сонгоно. Дараах зурганд 「Person」 классыг сонгосон байна. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RafKMgPJMJI/AAAAAAAAAKo/YUnQAF2ASBo/s1600-h/6.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5019202625888399506" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RafKMgPJMJI/AAAAAAAAAKo/YUnQAF2ASBo/s400/6.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;６．Сонгосон класст хулганы баруун товчийг дараад、「プロパティ(property)」-г сонгоно. 「属性(attribute)」 тав-ийг сонгоно.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_n-p_8L2SPMc/RafKgwPJMKI/AAAAAAAAAKw/xi17qtIhcc8/s1600-h/7.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5019202973780750498" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_n-p_8L2SPMc/RafKgwPJMKI/AAAAAAAAAKw/xi17qtIhcc8/s400/7.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;７．「追加(add)」 товчийг дарж 、「スキーマオブジェクトの選択」 гэсэн дэлгэц дээр аттрибутыг сонгоод 「OK」 товчийг дарж 「Personのプロパティ」 гэсэн дэлгэцийн 「OK」-г дарна. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RafKkAPJMLI/AAAAAAAAAK4/inzH_X6gyQc/s1600-h/8.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5019203029615325362" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/RafKkAPJMLI/AAAAAAAAAK4/inzH_X6gyQc/s400/8.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;８．Command prompt дээр 「ldifde –i –f c:\Update.ldf」 гэсэн командыг ажиллуулна.&lt;br /&gt;９．Аттрибутад утга онооход 、Command prompt дээр 「ldifde –i –f c:\Modify.ldf」 гэсэн командыг ажиллуулна.  Modify.ldf файлын доторхыг доор харуулав.&lt;br /&gt;&lt;br /&gt;dn: CN=Bat Bold, OU=TokyoOU, DC=ad,DC=networktest,DC=local //Хэрэглэгчийг заана&lt;br /&gt;changetype: modify　&lt;br /&gt;replace: testAttribute　//Аттрибут нэр&lt;br /&gt;testAttribute: 1　//Утга&lt;br /&gt;-&lt;br /&gt;１０．Мөн 8-р алхамыг хийнэ.&lt;br /&gt;１１．「schmmgmt.msc」 гэсэн файлаа хадгална. &lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4241622836651437847-3498490056943936508?l=technology-mn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technology-mn.blogspot.com/feeds/3498490056943936508/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4241622836651437847&amp;postID=3498490056943936508' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/3498490056943936508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/3498490056943936508'/><link rel='alternate' type='text/html' href='http://technology-mn.blogspot.com/2007/01/windows-2003-server-active-directory.html' title='Windows 2003 Server-ийн Active Directory-т аттрибут нэмэх'/><author><name>Sumbee</name><uri>http://www.blogger.com/profile/03956038029255794548</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_n-p_8L2SPMc/RafInwPJMCI/AAAAAAAAAJw/v4Xl_83Wvls/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4241622836651437847.post-1545858985841351074</id><published>2007-01-10T20:25:00.000-08:00</published><updated>2007-01-10T23:57:14.686-08:00</updated><title type='text'>S2Flex</title><content type='html'>&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;S2Flex&lt;/span&gt;-ийг хэрэглэхэд &lt;span style="color: rgb(255, 0, 0);"&gt;S2Container&lt;/span&gt;-д бүртгэгдсэн байгаа компонентуудын method-ийг &lt;span style="color: rgb(255, 0, 0);"&gt;Flex&lt;/span&gt;-ээс амархнаар дуудаж болдог.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Шаардлагатай зүйлс:&lt;/span&gt;&lt;br /&gt;JDK1.4-өөс дээш, S2FlexVx.x.x.zip-ийг татаж аваад задлаад eclipse-тээ импорт хийж оруулж өгнө.&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;  &lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:arial;font-size:100%;"  &gt;[File-&gt;Import-&gt;General-&gt;Existing Projects into Workspace]&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:arial;font-size:100%;"  &gt;  &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;flashgateway.jar&lt;/span&gt; энэ файл байхгүй учраас ажиллуулахад алдаа гарна. Учир нь Flex-ийн jar файлыг хамаагүй тараадаггүй ба Flex нь үнэтэй програм юм. &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;Гэхдээ 30 хоногийн&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt; Trial Flex-үүд байдаг. Компайл хийхийн тулд "S2flex/lib" директорт "flashgateway.jar" файлыг хуулж өгнө.&lt;br /&gt;&lt;a href="http://www.adobe.com/jp/downloads/"&gt;Эндээс Trial хувилбарыг татаж&lt;/a&gt; авч болно. Жишээнд, Tomcat, Tomcat Plugin&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt; болон Flex нь JRun Integration mode гэлтгүй, Macromedia Flex mode-өөр суулгагдана. &lt;span style="color: rgb(255, 0, 0);"&gt;$FLEX_HOME&lt;/span&gt; нь Flex-ийг суулгасан газрын зам.&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;Жишээ кодыг татаж аваад задалсны дараагаар Flex-ийн орчинг бэлдэнэ. &lt;span style="color: rgb(255, 0, 0);"&gt;"$FLEX_HOME/flex.war"&lt;/span&gt; энэ файлыг тохиромжтой газар нь задлана(&lt;span style="color: rgb(255, 0, 0);"&gt;jar xf flex.war&lt;/span&gt;). Задалсны дараагаар &lt;span style="color: rgb(255, 0, 0);"&gt;"s2flex-example/WEB-INF"&lt;/span&gt; директорт хуулна. S2Container-ийг ажиллуулахын тулд "Web.xml" файлд дараах өөрчлөлтийг хийнэ.&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaXD5APJL2I/AAAAAAAAAHg/uI8LWQwBqno/s1600-h/11.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaXD5APJL2I/AAAAAAAAAHg/uI8LWQwBqno/s400/11.JPG" alt="" id="BLOGGER_PHOTO_ID_5018632743857762146" border="0" /&gt;&lt;/a&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;Flex-ийн AMFGateway нь S2Container-дах Компонентийн method-и&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;йг дуудахын тулд&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt; s2flex-example/WEB-INF/flex/gateway-config.xml-д Seasar2-т зор&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;иулж тааруулж өгнө.&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-size:100%;" &gt;&lt;span style="font-family:arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaXFcwPJL3I/AAAAAAAAAHo/2HTipDCwcIc/s1600-h/12.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaXFcwPJL3I/AAAAAAAAAHo/2HTipDCwcIc/s400/12.JPG" alt="" id="BLOGGER_PHOTO_ID_5018634457549713266" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;  &lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Application-д &lt;span style="color: rgb(255, 0, 0);"&gt;log4j&lt;/span&gt;-ээр логийг гаргахын тулд &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;WEB-INF/flex/jars&lt;/span&gt;-д байгаа &lt;span style="color: rgb(255, 0, 0);"&gt;commons-loging.jar-&lt;/span&gt;ийг &lt;span style="color: rgb(255, 0, 0);"&gt;WEB-INF/lib&lt;/span&gt;-д зөөнө.&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;JavaBeans болон ActionScript-ийн классыг тодорхойлох&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;JavaBeans болон ActionScript-ийн классыг тодорхойлсноор Java болон Flex-ийн хооронд өгөгдөл солилцож чадна. Жишээнд дараах байдлаар тодорхойлсон байна.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;package examples.flex;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;import java.io.Serializable;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;public class AddDto implements Serializable {&lt;br /&gt;&lt;br /&gt;private int arg1;&lt;br /&gt;private int arg2;&lt;br /&gt;private int result;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;public int getArg1() {&lt;br /&gt;return arg1;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;public void setArg1(int arg1) {&lt;br /&gt;this.arg1 = arg1;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;public int getArg2() {&lt;br /&gt;return arg2;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;public void setArg2(int arg2) {&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;this.arg2 = arg2;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;public int getResult() {&lt;br /&gt;return result;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;public void setResult(int result) {&lt;br /&gt;this.result = result;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;Мөн үүнд харгалзах ActionScript-ийг үүсгэнэ.&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;class examples.flex.AddDto {&lt;br /&gt;var _remoteClass:String;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;var arg1:Number;&lt;br /&gt;var arg2:Number;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;var result:Number;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;function AddDto() {&lt;br /&gt;_remoteClass = "examples.flex.AddDto";&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;Гол цэг нь дараах зүйлс юм.&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;ul  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;ActionScript-ийн классын нэр Java классын нэртэй таарч байх&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;_remoteClass гэсэн шинж чанарыг тодорхойлох&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;Байгуулагч дээр _remoteClass-д классын нэрийг зааж өгөх&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;Шинж var-аар хувьсагчуудыг зарлах&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;MXML файлыг root болгож package бүрээр директорт хуваана. Жишээ нь: examples.flex.AddDto гэдэг класс нь &lt;/span&gt;&lt;span style="font-size:100%;"&gt; examples/flex/AddDto.as гэж тавигдах болно. Мөн WEB-INF/flex/user_classes-г root директор болгож package бүрээр директорт салгаж болно. Ерөнхийдөө user_classes гэ &lt;/span&gt;&lt;span style="font-size:100%;"&gt;сэн аргаар хэрэглэх нь дээр.&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;Үүний дараагаар, Flex талд "var"-ээр к&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;лассын нэрийг тогтоод хувьсагчуудыг зарлах уу?, эсвэл дараах байдлаар классын нэрийг таг нэрээр зарлана. xmlns аттрибутаар package-ийн нэрийг тодорхойлно. &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt; &lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaXVIgPJL4I/AAAAAAAAAHw/kvv7ohVUUso/s1600-h/13.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaXVIgPJL4I/AAAAAAAAAHw/kvv7ohVUUso/s400/13.JPG" alt="" id="BLOGGER_PHOTO_ID_5018651701843406722" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/pre&gt;     &lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Мессэжийг олон хэл дээр дэмжих&lt;br /&gt;Java дээр property файлыг ашиглаж олон хэл дээр мессэжийг гаргаж чаддаг ба тэр property файлыг Flex-ээс ашиглах функц S2Flex-д бэлтгэгдсэн болно. Жишээ нь дараах маягийн property файлыг WEB-INF/classes-д бэлтд&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;сэн гэвэл:&lt;/span&gt;   &lt;h4  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;FLXMessages_ja.properties&lt;/span&gt;&lt;/h4&gt;   &lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;EFLX0001=({0})は入力必須です&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;EFLX0002=バリデーションエラーです。エラーを修正してもう一度入力してください。&lt;/span&gt;&lt;/pre&gt;   &lt;h4  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;FLXMessages.properties&lt;/span&gt;&lt;/h4&gt;     &lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;EFLX0001=({0}) is mandatory&lt;br /&gt;EFLX0002=Please enter valid data in the fields with errors and try again.&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;Eclipse дээрээ Япон хэлээр property удирд&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;ахыг хүсвэл эндээс&lt;a href="http://propedit.sourceforge.jp/"&gt; property editor&lt;/a&gt;-ийг татаж аваад ашиглавал тохиромжтой. Дараа нь энэ property файлаа Flex талаас хэрэглэхийн тулд компонентийг dicon файлд бүртгэнэ.&lt;br /&gt;&lt;/span&gt;&lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaXbhAPJL5I/AAAAAAAAAIE/ZMJY0CMxank/s1600-h/14.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaXbhAPJL5I/AAAAAAAAAIE/ZMJY0CMxank/s400/14.JPG" alt="" id="BLOGGER_PHOTO_ID_5018658719819968402" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;Мөн уг компонентийг Flex-ээс хэрэглэхийн&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt; тулд WEB-INF/flex/flex-config.xml-д бүртгэх шаардлагатай.&lt;br /&gt;&lt;/span&gt;&lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaXbkgPJL6I/AAAAAAAAAIM/bOhdc9DD1wQ/s1600-h/15.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaXbkgPJL6I/AAAAAAAAAIM/bOhdc9DD1wQ/s400/15.JPG" alt="" id="BLOGGER_PHOTO_ID_5018658779949510562" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/pre&gt;         &lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Java талаас бэлтгэл дууслаа. Дараа нь Flex талын бэлтгэлийг хийнэ. Эхлээд "&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;s2flex/as2/org&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;" директорыг "&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;WEB-INF/flex/user_classes&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;"&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;-нд бүгдийг нь хуулна. Дараа нь messageLogic-ийг дуудахын тулд RemoteObject таг-ийг тодорхойлно. Сервэр талаас буцах утга нь буцаж ирсэн үеийн процесс болгож "processMessageManager()"-ийг дуудна. "event.result"-д "MessageManager" орж ирнэ.&lt;/span&gt; &lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaXfgAPJL7I/AAAAAAAAAIU/iBcRM6csups/s1600-h/17.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaXfgAPJL7I/AAAAAAAAAIU/iBcRM6csups/s400/17.JPG" alt="" id="BLOGGER_PHOTO_ID_5018663100686610354" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/pre&gt;      &lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:100%;"  &gt;messageLogic нь програм ажиллах үед дуудагдана.&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-size:100%;" &gt; &lt;/span&gt;&lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_n-p_8L2SPMc/RaXfjQPJL8I/AAAAAAAAAIc/vq_ytgpO8cU/s1600-h/18.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_n-p_8L2SPMc/RaXfjQPJL8I/AAAAAAAAAIc/vq_ytgpO8cU/s400/18.JPG" alt="" id="BLOGGER_PHOTO_ID_5018663156521185218" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/pre&gt;  &lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;import org.seasar.flex.message.*;&lt;br /&gt;function initApp() {&lt;br /&gt;messageLogic.getMessageManager("FLXMessages", "ja");&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;processMessageManager()-д цуглуулсан MessageManager объектыг MessageManager&lt;br /&gt;классын static хувьсагчид(instance)-д хадгалж байна.&lt;br /&gt;&lt;br /&gt;import org.seasar.flex.message.*;&lt;br /&gt;&lt;br /&gt;class org.seasar.flex.message.MessageManager {&lt;br /&gt;static var instance:MessageManager;&lt;br /&gt;...&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function processMessageManager(messageManager:MessageManager) {&lt;br /&gt;MessageManager.instance = messageManager;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Үүнээс гадна, Validator-ийг үүсгэнэ. Validator нь, mx.validators.Validator-ээс удамшиж,&lt;br /&gt;doValidation(value)-ийг гүйцэтгэнэ. Value-д орж ирсэн утга байна. Алдаа тохиолдсон үед,&lt;br /&gt;Validator#validationError()-аар алдааны мэдээллийг гаргана. MessageManager объект нь&lt;br /&gt;MessageManager.instance-аар зааварчлагдана. Дараа нь,&lt;br /&gt;getMessage(messageCode, аргументын олонлог)-ийг зөвхөн дуудна.&lt;br /&gt;&lt;br /&gt;import org.seasar.flex.message.*;&lt;br /&gt;class RequiredFieldValidator extends mx.validators.Validator {&lt;br /&gt;var fieldName:String;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;function doValidation(value) : Void {&lt;br /&gt;if (value == undefined || value == "") {&lt;br /&gt;   var args:Array = new Array();&lt;br /&gt;   args[0] = fieldName;&lt;br /&gt;   validationError("required", MessageManager.instance.getMessage("EFLX0001", args));&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Энэ жишээнд, s2flex-example/validation-нд хадгалагдаж байна. Browser-аас&lt;br /&gt;http://localhost:8080/s2flex-example/validation/ValidationApp.mxml-руу хандаад үзээрэй. Юу ч&lt;br /&gt;оруулаагүй үед "validator" товчийг дарахад алдааны мессэж харагдана. Дараах байдлаар&lt;br /&gt;алдааны мэдээлэл харагдах болно.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;div  style="text-align: center; color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaXj_gPJL9I/AAAAAAAAAIk/gQiz7yhublM/s1600-h/s2flex-picture1.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaXj_gPJL9I/AAAAAAAAAIk/gQiz7yhublM/s400/s2flex-picture1.gif" alt="" id="BLOGGER_PHOTO_ID_5018668039899000786" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt; &lt;span style="color: rgb(0, 0, 0);font-size:100%;" &gt;                  &lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Жишээ:&lt;br /&gt;&lt;br /&gt;Java тал дээрээ interface болон хэрэгжүүлэгчийг бэлдэнэ.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;h3  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;examples.flex.AddLogic&lt;/span&gt;&lt;/h3&gt; &lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;package examples.flex;&lt;br /&gt;&lt;br /&gt;public interface AddLogic {&lt;br /&gt;&lt;br /&gt;public int calculate(int arg1, int arg2);&lt;br /&gt;&lt;br /&gt;public AddDto calculate2(AddDto addDto);&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;h3  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;examples.flex.AddLogicImpl&lt;/span&gt;&lt;/h3&gt; &lt;pre  style="color: rgb(0, 0, 0);font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;package examples.flex;&lt;br /&gt;&lt;br /&gt;public class AddLogicImpl implements AddLogic {&lt;br /&gt;&lt;br /&gt;public int calculate(int arg1, int arg2) {&lt;br /&gt;return arg1 + arg2;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public AddDto calculate2(AddDto addDto) {&lt;br /&gt;return addDto.setResult(addDto.getArg1() + addDto.getArg2());&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Компонентийг dicon файлд бүртгэнэ.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaXk6wPJL-I/AAAAAAAAAIs/n57vib-DUjk/s1600-h/19.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaXk6wPJL-I/AAAAAAAAAIs/n57vib-DUjk/s400/19.JPG" alt="" id="BLOGGER_PHOTO_ID_5018669057806249954" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Бүртгэгдсэн компонентийг Flex-ээс дуудахаар "s2flex-example/WEB-INF/flex/flex-config.xml"-&lt;br /&gt;ийн "flex-config/remote-objects/whitelist"-д дараах тэмдэглэлийг нэмнэ.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaXljwPJL_I/AAAAAAAAAI0/HwYJfzmlyXY/s1600-h/20.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaXljwPJL_I/AAAAAAAAAI0/HwYJfzmlyXY/s400/20.JPG" alt="" id="BLOGGER_PHOTO_ID_5018669762180886514" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Object таг-аар компонентуудыг тодорхойлно. Source таг-аар тодорхойлох нь S2Container-р&lt;br /&gt;тодорхойлсон компонентийн нэр юм. name аттрибут нь source аттрибуттай адилхан байх нь&lt;br /&gt;ойлгоход хялбар боловуу. Компонентийг нэмэх тохиолдолд, object таг-г нэмнэ. Flex1.0-ийг&lt;br /&gt;хэрэглэх үед, дээрх агуулгыг бичсэн файл нь&lt;br /&gt;"s2flex-example/WEB-INF/flex/flex-config-s2flex.xml"-д аль хэдийн бэлтгэгдсэн учраас&lt;br /&gt;"flex-config.xml"-д хуулна. Flex1.5-ийг хэрэглэх үед, адилхнаар "flex-config-s2flex15.xml"-ийг&lt;br /&gt;хуулна.&lt;br /&gt;&lt;br /&gt;Хамгийн сүүлд нь Flex програмын код. Add.mxml,Add2.xml файлыг төслийн эх директорт&lt;br /&gt;хийнэ.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_n-p_8L2SPMc/RaXoEQPJMAI/AAAAAAAAAI8/4F6NpMeDF-k/s1600-h/21.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_n-p_8L2SPMc/RaXoEQPJMAI/AAAAAAAAAI8/4F6NpMeDF-k/s400/21.JPG" alt="" id="BLOGGER_PHOTO_ID_5018672519549890562" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"RemoteObject" таг-аар Java-ийн компонентийг тодорхойлно. named аттрибутад&lt;br /&gt;flex-config.xml-ийн object таг-ийн name аттрибутаар тодорхойлсон утгыг заана. id аттрибут нь,&lt;br /&gt;named аттрибуттай адил байх нь ойлгоход хялбар. Дараа нь, ActionScript-ийн дотроос&lt;br /&gt;компонентийн нэр, method-ийн нэрээр дуудаж чадна. {addLogic.calculate.result} байдлаар хийж&lt;br /&gt;calculate method-ийн дуудан үр дүнг Label-ийн value-д автоматаар өгдөг байдлаар тохируулж&lt;br /&gt;болно.&lt;br /&gt;&lt;br /&gt;Ингээд дууслаа.&lt;br /&gt;Tomcat-ийг restart хийж, Browser-с "http://localhost:8080/s2flex-example/Add.mxml"-руу хандана.&lt;br /&gt;&lt;br /&gt;Доор JavaBeans-ийг хэрэглэсэн жишээг харуулав.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaXq6wPJMBI/AAAAAAAAAJE/CSe0l1xdmHM/s1600-h/22.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaXq6wPJMBI/AAAAAAAAAJE/CSe0l1xdmHM/s400/22.JPG" alt="" id="BLOGGER_PHOTO_ID_5018675654876016658" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Browser-аас "http://localhost:8080/s2flex-example/Add2.mxml"-руу хандана уу.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://sourceforge.jp/projects/seasar/files/?release_id=12489#12489"&gt;Жишээнүүдийг эндээс татна уу.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4241622836651437847-1545858985841351074?l=technology-mn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technology-mn.blogspot.com/feeds/1545858985841351074/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4241622836651437847&amp;postID=1545858985841351074' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/1545858985841351074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/1545858985841351074'/><link rel='alternate' type='text/html' href='http://technology-mn.blogspot.com/2007/01/s2flex.html' title='S2Flex'/><author><name>Sumbee</name><uri>http://www.blogger.com/profile/03956038029255794548</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_n-p_8L2SPMc/RaXD5APJL2I/AAAAAAAAAHg/uI8LWQwBqno/s72-c/11.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4241622836651437847.post-6682462813565978981</id><published>2007-01-07T04:53:00.000-08:00</published><updated>2007-01-07T07:05:37.184-08:00</updated><title type='text'>S2JSF</title><content type='html'>&lt;span style="font-family:arial;"&gt;S2JSF(Java Server Faces) нь Web application-ийг бүтээхэд зориулагдсан presentation давхрагын framework юм. JSF-тэй хамгийн ойрхон framework нь нэлээн алдартай Struts байх юм. Хэрвээ JSP-ийг ашиглан хуудасны загварыг өөрчлөхөд application серверийн эхлүүлж deploy хийхгүй бол болохгүй билээ. Энэ нь төвөгтэй байдал үүсгэж байна. Үүний оронд S2JSF-ийг хэрэглэвэл харагдац хэсэг нь HTML учраас дээрх жишээ дурьдсан ажлуудыг хийх шаардлагагүй болж хуудасны загварыг өөрчлөхөд хялбар болох юм. Жишээг харна уу.&lt;br /&gt;&lt;/span&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;hello.html&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaD8U79vQKI/AAAAAAAAAEQ/OY7qwmYzu6k/s1600-h/13.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017287421514956962" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaD8U79vQKI/AAAAAAAAAEQ/OY7qwmYzu6k/s400/13.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;Эхний мөрөнд xmlns:m=&lt;/span&gt;&lt;a href="http://www.seasar.org/maya"&gt;&lt;span style="font-family:arial;"&gt;http://www.seasar.org/maya&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt; S2JSF-ийн namespace-ийн тодорхойлолт юм. Үүнийг заавал тодорхойлж өгнө. &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;m:extends="/WEB-INF/layout/layout.html энэ нь layout(хуудасны загвар)-ийг тодорхойлно. Үүнд: header, footer, body, menu зэрэг хуудсуудыг нийлүүлсэн хуудас юм. 7-р мөрөнд байгаа “layoutTitle” нь layout.html хуудсанд хуудасны гарчигийг харуулахад ашиглана. Үндсэн хуудасруу параметр дамжуулахад f:param тагийг ашиглана. 8-10р мөр нь үндсэн хуудсын body хэсэгт харагдах зүйлс. 9-р мөрний #{} гэсэн хэсэгт хувьсагчийг тавьж өгвөл түүний утгыг HTML хуудсанд харуулах болно. Span тагийг ашиглана.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;layout.html &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/div&gt;&lt;/span&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaD-db9vQOI/AAAAAAAAAEw/c0CkClLiCU0/s1600-h/15.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017289766567100642" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaD-db9vQOI/AAAAAAAAAEw/c0CkClLiCU0/s400/15.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;4-р мөрөнд байдаг CSS файлыг дуудсан байна. Inject аттрибутад s:link-ийг олгосноор дуудагдах юм.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;5-р мөрөнд түрүүний хуудаснаас дамжуулсан хуудасны гарчигыг харуулах хэсэг байна. S угтвар нь WEB-INF/classes/jsf.dicon(эсвэл WEB-INF/src) гэсэн файлд тодорхойлогдох юм. S угтвар нь &lt;/span&gt;&lt;a href="http://www.seasar.org.jsf/"&gt;&lt;span style="font-family:arial;"&gt;http://www.seasar.org.jsf&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt; URI-тай холбогдоно. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;17-р мөр нь их биеийн хэсгийг харуулна. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;jsf.dicon (Энэ жишээний&lt;/span&gt;&lt;span style="font-family:arial;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaD_mr9vQPI/AAAAAAAAAFQ/7ayCJfTlhE4/s1600-h/16.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017291024992518386" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaD_mr9vQPI/AAAAAAAAAFQ/7ayCJfTlhE4/s400/16.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;Layout.html-ийн 10-р мөрөнд хуудасны толгой хэсгийг оруулж байгаа ба доор толгой файлыг үзүүлсэн байна. Мөн зураг хэрхэн дуудсаныг харна уу.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;header.html&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;a href="http://2.bp.blogspot.com/_n-p_8L2SPMc/RaEAH79vQQI/AAAAAAAAAFY/LKFtA6PIprI/s1600-h/9.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017291596223168770" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_n-p_8L2SPMc/RaEAH79vQQI/AAAAAAAAAFY/LKFtA6PIprI/s400/9.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;menu.html&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaEAir9vQRI/AAAAAAAAAFg/pHgEfE1OtGE/s1600-h/10.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017292055784669458" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaEAir9vQRI/AAAAAAAAAFg/pHgEfE1OtGE/s400/10.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;6-р мөрөнд байгаа линкний action-д hello гэж байна. Үүнийг үсрэх хуудсыг WEB-INF/faces-config.xml файлд тодорхойлж өгнө.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;faces-config.xml&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaEBFr9vQSI/AAAAAAAAAF0/C7VJBKjnfRQ/s1600-h/11.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017292657080090914" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaEBFr9vQSI/AAAAAAAAAF0/C7VJBKjnfRQ/s400/11.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;add.html&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaEBlb9vQTI/AAAAAAAAAF8/eiirPBHDAUA/s1600-h/12.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017293202540937522" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaEBlb9vQTI/AAAAAAAAAF8/eiirPBHDAUA/s400/12.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;10-р мөр нь алдааг гаргах үйлдэл. 11-р мөрөндэх Input tag нь javabean-ий property-тэй холбогдсон байна. Оролтын утга нь Javabean-ий Property-д олгогдох юм. Доор байгаа examples/jsf/dicon/add.dicon файлд addDto-г тодорхойлж өгнө.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;add.dicon &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaEDnr9vQVI/AAAAAAAAAGU/wxT5oW_e7I8/s1600-h/17.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017295440218898770" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RaEDnr9vQVI/AAAAAAAAAGU/wxT5oW_e7I8/s400/17.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;instance аттрибут нь request гэж тодорхойлогдсон нь addDto нь request байдлаар зохион байгуулагдана.app.dicon файлын root элементэд add.dicon файлыг оруулж өгнө.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;app.dicon&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaEDkL9vQUI/AAAAAAAAAGM/wLoVRA9FaNQ/s1600-h/18.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017295380089356610" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaEDkL9vQUI/AAAAAAAAAGM/wLoVRA9FaNQ/s400/18.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;14-р мөрөнд байгаа код нь товчлуурыг дарахад addAction-ий calculate() method-ийг дуудна.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;add.dicon файлд addAction-ийг тодорхойлно.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;add.dicon&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaEDrL9vQWI/AAAAAAAAAGc/ILaM7QFsMpE/s1600-h/19.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017295500348440930" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaEDrL9vQWI/AAAAAAAAAGc/ILaM7QFsMpE/s400/19.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;package examples.jsf.action; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public interface AddAction { &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public String calculate();&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;package examples.jsf.action.impl; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;import examples.jsf.action.AddAction;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;import examples.jsf.dto.AddDto;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;import examples.jsf.logic.AddLogic; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public class AddActionImpl implements AddAction { &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;private AddDto addDto; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;private AddLogic addLogic; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public void setAddDto(AddDto addDto) { &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;this.addDto = addDto; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public void setAddLogic(AddLogic addLogic) { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;this.addLogic = addLogic; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public String calculate() { &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;int result = addLogic.calculate(addDto); &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;addDto.setResult(result); &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;return null; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;}}&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;Оруулсан утгыг хүлээн авахын тулд addDto-ий setter method-ийг тодорхойлж өгнө. S2JSF нь ямар нэг property-ийн setter method тодорхойлогдсон эсэхийг шалгадаг. request аттрибутууд, parameter-үүд, session аттрибутууд, мөн S2Containter-үүдэд ямар нэгэн хувьсагчийн property-тай адил property байвал S2JFS нь шалгаад хэрвээ таарч байвал S2JSF нь автоматаар setter method-ийг нь дуудаж хувьсагчид утга олгоно. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Property-ийн төрөл нь Interface байхад addLogic-ийн хувьсагч нь хаана нэгтээ тодорхойлогдоогүй бол S2Container нь автоматаар Interface-ийн хэрэгжүүлэгч класст автоматаар set хийдэг.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;add.dicon файлд AddLogic хэрэгжүүлэгч классыг тодорхойлсон байна.&lt;/span&gt;&lt;/div&gt;&lt;a href="http://2.bp.blogspot.com/_n-p_8L2SPMc/RaEGu79vQXI/AAAAAAAAAGw/n59slFC4OCk/s1600-h/20.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017298863307833714" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_n-p_8L2SPMc/RaEGu79vQXI/AAAAAAAAAGw/n59slFC4OCk/s400/20.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;MethodBinding-аар дуудагдсан method нь null-ийг буцаана. Энэ нь өөрлүүгээ буцна.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;forEachList.html&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaEG0L9vQYI/AAAAAAAAAG4/i1-TVzYj-D0/s1600-h/21.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017298953502146946" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/RaEG0L9vQYI/AAAAAAAAAG4/i1-TVzYj-D0/s400/21.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;8аас 24-р мөр хүртэл span элементийн forEach-ийг ашиглаж давталт хийж байна. Items аттрибут нь хэрхэн давтахыг, var аттрибут давталтанд дамжуулах утгаруу хандсан хувьсагчийн нэр, varIndex аттрибут нь давталтыг хянах хувьсагч гэж тус тус заасан байна.&lt;br /&gt;Var аттрибут-д тодорхойлсон хувьсагчийн нэрийн property-оор давталтанд элементийн утгыг авна. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;Жишээ нь: 11 болон 12 мөрүүдэд, давталтандах элементүүдийн нэр болон key-ийн утгыг авсан байна.&lt;br /&gt;13-р мөр, href аттрибут болон action аттрибутуудыг тодорхойлсон байна. Ийм тохиолдолд, ажиллаж байх явцад href-ийг алгасна. href аттрибут нь хэдийгээр тийм боловч web browser-оос уг html файлыг нээхэд ямар нэг хуудасруу үсрэнэ.&lt;br /&gt;14-р мөр, param-ийг хэрэглэж параметрыг дамжуулж байна. Параметр нь дамжуулах URI-лүү дамжих болно.&lt;br /&gt;18-р мөр, action аттрибут болон onclick аттрибуттай товчлуурын жишээг харуулсан байна.&lt;br /&gt;20-р мөр, товчлуур дарагдсан үед параметрыг хуудасруу дамжуулна.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;forEachResult.html&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_n-p_8L2SPMc/RaEH879vQZI/AAAAAAAAAHA/41X19muFtpo/s1600-h/22.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017300203337630098" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_n-p_8L2SPMc/RaEH879vQZI/AAAAAAAAAHA/41X19muFtpo/s400/22.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;2-р мөрөнд action аттрибутаар initialization method-ийг заасан байна. Action класс нь доор тодорхойлогдсон байна.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;package examples.jsf.action.impl; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;import java.util.List; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;import examples.jsf.action.ForEachResultInitAction;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;import examples.jsf.dto.ForEachDto; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public class ForEachResultInitActionImpl implements ForEachResultInitAction { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;private int index; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;private List forEachDtoList; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;private ForEachDto forEachDto; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public void setIndex(int index) { &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;this.index = index; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public void setForEachDtoList(List forEachDtoList) { &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;this.forEachDtoList = forEachDtoList; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public ForEachDto getForEachDto() { &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;return forEachDto; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public String initialize() { &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;forEachDto = (ForEachDto) forEachDtoList.get(index); &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;return null; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;}} &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;examples/jsf/dicon/foreach.dicon файлд forEachDtoList-ийг тодорхойлно.initMethod таг-г ашиглаж дурын method-ийг дуудаж болно. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaEJYb9vQaI/AAAAAAAAAHI/TK9YZ3TDnCw/s1600-h/23.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5017301775295660450" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_n-p_8L2SPMc/RaEJYb9vQaI/AAAAAAAAAHI/TK9YZ3TDnCw/s400/23.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;initialize() method-д forEachDto property-ийн index-ийг set хийсэн байна. Initialize() method гүйцэтгэсний дараагаар S2JSF нь автоматаар forEachDto property-д утгыг Set хийнэ. Дараах байдлаар, тогтмолоор request -ийн оронд session-ийг set хийж болно.&lt;br /&gt;public static final String property name_EXPORT = "session";&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4241622836651437847-6682462813565978981?l=technology-mn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technology-mn.blogspot.com/feeds/6682462813565978981/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4241622836651437847&amp;postID=6682462813565978981' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/6682462813565978981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/6682462813565978981'/><link rel='alternate' type='text/html' href='http://technology-mn.blogspot.com/2007/01/s2jsf.html' title='S2JSF'/><author><name>Sumbee</name><uri>http://www.blogger.com/profile/03956038029255794548</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_n-p_8L2SPMc/RaD8U79vQKI/AAAAAAAAAEQ/OY7qwmYzu6k/s72-c/13.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4241622836651437847.post-1828537990222544237</id><published>2007-01-03T11:53:00.000-08:00</published><updated>2007-01-03T22:23:47.640-08:00</updated><title type='text'>S2Dao</title><content type='html'>&lt;div&gt;&lt;span style="font-family:arial;"&gt;S2Dao нь ерөнхийдөө өгөгдлийн сантай ажилладаг хэсэг юм.S2Dao-г хэрэглэхийн тулд дараах файлуудыг үүсгэх хэрэгтэй.&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;- JavaBeans&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;- Dao (.java)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;- Dicon файл&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;- SQL файл (.sql) &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;Зохион байгуулалтыг дүрслэвэл дараах байдалтай болох юм.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_n-p_8L2SPMc/RZwKK6DMBjI/AAAAAAAAACE/hdZrZ5ioz1c/s1600-h/dao_relation_image.gif"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5015895267481486898" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_n-p_8L2SPMc/RZwKK6DMBjI/AAAAAAAAACE/hdZrZ5ioz1c/s400/dao_relation_image.gif" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000000;"&gt;JavaBean&lt;/span&gt;&lt;/strong&gt; нь өгөгдлийн сангийн хүснэгттэй холбогдоно. Доорх жишээг харна уу. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public static final String TABLE = "table name";&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public static final String Property name_COLUMN = "column name";&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public static final int Property name_RELNO = value; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;гэх мэтчилэн өгөгдлийн сангийн хүснэгтийн талбаруудыг зарлана. Түүний дараагаар эдгээр зарласан хувьсагчуудын утгыг хүлээн авах хувьсагчуудыг &lt;span style="color:#ff0000;"&gt;Bean&lt;/span&gt; класстаа зарлаад &lt;span style="color:#ff0000;"&gt;Getter,&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Setter&lt;/span&gt;-ийг тодохойлж өгөх хэрэгтэй. Жишээ нь: &lt;span style="color:#ff0000;"&gt;EMP&lt;/span&gt; гэдэг хүснэгт нь &lt;span style="color:#ff0000;"&gt;EMPNO, ENAME, DEPTNUM&lt;/span&gt; гэсэн талбаруудтай, мөн &lt;span style="color:#ff0000;"&gt;DEPT&lt;/span&gt; гэдэг хүснэгт нь &lt;span style="color:#ff0000;"&gt;DEPTNO, DNAME&lt;/span&gt; гэсэн талбаруудтай байхад EMP хүснэгтийн Bean класс нь дараах байдалтай болох юм. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;import java.io.Serializable; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public class Employee implements Serializable { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public static final String TABLE = "EMP"; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public static final int department_RELNO = 0; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public static final String department_RELKEYS = "DEPTNUM:DEPTNO"; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;private long empno; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;private String ename; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;private Short deptnum; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;private Department department; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public Employee() { } &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public Department getDepartment() { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;return department; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public void setDepartment(Department department) { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;this.department = department; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public Short getDeptnum() { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;return deptnum; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public void setDeptnum(Short deptnum) { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;this.deptnum = deptnum; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public long getEmpno() { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;return empno; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public void setEmpno(long empno) { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;this.empno = empno; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public String getEname() { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;return ename; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;public void setEname(String ename) { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;this.ename = ename; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;}}&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000000;"&gt;Dao&lt;/span&gt;&lt;/strong&gt; нь &lt;span style="color:#ff0000;"&gt;Interface&lt;/span&gt; байдлаар үүсэх ба дотор нь өгөгдлийн сантай ажиллах method-уудаа зарлана. Method-уудаа ашиглан SQL файлуудтайгаа холбогдож query-ийгээ ажиллуулна. Жишээг харна уу. “class name_method name.sql” гэсэн нэртэйгээр SQL файлын нэр нь тодорхойлогдоно. Учир нь Dao interface-д зарлагдсан method-ийн нэрээрээ SQL файлаа хайж олоод ажиллуулдаг учраас. Жишээ нь:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;em&gt;LoginDao_find.sql&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:arial;"&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000099;"&gt;SELECT&lt;br /&gt;ID_SHOKUIN,&lt;br /&gt;KENGEN,&lt;br /&gt;NM_SHOKUIN&lt;br /&gt;FROM M_SHOKUIN WHERE&lt;br /&gt;ID_SHOKUIN = /*dto.idShokuin*/ AND&lt;br /&gt;PASSWORD = /*dto.password*/ AND&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000099;"&gt;KENGEN = 0 &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000099;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;em&gt;Мөн Interface класс-т :&lt;/em&gt;&lt;/div&gt;&lt;div&gt;&lt;em&gt;&lt;/em&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;public static final Class BEAN = JavaBeans name.class; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Мөн query-рүү дамжуулах аргументыг тодорхойлно.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;public static final String method name_ARGS = " argument name"; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;strong&gt;S2Dao файлыг ажиллуулах&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Дараах 3-н алхамаар ажиллуулна.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. S2Container-ийн байгуулагчийг ашиглаж үүсгэсэн Dicon файлын замыг зааж өгнө.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. Үүсгэсэн Container-ийн getComponent method-ийг дуудаж бүртгэгдсэн Dao-г авна.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. Хүлээн авсан Dao-н method-уудыг дуудаж ажиллуулна. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Жишээ нь:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;package examples.dao; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;import org.seasar.framework.container.S2Container;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;import org.seasar.framework.container.factory.S2ContainerFactory; &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;public class EmployeeDaoClient { &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;private static final String PATH = "examples/dao/EmployeeDao.dicon"; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;public static void main(String[] args) { &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;S2Container container = S2ContainerFactory.create(PATH); /* step 1 */ &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;container.init(); &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;try { &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EmployeeDao dao = (EmployeeDao) container.getComponent(EmployeeDao.class);/*step 2*/ &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;System.out.println(dao.getAllEmployee(7788));/* step3 */ &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;} finally { &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;container.destroy(); &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;} &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;}} &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Dicon файлд доорх 3 зүйлсийг бүртгэж өгнө.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Dao.dicon-ийг агуулах.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. Үүсгэсэн Dao-ийн компонентыг тодорхойлно.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. dao.interceptor-ийг хэрэглэх.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_n-p_8L2SPMc/RZwNW6DMBkI/AAAAAAAAACQ/gUPhZfllBrg/s1600-h/4.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5015898772174800450" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_n-p_8L2SPMc/RZwNW6DMBkI/AAAAAAAAACQ/gUPhZfllBrg/s400/4.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://s2dao.seasar.org/en/s2dao.html"&gt;Илүү дэлгэрэнгүй хичээлийг эндээс орж үзнэ үү.&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://s2dao.seasar.org/download/2006-11-14/s2-dao-1.0.39.zip"&gt;Жишээг эндээс татаж авна уу.&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Dao.dicon&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RZycTqDMBlI/AAAAAAAAACc/acVYeSUtGGM/s1600-h/5.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5016055946502997586" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RZycTqDMBlI/AAAAAAAAACc/acVYeSUtGGM/s400/5.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;j2ee.dicon файлд өгөгдлийн сантай холбогдох хэсгийг тохируулж өгнө. Жишээг татаж аваад харна уу.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4241622836651437847-1828537990222544237?l=technology-mn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technology-mn.blogspot.com/feeds/1828537990222544237/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4241622836651437847&amp;postID=1828537990222544237' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/1828537990222544237'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/1828537990222544237'/><link rel='alternate' type='text/html' href='http://technology-mn.blogspot.com/2007/01/s2dao.html' title='S2Dao'/><author><name>Sumbee</name><uri>http://www.blogger.com/profile/03956038029255794548</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_n-p_8L2SPMc/RZwKK6DMBjI/AAAAAAAAACE/hdZrZ5ioz1c/s72-c/dao_relation_image.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4241622836651437847.post-4351828477851786799</id><published>2007-01-03T00:48:00.001-08:00</published><updated>2007-01-03T07:06:58.518-08:00</updated><title type='text'>DI болон DI Container гэж юу вэ? (vргэлжлэл)</title><content type='html'>&lt;span style="font-family:arial;"&gt;Доорх жишээг харна уу.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Greeting.java&lt;/strong&gt;&lt;br /&gt;Greeting interface.&lt;br /&gt;&lt;br /&gt;public interface Greeting {&lt;br /&gt;String greet();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;GreetingImpl.java&lt;br /&gt;&lt;/strong&gt;Greeting-ийн хэрэгжүүлэх класс&lt;br /&gt;&lt;br /&gt;public class GreetingImpl implements Greeting {&lt;br /&gt;public String greet() {&lt;br /&gt;return "Hello World!";&lt;br /&gt;}}&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;GreetingClient.java&lt;/strong&gt;&lt;br /&gt;Greeting -г ашиглах Client interface&lt;br /&gt;&lt;br /&gt;public interface GreetingClient {&lt;br /&gt;void execute();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;GreetingClientImpl.java&lt;/strong&gt;&lt;br /&gt;Greeting-ийг хэрэглэх Client хэрэгжүүлэгч.&lt;br /&gt;&lt;br /&gt;public class GreetingClientImpl implements GreetingClient {&lt;br /&gt;private Greeting greeting;&lt;br /&gt;public void setGreeting(Greeting greeting) {&lt;br /&gt;this.greeting = greeting;&lt;br /&gt;}&lt;br /&gt;public void execute() {&lt;br /&gt;System.out.println(greeting.greet());&lt;br /&gt;}}&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;GreetingMain.java&lt;/strong&gt;&lt;br /&gt;public class GreetingMain {&lt;br /&gt;public static void main(String[] args) {&lt;br /&gt;Greeting greeting = new GreetingImpl();&lt;br /&gt;GreetingClientImpl greetingClient = new GreetingClientImpl();&lt;br /&gt;greetingClient.setGreeting(greeting);&lt;br /&gt;greetingClient.execute();&lt;br /&gt;}}&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#cc0000;"&gt;Үр дүн:&lt;/span&gt;&lt;br /&gt;Hello World!&lt;br /&gt;&lt;br /&gt;GreetingMain-дэх хэсгийн кодыг &lt;span style="color:#ff0000;"&gt;DI Container&lt;/span&gt;-ийн тохиргооны файлд оруулж өгвөл ямар нэг кодны өөрчлөлтөөс зугтаж болох юм. DI Container-ийн тохиргооны файл нь .dicon өргөтгөлтэй байна. Одоо жишээгээ өөрчлөн DI Container-луу оруулъя. (Зурган дээр дарж томоор харна уу)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RZt906DMBeI/AAAAAAAAABI/cEbvXLPSJxk/s1600-h/1.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5015740957896476130" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RZt906DMBeI/AAAAAAAAABI/cEbvXLPSJxk/s400/1.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Дээрх хэсгийг тайлбарлая.&lt;br /&gt;4-р мөр нь Greeting greeting = new GreetingImpl(); гэсэн кодтой адил юм.&lt;br /&gt;5, 6, 7-р мөр нь 4-р мөрөнд зарласан &lt;span style="color:#ff0000;"&gt;greeting&lt;/span&gt; компонентын нэрийг &lt;span style="color:#ff0000;"&gt;Property таг&lt;/span&gt;-д ашиглаж байна. Доорх хэсгийн код юм.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;GreetingClientImpl greetingClient = new GreetingClientImpl();&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;greetingClient.setGreeting(greeting);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;Main&lt;/span&gt; функц нь доорх байдлаар өөрчлөгдөнө.&lt;br /&gt;&lt;br /&gt;GreetingMain2.java&lt;br /&gt;&lt;br /&gt;import org.seasar.framework.container.S2Container;&lt;br /&gt;import org.seasar.framework.container.factory.S2ContainerFactory;&lt;br /&gt;public class GreetingMain2 {&lt;br /&gt;private static final String PATH = " GreetingMain2.dicon";&lt;br /&gt;public static void main(String[] args) {&lt;br /&gt;S2Container container = S2ContainerFactory.create(PATH);&lt;br /&gt;GreetingClient greetingClient = (GreetingClient) container.getComponent("greetingClient"); &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;greetingClient.execute();&lt;br /&gt;}}&lt;br /&gt;&lt;br /&gt;AOP(Aspect Oriented Programming) нь DI-тай олонтаа хэрэглэгддэг. Жишээ нь одоо &lt;span style="color:#ff0000;"&gt;GreetingImpl, GreetingClientImpl&lt;/span&gt; классаас лог гаргаж үзье. Гэхдээ эх кодыг өөрчлөлгүйгээр лог гаргана. Үүний тулд &lt;strong&gt;&lt;span style="color:#ff0000;"&gt;.dicon&lt;/span&gt;&lt;/strong&gt; файлд дараах өөрчлөлтийг хийнэ. (Зурган дээр дарж томоор харна уу)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RZuAraDMBgI/AAAAAAAAABc/yuOIbBQWhT8/s1600-h/2.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5015744093222602242" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_n-p_8L2SPMc/RZuAraDMBgI/AAAAAAAAABc/yuOIbBQWhT8/s400/2.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_n-p_8L2SPMc/RZuB56DMBiI/AAAAAAAAAB0/XNV9kbIovls/s1600-h/3.JPG"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5015745441842333218" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_n-p_8L2SPMc/RZuB56DMBiI/AAAAAAAAAB0/XNV9kbIovls/s400/3.JPG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_n-p_8L2SPMc/RZuAbaDMBfI/AAAAAAAAABU/WgkGvcSOOFk/s1600-h/2.JPG"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;a href="http://s2container.seasar.org/en/DIContainer.html#NextStep"&gt;Илүү дэлгэрэнгүй үргэлжлүүлэн үзэхийг хүсвэл энд дарна уу.&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;a href="http://s2container.seasar.org/download/2006-12-25/S2.4.7.zip"&gt;Мөн жишээнүүдийг эндээс үзнэ үү.&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4241622836651437847-4351828477851786799?l=technology-mn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technology-mn.blogspot.com/feeds/4351828477851786799/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4241622836651437847&amp;postID=4351828477851786799' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/4351828477851786799'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/4351828477851786799'/><link rel='alternate' type='text/html' href='http://technology-mn.blogspot.com/2007/01/di-di-container-2.html' title='DI болон DI Container гэж юу вэ? (vргэлжлэл)'/><author><name>Sumbee</name><uri>http://www.blogger.com/profile/03956038029255794548</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_n-p_8L2SPMc/RZt906DMBeI/AAAAAAAAABI/cEbvXLPSJxk/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4241622836651437847.post-8764702793564923553</id><published>2007-01-03T00:46:00.000-08:00</published><updated>2007-01-28T16:23:07.760-08:00</updated><title type='text'>DI болон DI Container гэж юу вэ?</title><content type='html'>&lt;span style="font-family: arial;font-family:arial;" &gt;&lt;strong&gt;DI гэж юу вэ?&lt;/strong&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;DI буюу Dependency Injection&lt;/span&gt; гэдэг нь ямар нэг объектод утга оноох үйлдэл юм. Үндсэндээ DI-ийн төрөл нь дараах 3 байх юм.&lt;br /&gt;&lt;/span&gt;&lt;ol style="font-family: arial;"&gt;&lt;li&gt;Байгуулагчаар дамжуулан&lt;/li&gt;&lt;li&gt;Setter функцээр&lt;/li&gt;&lt;li&gt;Interface-ийг ашиглан&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;DI-г хэрэгжүүлэх, объект болон түүний хамаарлыг удирдах нь&lt;span style="color: rgb(204, 0, 0);"&gt; DI Container&lt;/span&gt; юм.&lt;br /&gt;Объект нь шаардлагатай зүйлийг өөрөө авах бус DI Container дамжуулах юм. Ямар объектод юуг дамжуулах вэ гэдэг нь DI Container-н тохиргооны файлд заагдана.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;DI-ийн үндсэн үйлдэл&lt;/em&gt;&lt;br /&gt;Хялбархан кодоор жишээ авч DI-ийн үндсэн үйлдлийг үзье.&lt;br /&gt;Доорх код нь, Hello класс нь ConsolePrinter-ийг ашиглаж дэлгэцэнд “Hello” гэж хэвлэх програм юм. Ажиллуулах нь Main классын main method юм. Эхлээд DI-г хэрэглээгүй жишээ.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Source code 1-1&lt;/em&gt;&lt;br /&gt;&lt;strong&gt;Main.java&lt;/strong&gt;&lt;br /&gt;public class Main {&lt;br /&gt;public static void main(String a[]) {&lt;br /&gt;Hello hello = new Hello();&lt;br /&gt;hello.sayHello();&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Hello.java&lt;/strong&gt;&lt;br /&gt;public class Hello {&lt;br /&gt;private ConsolePrinter printer = new ConsolePrinter(“say: ”);&lt;br /&gt;Public void sayHello() {&lt;br /&gt;Printer.print(“hello”);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;ConsolePrinter.java&lt;/strong&gt;&lt;br /&gt;Public class ConsolePrinter {&lt;br /&gt;Private String lineHead;&lt;br /&gt;Public ConsolePrinter(String lineHead) {&lt;br /&gt;This.lineHead = lineHead;&lt;br /&gt;}&lt;br /&gt;Public void print(String messange) {&lt;br /&gt;System.out.println(lineHead + message);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;DI-г хэрэглэвэл&lt;/span&gt;&lt;br /&gt;&lt;em&gt;Source code 1-2&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Main.java&lt;/strong&gt;&lt;br /&gt;public class Main {&lt;br /&gt;public static void main(String a[]) {&lt;br /&gt;Printer printer = new ConsolePrinter(“say: ”);&lt;br /&gt;Hello hello = new Hello(printer);&lt;br /&gt;hello.sayHello();&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Hello.java&lt;/strong&gt;&lt;br /&gt;public class Hello {&lt;br /&gt;private Printer printer;&lt;br /&gt;public Hello(Printer printer) {&lt;br /&gt;this.printer = printer;&lt;br /&gt;}&lt;br /&gt;public void sayHello() {&lt;br /&gt;printer.print(“hello”);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Printer.java&lt;/strong&gt;&lt;br /&gt;public interface Printer {&lt;br /&gt;public void print(String message);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;ConsolePrinter.java&lt;/strong&gt;&lt;br /&gt;Public class ConsolePrinter {&lt;br /&gt;Private String lineHead;&lt;br /&gt;Public ConsolePrinter(String lineHead) {&lt;br /&gt;This.lineHead = lineHead;&lt;br /&gt;}&lt;br /&gt;Public void print(String messange) {&lt;br /&gt;System.out.println(lineHead + message);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Source code 1-2ийн жишээнд DI нь, main method-д Hello-ийн instance-д ConsolePrinter-ийн instance-ийг дамжуулж байгаа явдал юм.&lt;br /&gt;Printer гэдэг Interface-ийг хэрэглэхэд Hello класс нь хэрэгжүүлэгч класс(ConsolePrinter)-д хамаарахгүй болж байна. Хэрэв текст файлруу бичдэг TextFilePrinter гэх классыг хэрэглэхээр өөрчилвөл, өөрчлөх шаардлагатай нь Main класс л юм. DI Container-ийг хэрэглэх тохиолдолд тохиргооны файлыг зөвхөн өөрчлөх ба эх кодыг өөрчлөх шаардлагагүй юм.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;font-family:arial;" &gt;DI-аар бүх классуудын хамаарлыг удирдаад явахад нэлээн төвөгтэй Application болно. Иймээс компонентыг оруулж ирэх хэрэгтэй. Компонент нь application болон классуудын дунд байрлах ба application нь компонентуудаа комбинац хийж үүсгэх, харин компонент нь классуудаа комбинац хийж үүсгэх гэсэн хэлбэртэй болох юм.&lt;br /&gt;&lt;br /&gt;DI Container-ийн үүрэг&lt;br /&gt;1. Компонентын instance-г үүсгэх&lt;br /&gt;2. Үүссэн байгаа instance-д бусад instance-г дамжуулах&lt;br /&gt;3. Хийх арга болон комбинацыг DI Container-ийн тохиргоогоор удирдах&lt;br /&gt;&lt;br /&gt;1 ба 2 нь DI-г гүйцэтгэлийг харуулж байна. Компонентын instance-г үүсгэх үед тохиргооны дагуу DI-ийн анхны утга олгох процессыг явуулна.&lt;br /&gt;3 дахь нь DI container-ийн үүргийн чухал хэсэг юм. Тохиргоо нь ерөнхийдөө DI container-ийн тохиргооны файлаар явагдана.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4241622836651437847-8764702793564923553?l=technology-mn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technology-mn.blogspot.com/feeds/8764702793564923553/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4241622836651437847&amp;postID=8764702793564923553' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/8764702793564923553'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/8764702793564923553'/><link rel='alternate' type='text/html' href='http://technology-mn.blogspot.com/2007/01/di-di-container-1.html' title='DI болон DI Container гэж юу вэ?'/><author><name>Sumbee</name><uri>http://www.blogger.com/profile/03956038029255794548</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4241622836651437847.post-2825684138479665185</id><published>2006-12-18T05:48:00.000-08:00</published><updated>2007-01-03T04:02:55.637-08:00</updated><title type='text'>Jakarta POI гэж юу вэ?</title><content type='html'>&lt;span style="font-family:arial;"&gt;&lt;span style="color:#ff0000;"&gt;Jakarta POI&lt;/span&gt; төсөл нь &lt;span style="color:#ff0000;"&gt;Microsoft-ийн Word, Excel&lt;/span&gt; гэх мэтийн баримтуудыг &lt;span style="color:#ff0000;"&gt;JAVA&lt;/span&gt; орчинд бүтээх зорилготой юм. Доор байгаа пакеж болон компонентууд нь POI төсөлд агуулагдана.&lt;br /&gt;&lt;span style="color:#000099;"&gt;&lt;strong&gt;POIFS&lt;/strong&gt;&lt;/span&gt; (Энэ нь болохоор JAVA-г ашиглаад OLE2 нийлмэл баримтын бүтцийг унших болон бичихэд зориулсан API багц юм)&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;HSSF&lt;/span&gt;&lt;/strong&gt; (Мөн JAVA-г ашиглаад Microsoft Excel 97(-XP)-ийн sheet-ийг уншиж, бичихэд зориулсан API багц юм)&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;HWPF&lt;/span&gt;&lt;/strong&gt; (Мөн JAVA-г ашиглаад Microsoft Word 97(-XP)-ийн баримтыг уншиж, бичихэд зориулсан API багц юм)&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;HPSF&lt;/span&gt;&lt;/strong&gt; (JAVA дээр Property багцийг уншиж, бичихэд зориулсан API багц юм)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Дээрхээс миний хэрэглэж үзсэн нь HSSF юм. Жишээнүүдийг ашиглахын өмнө Jar файлыг өөрийн санд хуулах шаардлагатай. &lt;a href="http://www.ibiblio.org/maven/poi/jars/poi-2.5.1-final-20040804.jar"&gt;JAR Download&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;Мөн Eclipse ашиглан жишээг ажиллуулбал тохиромжтой. Жишээнд Import хийдэг хэсгийг хассан тул анхаараарай.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;HSSF нь JAVA дээрээс Excel 97(-XP) файлын форматтай ажилладаг POI төслийн нэг хэсэг юм.&lt;br /&gt;HSSF-ийг хэрэглэж Excel-ийн Sheet-нд өгөгдөл бичих, Sheet-ээс өгөгдөл унших, Sheet үүсгэх, засварлах зэрэг үйлдлийг хийж болно. Доорх жишээнүүдийг харна уу.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Шинэ Workbook үүсгэх&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="NewSheet"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Шинэ Sheet үүсгэх&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet1 = wb.createSheet("new sheet");&lt;br /&gt;HSSFSheet sheet2 = wb.createSheet("second sheet");&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="CreateCells"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Нүднүүд үүсгэх&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("new sheet");&lt;br /&gt;// Create a row and put some cells in it. Rows are 0 based.&lt;br /&gt;HSSFRow row = sheet.createRow((short)0);&lt;br /&gt;// Create a cell and put a value in it.&lt;br /&gt;HSSFCell cell = row.createCell((short)0);&lt;br /&gt;cell.setCellValue(1);&lt;br /&gt;// Or do it on one line.&lt;br /&gt;row.createCell((short)1).setCellValue(1.2);&lt;br /&gt;row.createCell((short)2).setCellValue("This is a string");&lt;br /&gt;row.createCell((short)3).setCellValue(true);&lt;br /&gt;// Write the output to a file&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="CreateDateCells"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Date Cell-үүдийг үүсгэх&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("new sheet");&lt;br /&gt;// Create a row and put some cells in it. Rows are 0 based.&lt;br /&gt;HSSFRow row = sheet.createRow((short)0);&lt;br /&gt;// Create a cell and put a date value in it. The first cell is not styled&lt;br /&gt;// as a date.&lt;br /&gt;HSSFCell cell = row.createCell((short)0);&lt;br /&gt;cell.setCellValue(new Date());&lt;br /&gt;// we style the second cell as a date (and time). It is important to&lt;br /&gt;// create a new cell style from the workbook otherwise you can end up&lt;br /&gt;// modifying the built in style and effecting not only this cell but other cells.&lt;br /&gt;HSSFCellStyle cellStyle = wb.createCellStyle();&lt;br /&gt;cellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy h:mm"));&lt;br /&gt;cell = row.createCell((short)1);&lt;br /&gt;cell.setCellValue(new Date());&lt;br /&gt;cell.setCellStyle(cellStyle);&lt;br /&gt;// Write the output to a file&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="CellTypes"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;cell-үүдийн ялгаатай төрлүүдтэй ажиллах&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("new sheet");&lt;br /&gt;HSSFRow row = sheet.createRow((short)2);&lt;br /&gt;row.createCell((short) 0).setCellValue(1.1);&lt;br /&gt;row.createCell((short) 1).setCellValue(new Date());&lt;br /&gt;row.createCell((short) 2).setCellValue("a string");&lt;br /&gt;row.createCell((short) 3).setCellValue(true);&lt;br /&gt;row.createCell((short) 4).setCellType(HSSFCell.CELL_TYPE_ERROR);&lt;br /&gt;// Write the output to a file&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="Alignment"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Demonstrates various alignment options&lt;br /&gt;public static void main(String[] args)&lt;br /&gt;throws IOException&lt;br /&gt;{&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("new sheet");&lt;br /&gt;HSSFRow row = sheet.createRow((short) 2);&lt;br /&gt;createCell(wb, row, (short) 0, HSSFCellStyle.ALIGN_CENTER);&lt;br /&gt;createCell(wb, row, (short) 1, HSSFCellStyle.ALIGN_CENTER_SELECTION);&lt;br /&gt;createCell(wb, row, (short) 2, HSSFCellStyle.ALIGN_FILL);&lt;br /&gt;createCell(wb, row, (short) 3, HSSFCellStyle.ALIGN_GENERAL);&lt;br /&gt;createCell(wb, row, (short) 4, HSSFCellStyle.ALIGN_JUSTIFY);&lt;br /&gt;createCell(wb, row, (short) 5, HSSFCellStyle.ALIGN_LEFT);&lt;br /&gt;createCell(wb, row, (short) 6, HSSFCellStyle.ALIGN_RIGHT);&lt;br /&gt;// Write the output to a file&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;}&lt;br /&gt;/**&lt;br /&gt;* Creates a cell and aligns it a certain way.&lt;br /&gt;*&lt;br /&gt;* @param wb the workbook&lt;br /&gt;* @param row the row to create the cell in&lt;br /&gt;* @param column the column number to create the cell in&lt;br /&gt;* @param align the alignment for the cell.&lt;br /&gt;*/&lt;br /&gt;private static void createCell(HSSFWorkbook wb, HSSFRow row, short column, short align)&lt;br /&gt;{&lt;br /&gt;HSSFCell cell = row.createCell(column);&lt;br /&gt;cell.setCellValue("Align It");&lt;br /&gt;HSSFCellStyle cellStyle = wb.createCellStyle();&lt;br /&gt;cellStyle.setAlignment(align);&lt;br /&gt;cell.setCellStyle(cellStyle);&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;a name="Borders"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Хүрээнүүдтэй ажиллах&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("new sheet");&lt;br /&gt;// Create a row and put some cells in it. Rows are 0 based.&lt;br /&gt;HSSFRow row = sheet.createRow((short) 1);&lt;br /&gt;// Create a cell and put a value in it.&lt;br /&gt;HSSFCell cell = row.createCell((short) 1);&lt;br /&gt;cell.setCellValue(4);&lt;br /&gt;// Style the cell with borders all around.&lt;br /&gt;HSSFCellStyle style = wb.createCellStyle();&lt;br /&gt;style.setBorderBottom(HSSFCellStyle.BORDER_THIN);&lt;br /&gt;style.setBottomBorderColor(HSSFColor.BLACK.index);&lt;br /&gt;style.setBorderLeft(HSSFCellStyle.BORDER_THIN);&lt;br /&gt;style.setLeftBorderColor(HSSFColor.GREEN.index);&lt;br /&gt;style.setBorderRight(HSSFCellStyle.BORDER_THIN);&lt;br /&gt;style.setRightBorderColor(HSSFColor.BLUE.index);&lt;br /&gt;style.setBorderTop(HSSFCellStyle.BORDER_MEDIUM_DASHED);&lt;br /&gt;style.setTopBorderColor(HSSFColor.BLACK.index);&lt;br /&gt;cell.setCellStyle(style);&lt;br /&gt;// Write the output to a file&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="FillsAndFrills"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Дүүргэлт болон өнгүүд&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("new sheet");&lt;br /&gt;// Create a row and put some cells in it. Rows are 0 based.&lt;br /&gt;HSSFRow row = sheet.createRow((short) 1);&lt;br /&gt;// Aqua background&lt;br /&gt;HSSFCellStyle style = wb.createCellStyle();&lt;br /&gt;style.setFillBackgroundColor(HSSFColor.AQUA.index);&lt;br /&gt;style.setFillPattern(HSSFCellStyle.BIG_SPOTS);&lt;br /&gt;HSSFCell cell = row.createCell((short) 1);&lt;br /&gt;cell.setCellValue("X");&lt;br /&gt;cell.setCellStyle(style);&lt;br /&gt;// Orange "foreground", foreground being the fill foreground not the font color.&lt;br /&gt;style = wb.createCellStyle();&lt;br /&gt;style.setFillForegroundColor(HSSFColor.ORANGE.index);&lt;br /&gt;style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);&lt;br /&gt;cell = row.createCell((short) 2);&lt;br /&gt;cell.setCellValue("X");&lt;br /&gt;cell.setCellStyle(style);&lt;br /&gt;// Write the output to a file&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="MergedCells"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Нүднүүдийг нэгтгэх&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("new sheet");&lt;br /&gt;HSSFRow row = sheet.createRow((short) 1);&lt;br /&gt;HSSFCell cell = row.createCell((short) 1);&lt;br /&gt;cell.setCellValue("This is a test of merging");&lt;br /&gt;sheet.addMergedRegion(new Region(1,(short)1,1,(short)2));&lt;br /&gt;// Write the output to a file&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="WorkingWithFonts"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Фонттой ажиллах&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("new sheet");&lt;br /&gt;// Create a row and put some cells in it. Rows are 0 based.&lt;br /&gt;HSSFRow row = sheet.createRow((short) 1);&lt;br /&gt;// Create a new font and alter it.&lt;br /&gt;HSSFFont font = wb.createFont();&lt;br /&gt;font.setFontHeightInPoints((short)24);&lt;br /&gt;font.setFontName("Courier New");&lt;br /&gt;font.setItalic(true);&lt;br /&gt;font.setStrikeout(true);&lt;br /&gt;// Fonts are set into a style so create a new one to use.&lt;br /&gt;HSSFCellStyle style = wb.createCellStyle();&lt;br /&gt;style.setFont(font);&lt;br /&gt;// Create a cell and put a value in it.&lt;br /&gt;HSSFCell cell = row.createCell((short) 1);&lt;br /&gt;cell.setCellValue("This is a test of fonts");&lt;br /&gt;cell.setCellStyle(style);&lt;br /&gt;// Write the output to a file&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="CustomColors"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Тогтсон өнгүүд&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet();&lt;br /&gt;HSSFRow row = sheet.createRow((short) 0);&lt;br /&gt;HSSFCell cell = row.createCell((short) 0);&lt;br /&gt;cell.setCellValue("Default Palette");&lt;br /&gt;//apply some colors from the standard palette,&lt;br /&gt;// as in the previous examples.&lt;br /&gt;//we'll use red text on a lime background&lt;br /&gt;HSSFCellStyle style = wb.createCellStyle();&lt;br /&gt;style.setFillForegroundColor(HSSFColor.LIME.index);&lt;br /&gt;style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);&lt;br /&gt;HSSFFont font = wb.createFont();&lt;br /&gt;font.setColor(HSSFColor.RED.index);&lt;br /&gt;style.setFont(font);&lt;br /&gt;cell.setCellStyle(style);&lt;br /&gt;//save with the default palette&lt;br /&gt;FileOutputStream out = new FileOutputStream("default_palette.xls");&lt;br /&gt;wb.write(out);&lt;br /&gt;out.close();&lt;br /&gt;//now, let's replace RED and LIME in the palette&lt;br /&gt;// with a more attractive combination&lt;br /&gt;// (lovingly borrowed from freebsd.org)&lt;br /&gt;cell.setCellValue("Modified Palette");&lt;br /&gt;//creating a custom palette for the workbook&lt;br /&gt;HSSFPalette palette = wb.getCustomPalette();&lt;br /&gt;//replacing the standard red with freebsd.org red&lt;br /&gt;palette.setColorAtIndex(HSSFColor.RED.index,&lt;br /&gt;(byte) 153, //RGB red (0-255)&lt;br /&gt;(byte) 0, //RGB green&lt;br /&gt;(byte) 0 //RGB blue&lt;br /&gt;);&lt;br /&gt;//replacing lime with freebsd.org gold&lt;br /&gt;palette.setColorAtIndex(HSSFColor.LIME.index, (byte) 255, (byte) 204, (byte) 102);&lt;br /&gt;//save with the modified palette&lt;br /&gt;// note that wherever we have previously used RED or LIME, the&lt;br /&gt;// new colors magically appear&lt;br /&gt;out = new FileOutputStream("modified_palette.xls");&lt;br /&gt;wb.write(out);&lt;br /&gt;out.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="ReadWriteWorkbook"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Workbook-үүдийг Унших болон дахин бичих&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream("workbook.xls"));&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook(fs);&lt;br /&gt;HSSFSheet sheet = wb.getSheetAt(0);&lt;br /&gt;HSSFRow row = sheet.getRow(2);&lt;br /&gt;HSSFCell cell = row.getCell((short)3);&lt;br /&gt;if (cell == null)&lt;br /&gt;cell = row.createCell((short)3);&lt;br /&gt;cell.setCellType(HSSFCell.CELL_TYPE_STRING);&lt;br /&gt;cell.setCellValue("a test");&lt;br /&gt;// Write the output to a file&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="NewLinesInCells"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Нүдэнд шинэ нүд хэрэглэх&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet s = wb.createSheet();&lt;br /&gt;HSSFRow r = null;&lt;br /&gt;HSSFCell c = null;&lt;br /&gt;HSSFCellStyle cs = wb.createCellStyle();&lt;br /&gt;HSSFFont f = wb.createFont();&lt;br /&gt;HSSFFont f2 = wb.createFont();&lt;br /&gt;cs = wb.createCellStyle();&lt;br /&gt;cs.setFont( f2 );&lt;br /&gt;//Word Wrap MUST be turned on&lt;br /&gt;cs.setWrapText( true );&lt;br /&gt;r = s.createRow( (short) 2 );&lt;br /&gt;r.setHeight( (short) 0x349 );&lt;br /&gt;c = r.createCell( (short) 2 );&lt;br /&gt;c.setCellType( HSSFCell.CELL_TYPE_STRING );&lt;br /&gt;c.setCellValue( "Use \n with word wrap on to create a new line" );&lt;br /&gt;c.setCellStyle( cs );&lt;br /&gt;s.setColumnWidth( (short) 2, (short) ( ( 50 * 8 ) / ( (double) 1 / 20 ) ) );&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream( "workbook.xls" );&lt;br /&gt;wb.write( fileOut );&lt;br /&gt;fileOut.close();&lt;/span&gt;&lt;a name="DataFormats"&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;Data Formats HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("format sheet");&lt;br /&gt;HSSFCellStyle style;&lt;br /&gt;HSSFDataFormat format = wb.createDataFormat();&lt;br /&gt;HSSFRow row;&lt;br /&gt;HSSFCell cell;&lt;br /&gt;short rowNum = 0;&lt;br /&gt;short colNum = 0;&lt;br /&gt;row = sheet.createRow(rowNum++);&lt;br /&gt;cell = row.createCell(colNum);&lt;br /&gt;cell.setCellValue(11111.25);&lt;br /&gt;style = wb.createCellStyle();&lt;br /&gt;style.setDataFormat(format.getFormat("0.0"));&lt;br /&gt;cell.setCellStyle(style);&lt;br /&gt;row = sheet.createRow(rowNum++);&lt;br /&gt;cell = row.createCell(colNum);&lt;br /&gt;cell.setCellValue(11111.25);&lt;br /&gt;style = wb.createCellStyle();&lt;br /&gt;style.setDataFormat(format.getFormat("#,##0.0000"));&lt;br /&gt;cell.setCellStyle(style);&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Нэг хуудсанд Sheet-ийг багтаах&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("format sheet");&lt;br /&gt;HSSFPrintSetup ps = sheet.getPrintSetup();&lt;br /&gt;&lt;br /&gt;sheet.setAutobreaks(true);&lt;br /&gt;&lt;br /&gt;ps.setFitHeight((short)1);&lt;br /&gt;ps.setFitWidth((short)1);&lt;br /&gt;// Create various cells and rows for spreadsheet.&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="PrintArea2"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Хэвлэлтийн бүсийг тохируулах&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("Sheet1");&lt;br /&gt;wb.setPrintArea(0, "$A$1:$C$2");&lt;br /&gt;//sets the print area for the first sheet&lt;br /&gt;//Alternatively:&lt;br /&gt;//wb.setPrintArea(0, 0, 1, 0, 0) is equivalent to using the name reference (See the JavaDocs for more details)&lt;br /&gt;// Create various cells and rows for spreadsheet.&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Хуудасны дугаарыг Footer-т тохируулах&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("format sheet");&lt;br /&gt;HSSFFooter footer = sheet.getFooter()&lt;br /&gt;&lt;br /&gt;footer.setRight( "Page " + HSSFFooter.page() + " of " + HSSFFooter.numPages() );&lt;br /&gt;&lt;br /&gt;// Create various cells and rows for spreadsheet.&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;/span&gt;&lt;a name="ConvenienceFunctions"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Headers and Footers&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Example is for headers but applies directly to footers.&lt;br /&gt;HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;HSSFSheet sheet = wb.createSheet("new sheet");&lt;br /&gt;HSSFHeader header = sheet.getHeader();&lt;br /&gt;header.setCenter("Center Header");&lt;br /&gt;header.setLeft("Left Header");&lt;br /&gt;header.setRight(HSSFHeader.font("Stencil-Normal", "Italic") +&lt;br /&gt;HSSFHeader.fontSize((short) 16) + "Right w/ Stencil-Normal Italic font and size 16");&lt;br /&gt;FileOutputStream fileOut = new FileOutputStream("workbook.xls");&lt;br /&gt;wb.write(fileOut);&lt;br /&gt;fileOut.close();&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;a name="DrawingShapes"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4241622836651437847-2825684138479665185?l=technology-mn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technology-mn.blogspot.com/feeds/2825684138479665185/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4241622836651437847&amp;postID=2825684138479665185' title='1 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/2825684138479665185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/2825684138479665185'/><link rel='alternate' type='text/html' href='http://technology-mn.blogspot.com/2006/12/hssf-java-api-microsoft-excel.html' title='Jakarta POI гэж юу вэ?'/><author><name>Sumbee</name><uri>http://www.blogger.com/profile/03956038029255794548</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4241622836651437847.post-7112576295302401372</id><published>2006-10-15T19:22:00.000-07:00</published><updated>2007-01-03T07:26:50.811-08:00</updated><title type='text'>Seasar гэж юу вэ?</title><content type='html'>&lt;a href="http://www.seasar.org/"&gt;&lt;span style="font-family:arial;"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger2/3863/517776225177177/320/seasar.jpg" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt; &lt;strong&gt;Seasar &lt;/strong&gt;нь Япончуудын гаргасан Web Application Framework юм.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:arial;"&gt;Seasar-ийн онцлог&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- Open Source програм хангамж&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- Цэвэр JAVA технологи&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- &lt;/span&gt;&lt;a href="http://technology-mn.blogspot.com/2007/01/di-di-container-1.html"&gt;&lt;span style="font-family:arial;"&gt;DI Container&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt; + &lt;/span&gt;&lt;a href="http://en.wikipedia.org/wiki/Aspect-oriented_programming"&gt;&lt;span style="font-family:arial;"&gt;AOP&lt;/span&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;- "See" "Sir" гэсэн үгээс бүтсэн&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- Yasuo Higa гэдэг хүн Seasar-ийг бүтээжээ.&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:arial;"&gt;Seasar-ийн зорилго&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- J2EE-ийн хамгийн сайн хэсгүүдийг авч J2EE-ийг ахин бүтээх&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:arial;"&gt;Seasar-ийн түүх&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- 2001- 2002 онд бэлтгэл Seasar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- 2002 - 2003 онд анхны Seasar-ийн хувилбар гарсан(S0). &lt;/span&gt;&lt;a href="http://www.starlogic.jp/"&gt;&lt;span style="font-family:arial;"&gt;StarLogic&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt; компани &lt;/span&gt;&lt;a href="http://tomcat.apache.org/"&gt;&lt;span style="font-family:arial;"&gt;Tomcat &lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;болон &lt;/span&gt;&lt;a href="http://ibatis.apache.org/"&gt;&lt;span style="font-family:arial;"&gt;iBATIS &lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;технологиудыг ашиглаж онлайн гадаад валют солих систем хөгжүүлсэн.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- 2003 онд Seasar1 хувилбар гарсан. J2EE Server-т Flowlet, Rulet, Sqlet, Jetty, HSQLDB, GPSS, Eclipse plugin бүгд агуулагдсан.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- 2004 оны 4 сард Seasar2 гарсан. DI Container нь DI-ийн хуучин функцуудыг ахин build хийх замаар хөгжүүлэгдсэн.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;Дотроо олон хэсгүүдтэй ба тэдгээрээс өргөн хэрэглэгддэг S2Container(DI Container), S2Dao, S2JSF-ийн талаар бага ч гэсэн ойлголтуудыг өгөх болно.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4241622836651437847-7112576295302401372?l=technology-mn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://technology-mn.blogspot.com/feeds/7112576295302401372/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4241622836651437847&amp;postID=7112576295302401372' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/7112576295302401372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4241622836651437847/posts/default/7112576295302401372'/><link rel='alternate' type='text/html' href='http://technology-mn.blogspot.com/2006/10/seasar.html' title='Seasar гэж юу вэ?'/><author><name>Sumbee</name><uri>http://www.blogger.com/profile/03956038029255794548</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
