w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! ᶤϾ㉏ⱘᅲ՟᭄ᯊ᠔ᣛᅮⱘ㔎ⳕؐDŽᇍ䈵ᓩ⫼ᅲ՟ব䞣ⱘ㔎ⳕؐЎ nullˈ㗠ॳྟ㉏ൟᅲ՟ব䞣ⱘ㔎 ᔧᓩ⫼㉏ൟॳྟ㉏ൟ⫼ˈټ⫼⊩ˈᅗӀࣙᣀ˖ᇣ䗳ᑺ䯂乬ˈ䖭⾡㉏ൟҹા⾡㉏ൟⱘ᭄㒧ᵘᄬ ᓩ⫼㉏ൟॳྟ㉏ൟⱘ㸠ЎᅠܼϡৠˈᑊϨᅗӀ᳝ϡৠⱘ䇁НDŽᓩ⫼㉏ൟॳྟ㉏ൟ᳝ϡৠⱘ⡍ᕕ doubleDouble floatFloat longLong intInteger shortShort byteByte charCharacter booleanBoolean ॳྟ㉏ൟᇕ㺙㉏ java Ў int ᦤկⱘᇕ㺙㉏DŽJava Ў↣Ͼॳྟ㉏ൟᦤկњᇕ㺙㉏DŽ Java ᦤկϸ⾡ϡৠⱘ㉏ൟ˖ᓩ⫼㉏ൟॳྟ㉏ൟ˄ݙ㕂㉏ൟ˅DŽInt ᰃ java ⱘॳྟ᭄㉏ൟˈInteger ᰃ 3ǃint Integer ᳝ҔМऎ߿ ៥Ӏᑨ䆹⫼ StringBuffer ㉏ java.lang.String ㉏ᰃ final ㉏ൟⱘˈℸϡৃҹ㒻ᡓ䖭Ͼ㉏ǃϡ㛑ׂᬍ䖭Ͼ㉏DŽЎњᦤ催ᬜ⥛㡖ⳕぎ䯈ˈ ᴀ᭄㉏ൟࣙᣀ byteǃintǃcharǃlongǃfloatǃdoubleǃboolean shortDŽ 2ǃString ᰃ᳔ᴀⱘ᭄㉏ൟ৫? њᑨ⫼ᑣߑ᭄ৠৡ䯂乬DŽއ㿔᳝♉⌏ǃᢑ䈵ǃ㸠Ў݅ѿǃҷⷕ݅ѿⱘӬˈᕜདⱘ㾷 䆌ϡৠ㉏ⱘᇍ䈵ᇍৠϔ⍜ᙃߎડᑨDŽᗕᗻࣙᣀখ᭄࣪ᗕᗻࣙᗕᗻDŽᗕᗻ䇁ܕᗕᗻᰃᣛ 4. ᗕᗻ˖ े⦄ᅲϪ⬠ৃҹ㹿ᦣ㒬៤ϔ㋏߫ᅠܼ㞾⊏ǃᇕ㺙ⱘᇍ䈵ˈ䖭ѯᇍ䈵䗮䖛ϔϾফֱᡸⱘষ䆓䯂݊Ҫᇍ䈵DŽ ᇕ㺙ᰃᡞ䖛᭄ࣙೈ䍋ᴹˈᇍ᭄ⱘ䆓䯂া㛑䗮䖛ᏆᅮНⱘ⬠䴶DŽ䴶ᇍ䈵䅵ㅫྟѢ䖭Ͼᴀὖᗉˈ 3.ᇕ㺙˖ ᑊϨ㉏ৃҹׂᬍࡴᮄⱘᮍ⊩ՓП䗖ড়⡍⅞ⱘ䳔㽕DŽ ⌒⫳㉏˄ᄤ㉏˅ˈ㗠ॳྟ㉏⿄Ўᮄ㉏ⱘ㉏˄⠊㉏˅DŽ⌒⫳㉏ৃҹҢᅗⱘ㉏䙷䞠㒻ᡓᮍ⊩ᅲ՟ব䞣ˈ ϔϾᮄ㉏ৃҹҢ⦄᳝ⱘ㉏Ё⌒⫳ˈ䖭Ͼ䖛⿄Ў㉏㒻ᡓDŽᮄ㉏㒻ᡓњॳྟ㉏ⱘ⡍ᗻˈ ᮄ㉏⿄Ўॳྟ㉏ⱘ 䆌哧ࢅ㉏ⱘ䞡⫼ˈᅗᦤկњϔ⾡ᯢ⹂㸼䗄݅ᗻⱘᮍ⊩DŽᇍ䈵ⱘܕ㒻ᡓᰃϔ⾡㘨㒧㉏ⱘሖൟˈᑊϨ 2.㒻ᡓ˖ ᢑ䈵ˈѠᰃ᭄ᢑ䈵DŽ ᑊϡᠧㅫњ㾷ܼ䚼䯂乬ˈ㗠াᰃ䗝ᢽ݊Ёⱘϔ䚼ߚˈ᱖ᯊϡ⫼䚼ߚ㒚㡖DŽᢑ䈵ࣙᣀϸϾᮍ䴶ˈϔᰃ䖛 ߚഄ⊼ᛣϢᔧࠡⳂ᳝ᷛ݇ⱘᮍ䴶DŽᢑ䈵ܙᢑ䈵ህᰃᗑ⬹ϔϾЏ乬ЁϢᔧࠡⳂᷛ᮴݇ⱘ䙷ѯᮍ䴶ˈҹ֓ 1.ᢑ䈵˖ 1ǃ䴶ᇍ䈵ⱘ⡍ᕕ᳝ાѯᮍ䴶 w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! Server 䕗ⱘݙᄬˈ✊㗠 Stateful Session Bean ⱘӬैѢҪৃҹ㓈ᣕՓ⫼㗙ⱘ⢊ᗕDŽ ᮍ䴶ᴹⳟˈ Stateful Session BeanϢ Stateless Session Bean↨䕗ˈ Stateful Session BeanӮ⍜㗫 J2EE ⫼㗙ᠻ㸠ᶤϾ Stateless Session Beanⱘ methods ᯊˈӮᰃৠϔϾ Bean ⱘ Instance ᠻ㸠DŽҢݙᄬ Container ᑊϡӮᡒᇏ⡍ᅮⱘ Stateless Session Beanⱘᅲԧᴹᠻ㸠䖭Ͼ methodDŽᤶ㿔Пˈᕜৃ㛑᭄ϾՓ 䘏䕥㒘ӊˈԚᰃҪैϡ䋳䋷䆄ᔩՓ⫼㗙⢊ᗕˈгህᰃ䇈ᔧՓ⫼㗙ি Stateless Session Bean ⱘᯊˈEJB 䗮ᐌᴹ䇈ˈϔϾՓ⫼㗙Ӯ᳝ϔϾⳌᇍᑨⱘ Stateful Session Bean ⱘᅲԧDŽStateless Session Bean 㱑✊гᰃ 䛑ৃҹᇚ㋏㒳䘏䕥ᬒ methodПЁᠻ㸠ˈϡৠⱘᰃ Stateful Session Bean ৃҹ䆄ᔩি㗙ⱘ⢊ᗕˈℸ Session Bean 䖬ৃҹݡ㒚ߚЎ Stateful Session BeanϢ Stateless Session Beanˈ䖭ϸ⾡ⱘ Session Bean ᰃϔϾ⬅⦄᳝ӕϮᑨ⫼ᑣᅲ⦄ⱘᅲԧDŽ ఼Ёⱘᅲԧⱘᇍ䈵㾚ˈټᣕЙᗻᄬټᇍѢᅶ᠋ᴎˈEntityBean ᰃϔ⾡ᣕЙᗻᇍ䈵ˈᅗҷ㸼ϔϾᄬ ᇍѢᅶ᠋ᴎˈSessionBean ᰃϔ⾡䴲ᣕЙᗻᇍ䈵ˈᅗᅲ⦄ᶤѯ᳡ࡵ఼Ϟ䖤㸠ⱘϮࡵ䘏䕥DŽ 㒘ӊDŽEntityBean 㹿⫼ᴹҷ㸼ᑨ⫼㋏㒳Ё⫼ࠄⱘ᭄DŽ SessionBean J2EE ᑨ⫼ᑣЁ㹿⫼ᴹᅠ៤ϔѯ᳡ࡵ఼ッⱘϮࡵ᪡ˈ՟བ䆓䯂᭄ᑧǃ䇗⫼݊Ҫ EJB EJBࣙᣀ Session BeanǃEntity BeanǃMessage Driven BeanˈѢ JNDIǃRMIǃJAT ㄝᡔᴃᅲ⦄DŽ ⱘऎ߿DŽ 8ǃEJB ᰃѢાѯᡔᴃᅲ⦄ⱘ˛ᑊ䇈ߎ SessionBean EntityBean ⱘऎ߿ˈStatefulBean StatelessBean ࠡৢ乍ेৃˈ᠔ҹᦦܹ䗳ᑺ䕗ᖿDŽ ᣝᑣো㋶ᓩ᭄䳔㽕䖯㸠ࠡৢ䘡ग़ˈԚᰃᦦ᭄ܹᯊা䳔㽕䆄ᔩᴀ乍ⱘˈټՓ⫼ঠ䫒㸼ᅲ⦄ᄬ ᭄ܹ᜶ˈVector ⬅ѢՓ⫼њ synchronized ᮍ⊩˄㒓ᅝܼ˅ˈ䗮ᐌᗻ㛑Ϟ䕗 ArrayList Ꮒˈ㗠 LinkedList ㋴⿏ࡼㄝݙᄬ᪡ˈ᠔ҹ㋶ᓩ᭄ᖿ㗠ᦦܗ㋴㽕⍝ঞ᭄㒘ܗ㋴ˈԚᰃᦦܹܗ䆌Ⳉᣝᑣো㋶ᓩܕᅗӀ䛑 ㋴ˈܗⱘ᭄ҹ֓ࡴᦦܹټ㋴᭄Ѣᅲ䰙ᄬܗ᭄ˈℸ᭄㒘ټArrayList Vector 䛑ᰃՓ⫼᭄㒘ᮍᓣᄬ ᗻ㛑⡍ᗻټ7ǃ䇈ߎ ArrayList,Vector, LinkedList ⱘᄬ ᬜ⥛ϞԢѢ servletDŽ ѢϾ䇋∖ˈᑊϨ݊ᅲ՟ϔ㠀ϡӮ䫔↕ˈ㗠 CGI ᇍ↣Ͼ䇋∖䛑ѻ⫳ᮄⱘ䖯ˈ᳡ࡵᅠ៤ৢህ䫔↕ˈ᠔ҹ Ϣ cgi ⱘऎ߿Ѣ servlet ໘Ѣ᳡ࡵ఼䖯Ёˈᅗ䗮䖛㒓ᮍᓣ䖤㸠݊ service ᮍ⊩ˈϔϾᅲ՟ৃҹ᳡ࡵ ⊩DŽ ᅮᇚᅲ՟䫔↕ⱘᯊ䇗⫼݊ destroy ᮍއ䖤㸠Ϣ䇋∖ᇍᑨⱘ doXXX ᮍ⊩˄doGetˈdoPost˅ㄝˈᔧ᳡ࡵ఼ Servlet 㹿᳡ࡵ఼ᅲ՟࣪ৢˈᆍ఼䖤㸠݊ init ᮍ⊩ˈ䇋∖ࠄ䖒ᯊ䖤㸠݊ service ᮍ⊩ˈservice ᮍ⊩㞾ࡼ⌒䘷 6ǃ䇈ߎ Servlet ⱘ⫳ੑ਼ᳳˈᑊ䇈ߎ Servlet CGI ⱘऎ߿DŽ ໄᯢᡯߎ㹿ᤩ㦋ⱘ䖤㸠ᯊᓖᐌDŽ ᰃϔ⾡ᐌ㾕䖤㸠䫭䇃DŽjava 㓪䆥఼㽕∖ᮍ⊩ᖙ乏ໄᯢᡯߎৃ㛑থ⫳ⱘ䴲䖤㸠ᯊᓖᐌˈԚᰃᑊϡ㽕∖ᖙ乏 ᓖᐌ㸼⼎ᑣ䖤㸠䖛Ёৃ㛑ߎ⦄ⱘ䴲ℷᐌ⢊ᗕˈ䖤㸠ᯊᓖᐌ㸼⼎㰮ᢳᴎⱘ䗮ᐌ᪡Ёৃ㛑䘛ࠄⱘᓖᐌˈ 5ǃ䖤㸠ᯊᓖᐌϢϔ㠀ᓖᐌ᳝ԩᓖৠ˛ ᭄DŽ 䘧ᄫヺ᭄㽕ᬍবⱘᯊԴህৃҹՓ⫼ StringBufferDŽൟഄˈԴৃҹՓ⫼ StringBuffers ᴹࡼᗕᵘ䗴ᄫヺ DŽ䖭Ͼ String ㉏ᦤկњ᭄ؐϡৃᬍবⱘᄫヺІDŽ㗠䖭Ͼ StringBuffer ㉏ᦤկⱘᄫヺІ䖯㸠ׂᬍDŽᔧԴⶹ ᄬ᪡ᄫヺІˈेࣙϾᄫヺⱘᄫヺ᭄ټJAVA ᑇৄᦤկњϸϾ㉏˖String StringBufferˈᅗӀৃҹ 4ǃString StringBuffer ⱘऎ߿ ⳕؐϢᅗӀⱘ㉏ൟ᳝݇DŽ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! ϟⱘϔ⾡Ϲ䞡䯂乬DŽ↨བ䇈ݙᄬ⑶ߎDŽϡৃ㛑ᣛᳯᑣ㛑໘⧚މerror 㸼⼎ᘶϡᰃϡৃ㛑Ԛᕜೄ䲒ⱘᚙ 15ǃerror exception ᳝ҔМऎ߿? ؐⱘ㉏ൟDŽ ৠⱘখ᭄Ͼ᭄᳝ϡৠⱘখ᭄㉏ൟˈ߭⿄Ўᮍ⊩ⱘ䞡䕑(Overloading)DŽOverloaded ⱘᮍ⊩ᰃৃҹᬍব䖨ಲ ᅮНˈᇍᅗ㗠㿔ˈ⠊㉏ЁⱘᅮНབৠ㹿“ሣ㬑“њDŽབᵰϔϾ㉏ЁᅮНњϾৠৡⱘᮍ⊩ˈᅗӀ᳝ϡ ᳝Ⳍৠⱘৡ⿄খ᭄ˈ៥Ӏ䇈䆹ᮍ⊩㹿䞡ݭ (Overriding)DŽᄤ㉏ⱘᇍ䈵Փ⫼䖭Ͼᮍ⊩ᯊˈᇚ䇗⫼ᄤ㉏Ёⱘ ᗕᗻⱘϔ⾡㸼⦄ˈ䞡䕑 Overloading ᰃϔϾ㉏Ёᗕᗻⱘϔ⾡㸼⦄DŽབᵰᄤ㉏ЁᅮНᶤᮍ⊩Ϣ݊⠊㉏ ᮍ⊩ⱘ䞡ݭ Overriding 䞡䕑 Overloading ᰃ Java ᗕᗻⱘϡৠ㸼⦄DŽ䞡ݭ Overriding ᰃ⠊㉏Ϣᄤ㉏П䯈 14ǃOverload Override ⱘऎ߿DŽOverloaded ⱘᮍ⊩ᰃ৺ৃҹᬍব䖨ಲؐⱘ㉏ൟ? ᗕDŽ 㦋ᕫᇍ䈵䫕䖯ܹ䖤㸠⢊ޚ∴া᳝䩜ᇍℸᇍ䈵থߎ notify ᮍ⊩˄ notifyAll˅ৢᴀ㒓ᠡ䖯ܹᇍ䈵䫕ᅮ wait ᰃ Object ㉏ⱘᮍ⊩ˈᇍℸᇍ䈵䇗⫼ wait ᮍ⊩ᇐ㟈ᴀ㒓ᬒᓗᇍ䈵䫕ˈ䖯ܹㄝᕙℸᇍ䈵ⱘㄝᕙ䫕ᅮ∴ˈ ⢊ᗕձ✊ֱᣕˈࠄᯊৢӮ㞾ࡼᘶDŽ䇗⫼ sleep ϡӮ䞞ᬒᇍ䈵䫕DŽ ᠻ㸠ᣛᅮᯊ䯈ˈ㒭ᠻ㸠ᴎӮ㒭݊Ҫ㒓ˈԚᰃⲥذ sleepᰃ㒓㉏˄Thread˅ⱘᮍ⊩ˈᇐ㟈ℸ㒓᱖ 13ǃsleep() wait() ᳝ҔМऎ߿? ᦤկൗഒᬊ䲚ᯊⱘ݊Ҫ䌘⑤ಲᬊˈ՟བ݇䯁᭛ӊㄝDŽ finalize ᰃ Object ㉏ⱘϔϾᮍ⊩ˈൗഒᬊ䲚఼ᠻ㸠ⱘᯊӮ䇗⫼㹿ಲᬊᇍ䈵ⱘℸᮍ⊩ˈৃҹ㽚Ⲫℸᮍ⊩ finally ᰃᓖᐌ໘⧚䇁হ㒧ᵘⱘϔ䚼ߚˈ㸼⼎ᘏᰃᠻ㸠DŽ final ⫼Ѣໄᯢሲᗻˈᮍ⊩㉏ˈߚ߿㸼⼎ሲᗻϡৃবˈᮍ⊩ϡৃ㽚Ⲫˈ㉏ϡৃ㒻ᡓDŽ 12ǃfinal, finally, finalize ⱘऎ߿DŽ Hashtable HashMap 䞛⫼ⱘ hash/rehash ㅫ⊩䛑ὖϔḋˈ᠔ҹᗻ㛑ϡӮ᳝ᕜⱘᏂᓖDŽ ϡ䳔㽕㞾ᏅЎᅗⱘᮍ⊩ᅲ⦄ৠℹˈ㗠 HashMap ህᖙ乏ЎПᦤկৠℹDŽ ᳔ⱘϡৠᰃˈHashtable ⱘᮍ⊩ᰃ Synchronize ⱘˈ㗠 HashMap ϡᰃˈϾ㒓䆓䯂 Hashtable ᯊˈ Hashtable 㒻ᡓ㞾 Dictionary ㉏ˈ㗠 HashMap ᰃ Java1.2 ᓩ䖯ⱘ Map interface ⱘϔϾᅲ⦄DŽ 䅽Ҏᓩ䍋䇃㾷DŽ HashMap ᡞ Hashtable ⱘ contains ᮍ⊩এᥝњˈᬍ៤ containsvalue containsKeyDŽЎ contains ᮍ⊩ᆍᯧ 䆌DŽܕ䆌ᇚ null ЎϔϾ entry ⱘ key 㗙 valueˈ㗠 Hashtable ϡܕ HashMap 䆌ぎ˄null˅䬂ؐ˄key˅,⬅Ѣ䴲㒓ᅝܼˈᬜ⥛Ϟৃ㛑催Ѣ HashtableDŽܕ HashMap HashMapᰃ Hashtable ⱘ䕏䞣㑻ᅲ⦄˄䴲㒓ᅝܼⱘᅲ⦄˅ˈҪӀ䛑ᅠ៤њ Map ষˈЏ㽕ऎ߿Ѣ 11ǃHashMap Hashtable ⱘऎ߿DŽ &ᰃԡ䖤ㅫヺˈ㸼⼎ᣝԡϢ䖤ㅫˈ&&ᰃ䘏䕥䖤ㅫヺˈ㸼⼎䘏䕥Ϣ˄and˅DŽ 10ǃ&&&ⱘऎ߿DŽ ܼ࣪ㄝ᪡DŽ Collections ᰃ䩜ᇍ䲚ড়㉏ⱘϔϾᐂࡽ㉏ˈҪᦤկϔ㋏߫䴭ᗕᮍ⊩ᅲ⦄ᇍ⾡䲚ড়ⱘ᧰㋶ǃᥦᑣǃ㒓ᅝ Collection ᰃ䲚ড়㉏ⱘϞ㑻ষˈ㒻ᡓϢҪⱘষЏ㽕᳝ Set List. 9ǃCollection Collectionsⱘऎ߿DŽ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! 21ǃStatic Nested Class Inner ClassⱘϡৠDŽ ᅶ᠋䗮䖛ᆍ఼ᴹ䆓䯂ⳳℷⱘ EJB 㒘ӊDŽ 䯂ⳳℷⱘ EJB 㒘ӊˈ㗠ᰃ䗮䖛݊ᆍ఼䆓䯂DŽEJB ᆍ఼ᰃ EJB 㒘ӊⱘҷ⧚ˈEJB 㒘ӊ⬅ᆍ఼᠔߯ᓎㅵ⧚DŽ 䖯ǃ䎼䅵ㅫᴎ˅DŽԚ EJB ᖙ乏㹿Ꮧ㕆䇌བ WebspereǃWebLogic 䖭ḋⱘᆍ఼ЁˈEJB ᅶ᠋ҢϡⳈ䆓 Ѣ DCOMˈेߚᏗᓣ㒘ӊDŽᅗᰃѢ Java ⱘ䖰ᮍ⊩䇗⫼˄RMI˅ᡔᴃⱘˈ᠔ҹ EJB ৃҹ㹿䖰䆓䯂˄䎼 ⳌᔧѢᖂ䕃 COM ൟЁⱘᴀഄ䖯ݙ COM 㒘ӊˈᅗᰃϡ㛑㹿䎼䖯䆓䯂ⱘDŽEnterprise Java Bean Ⳍᔧ ⱘᵘ䗴఼ˈˈ䗮ᐌ Java Bean䖬㽕ᅲ⦄ Serializable ষ⫼Ѣᅲ⦄ Bean ⱘᣕЙᗻDŽJava Beanᅲ䰙Ϟ ϟˈ⬅Ѣ Java Bean ᰃ㹿ᆍ఼᠔߯ᓎ˄བ Tomcat˅ⱘˈ᠔ҹ Java Bean ᑨ᳝ϔϾ᮴খމBeanDŽԚ䗮ᐌᚙ Java Bean ᰃৃ⫼ⱘ㒘ӊˈᇍ Java Bean ᑊ≵᳝ϹḐⱘ㾘㣗ˈ⧚䆎Ϟ䆆ˈӏԩϔϾ Java ㉏䛑ৃҹᰃϔϾ 20ǃEJB Ϣ JAVA BE AN ⱘऎ߿˛ ߮ᠡ䇋∖ⱘ᠔᳝খ᭄䞡ᮄ䇋∖ˈ᠔ҹ session,request খ᭄䛑ৃҹ㦋পDŽ redirectህᰃ᳡ࡵッḍ䘏䕥,থ䗕ϔϾ⢊ᗕⷕ,ਞ䆝⌣㾜఼䞡ᮄএ䇋∖䙷Ͼഄഔˈϔ㠀ᴹ䇈⌣㾜఼Ӯ⫼ ॳᴹⱘഄഔDŽ ᴹⱘˈ᠔ҹᅗⱘഄഔᷣЁ䖬ᰃܓᡞ䖭ѯݙᆍݡথ㒭⌣㾜఼ˈ⌣㾜఼ḍᴀϡⶹ䘧᳡ࡵ఼থ䗕ⱘݙᆍᰃҢા forward ᰃ᳡ࡵ఼䇋∖䌘⑤ˈ᳡ࡵ఼Ⳉ䆓䯂Ⳃᷛഄഔⱘ URLˈᡞ䙷Ͼ URL ⱘડᑨݙᆍ䇏প䖛ᴹˈ✊ৢ 19ǃforward redirect ⱘऎ߿ ㋴ܗේᰃᷜⱘϔϾ㒘៤ ߎⱘᮍᓣ䖯㸠໘⧚DŽܜ㋴ⱘ᪡ᑨৠϔ↉ᅠ៤DŽᷜᣝ✻ৢ䖯ܗᷜᰃϔ⾡㒓ᔶ䲚ড়ˈ݊⏏ࡴߴ䰸 18ǃheap stack ᳝ҔМऎ߿DŽ ᅮᶤᇍ䈵ⱘ㉏ᰃ৺ᅲ⦄њষDŽއൟҢষ㉏ൟ䕀ᤶˈinstanceof 䖤ㅫヺৃҹ⫼ᴹ 䆌Փ⫼ষৡЎᓩ⫼ব䞣ⱘ㉏ൟDŽ䗮ᐌⱘࡼᗕ㘨㓪ᇚ⫳ᬜDŽᓩ⫼ৃҹ䕀ᤶࠄষ㉏ܕѢ᳝ᢑ䈵㉏ˈᅗ ᑣԧ㒭ќ˅᠔᳝䖭⾡ষⱘᮍ⊩DŽ✊ৢˈᅗৃҹᅲ⦄њ䆹ষⱘ㉏ⱘӏԩᇍ䈵Ϟ䇗⫼ষⱘᮍ⊩DŽ⬅ ⱘᅲ⦄Ϣᄤ㉏ⳌԐˈ䰸њ䆹ᅲ⦄㉏ϡ㛑ҢষᅮНЁ㒻ᡓ㸠ЎDŽᔧ㉏ᅲ⦄⡍⅞ষᯊˈᅗᅮН˄ेᇚ 㦋ᕫDŽষЁⱘ᠔᳝ᮍ⊩䛑ᰃᢑ䈵ⱘˈ≵᳝ϔϾ᳝ᑣԧDŽষাৃҹᅮН static final៤ਬব䞣DŽষ ষ˄interface˅ᰃᢑ䈵㉏ⱘবԧDŽষЁˈ᠔᳝ᮍ⊩䛑ᰃᢑ䈵ⱘDŽ㒻ᡓᗻৃ䗮䖛ᅲ⦄䖭ḋⱘষ㗠 ᄤ㉏Ёᅲ⦄䆹ᮍ⊩DŽⶹ䘧݊㸠Ўⱘ݊ᅗ㉏ৃҹ㉏Ёᅲ⦄䖭ѯᮍ⊩DŽ ᮍ⊩DŽAbstract ㉏ⱘᄤ㉏ЎᅗӀ⠊㉏Ёⱘ᠔᳝ᢑ䈵ᮍ⊩ᦤկᅲ⦄ˈ৺߭ᅗӀгᰃᢑ䈵㉏ЎDŽপ㗠ҷПˈ ᓎϔϾব䞣ˈ݊㉏ൟᰃϔϾᢑ䈵㉏ˈᑊ䅽ᅗᣛԧᄤ㉏ⱘϔϾᅲ՟DŽϡ㛑᳝ᢑ䈵ᵘ䗴ߑ᭄ᢑ䈵䴭ᗕ DŽϡ㛑߯ᓎ abstract ㉏ⱘᅲ՟DŽ✊㗠ৃҹ߯މⱘ㉏ˈᑊЎ䆹㉏ໄᯢᮍ⊩ˈԚϡ㛑䆹㉏Ёᅲ⦄䆹㉏ⱘᚙ ᢑ䈵㉏˄abstract class˅ˈᅗ⫼Ѣ㽕߯ᓎϔϾԧ⦄ᶤѯᴀ㸠Ўخໄᯢᮍ⊩ⱘᄬ㗠ϡএᅲ⦄ᅗⱘ㉏㹿ি 17ǃabstract class interface ᳝ҔМऎ߿? ϟ䞛⫼ᓖℹ䗨ᕘᕔᕔ᳝ᬜ⥛DŽމህᑨ䆹Փ⫼ᓖℹ㓪ˈᕜᚙ ᔧᑨ⫼ᑣᇍ䈵Ϟ䇗⫼њϔϾ䳔㽕㢅䌍ᕜ䭓ᯊ䯈ᴹᠻ㸠ⱘᮍ⊩ˈᑊϨϡᏠᳯ䅽ᑣㄝᕙᮍ⊩ⱘ䖨ಲᯊˈ 㹿ϔϾ㒓ݭ䖛њˈ䙷М䖭ѯ᭄ህᰃ݅ѿ᭄ˈᖙ乏䖯㸠ৠℹᄬপDŽ བᵰ᭄ᇚ㒓䯈݅ѿDŽ՟བℷݭⱘ᭄ҹৢৃ㛑㹿ϔϾ㒓䇏ࠄˈ㗙ℷ䇏ⱘ᭄ৃ㛑Ꮖ㒣 ϟߚ߿Փ⫼ҪӀ˛В՟䇈ᯢDŽމ16ǃৠℹᓖℹ᳝ԩᓖৠˈҔМᚙ DŽމ exception 㸼⼎ϔ⾡䆒䅵ᅲ⦄䯂乬DŽгህᰃ䇈ˈᅗ㸼⼎བᵰᑣ䖤㸠ℷᐌˈҢϡӮথ⫳ⱘᚙ DŽމ䖭ḋⱘᚙ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! Thread t=new Thread(inc); for(int i=0;i<2;i++){ Dec dec=tt.new Dec(); Inc inc=tt.new Inc(); ThreadTest1 tt=new ThreadTest1(); public static void main(String args[]){ private int j; public class ThreadTest1{ ⱘᯊ≵᳝㗗㰥乎ᑣ䯂乬DŽޣҹϟᑣՓ⫼ݙ䚼㉏ᅲ⦄㒓ˈᇍ j ᇥ 1DŽݭߎᑣDŽޣ28ǃ䆒䅵 4 Ͼ㒓ˈ݊ЁϸϾ㒓↣ᇍ j ࡴ 1ˈϸϾ㒓ᇍ j ↣ ϸϾ 27ǃString s = new String(“xyz“);߯ᓎњϾ String Object? round ᮍ⊩䖨ಲϢখ᳔᭄䖥ⱘ䭓ᭈ᭄ˈখ᭄ࡴ 1/2 ৢ∖݊ floor. Math.round(•11.5)==•11 Math.round(11.5)==12 26ǃMath.round(11.5)ㄝᮐᇥ? Math.round(•11.5)ㄝᮐᇥ? short s1 = 1; s1 += 1;˄ৃҹℷ⹂㓪䆥˅ short s1 = 1; s1 = s1 + 1; ˄s1+1 䖤ㅫ㒧ᵰᰃ int ൟˈ䳔㽕ᔎࠊ䕀ᤶ㉏ൟ˅ 25ǃshort s1 = 1; s1 = s1 + 1;᳝ҔМ䫭? short s1 = 1; s1 += 1;᳝ҔМ䫭? ⫼ඳҢ㗠䖒ࠄ㞾ࡼಲᬊݙᄬⱘⳂⱘˈJava 䇁㿔≵᳝ᦤկ䞞ᬒᏆߚ䜡ݙᄬⱘᰒ⼎᪡ᮍ⊩DŽ 䇃ⱘݙᄬಲᬊӮᇐ㟈ᑣ㋏㒳ⱘϡ〇ᅮ⫮㟇ዽˈJava ᦤկⱘ GC ࡳ㛑ৃҹ㞾ࡼⲥ⌟ᇍ䈵ᰃ৺䍙䖛 GC ᰃൗഒᬊ䲚ⱘᛣᗱ˄Gabage Collection˅,ݙᄬ໘⧚ᰃ㓪Ҏਬᆍᯧߎ⦄䯂乬ⱘഄᮍˈᖬ䆄㗙䫭 24ǃGC ᰃҔМ? ЎҔМ㽕᳝ GC? Ўњᦤ催ᗻ㛑ˈ䕃ӊথᏗৢˈassertion Ẕᶹ䗮ᐌᰃ݇䯁ⱘDŽ ߎDŽϔ㠀ᴹ䇈ˈassertion ⫼Ѣֱ䆕ᑣ᳔ᴀǃ݇䬂ⱘℷ⹂ᗻDŽassertion Ẕᶹ䗮ᐌᓔথ⌟䆩ᯊᓔਃDŽ boolean 㸼䖒ᓣⱘؐЎ true˗བᵰ䆹ؐЎ falseˈ䇈ᯢᑣᏆ㒣໘Ѣϡℷ⹂ⱘ⢊ᗕϟˈ㋏㒳ᇚ㒭ߎ䄺ਞ䗔 assertion ህᰃᑣЁⱘϔᴵ䇁হˈᅗᇍϔϾ boolean 㸼䖒ᓣ䖯㸠ẔᶹˈϔϾℷ⹂ᑣᖙ乏ֱ䆕䖭Ͼ assertion(ᮁ㿔)䕃ӊᓔথЁᰃϔ⾡ᐌ⫼ⱘ䇗䆩ᮍᓣˈᕜᓔথ䇁㿔Ё䛑ᬃᣕ䖭⾡ᴎࠊDŽᅲ⦄Ёˈ 23ǃҔМᯊ⫼ assertDŽ 䴭ᗕ INCLUDE ⫼ include Ӿⷕᅲ⦄,ᅮϡӮẔᶹ᠔᭛ӊⱘব࣪ˈ䗖⫼Ѣࣙ䴭ᗕ义䴶 ৃҹᏺখ᭄DŽ ࡼᗕ INCLUDE ⫼ jsp:include ࡼᅲ⦄ ᅗᘏᰃӮẔᶹ᠔᭛ӊЁⱘব࣪ˈ䗖ড়⫼Ѣࣙࡼᗕ义䴶ˈᑊϨ 22ǃJSP Ёࡼᗕ INCLUDE Ϣ䴭ᗕ INCLUDE ⱘऎ߿˛ ⱘݙ䚼㉏䳔㽕䚼㉏ᅲ՟࣪ৢᠡ㛑ᅲ՟࣪DŽ Static Nested Classᰃ㹿ໄᯢЎ䴭ᗕ˄static˅ⱘݙ䚼㉏ˈᅗৃҹϡձ䌪Ѣ䚼㉏ᅲ՟㹿ᅲ՟࣪DŽ㗠䗮ᐌ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! ℶϔϾ㒓DŽذ䇗ᑺᑊᠻ㸠DŽ䖭ᑊϡᛣੇⴔ㒓ህӮゟे䖤㸠DŽrun()ᮍ⊩ৃҹѻ⫳ᖙ乏䗔ߎⱘᷛᖫᴹ ਃࡼϔϾ㒓ᰃ䇗⫼ start()ᮍ⊩ˈՓ㒓᠔ҷ㸼ⱘ㰮ᢳ໘⧚ᴎ໘Ѣৃ䖤㸠⢊ᗕˈ䖭ᛣੇⴔᅗৃҹ⬅ JVM 30ǃਃࡼϔϾ㒓ᰃ⫼ run()䖬ᰃ start()? java Ёⱘֱ⬭ᄫˈ⦄≵᳝ java ЁՓ⫼DŽ 29ǃJava ᳝≵᳝ goto? } } } } dec(); for(int i=0;i<100;i++){ public void run(){ class Dec implements Runnable{ } } } inc(); for(int i=0;i<100;i++){ public void run(){ class Inc implements Runnable{ } System.out.println(Thread.currentThread().getName()+“•dec:“+j); j••; private synchronized void dec(){ } System.out.println(Thread.currentThread().getName()+“•inc:“+j); j++; private synchronized void inc(){ } } t.start(); t=new Thread(dec); t.start(); w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! 䛑ϡ㛑 37ǃabstract ⱘ method ᰃ৺ৃৠᯊᰃ static,ᰃ৺ৃৠᯊᰃ nativeˈᰃ৺ৃৠᯊᰃ synchronized? 㸼䆄Ўぎ䯆ˈ݊Ҫ䇗⫼ህৃҹՓ⫼䖭Ͼ䖲DŽ ᅮDŽᔧՓ⫼ⱘ∴䖲䇗⫼ᅠ៤ৢˈ∴偅ࡼᑣᇚℸ䖲އᓎϔᅮ᭄䞣ⱘ䖲ˈᮄᓎ䖲ⱘ᭄䞣᳝䜡㕂খ᭄ ᯊˈ∴偅ࡼᑣӮ䖨ಲϔϾՓ⫼ⱘ∴䖲ᑊᇚ݊㸼䆄ЎᖭDŽབᵰᔧࠡ≵᳝ぎ䯆䖲ˈ∴偅ࡼᑣህᮄ J2EE ᳡ࡵ఼ਃࡼᯊӮᓎゟϔᅮ᭄䞣ⱘ∴䖲ˈᑊϔⳈ㓈ᣕϡᇥѢℸ᭄Ⳃⱘ∴䖲DŽᅶ᠋ッᑣ䳔㽕䖲 36ǃ䇈ߎ᭄䖲∴ⱘᎹᴎࠊᰃҔМ? ListˈSet ᰃˈMap ϡᰃ 35ǃList, Set, Map ᰃ৺㒻ᡓ㞾 Collection ষ? ᳝ᯢ⹂ⱘᵘ䗴ߑ᭄DŽ ষৃҹ㒻ᡓষDŽᢑ䈵㉏ৃҹᅲ⦄(implements)ষˈᢑ䈵㉏ᰃ৺ৃ㒻ᡓᅲԧ㉏ˈԚࠡᦤᰃᅲԧ㉏ᖙ乏 class)? 34ǃষᰃ৺ৃ㒻ᡓষ? ᢑ䈵㉏ᰃ৺ৃᅲ⦄(implements)ষ? ᢑ䈵㉏ᰃ৺ৃ㒻ᡓᅲԧ㉏(concrete UnmodifiableSetException, UnsupportedOperationException RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, NoSuchElementException, NullPointerException, ProfileDataException,ProviderException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, 33ǃ㒭៥ϔϾԴ᳔ᐌ㾕ࠄⱘ runtime exceptionDŽ BEA WebLogic ServerˈIBM WebSphere Application ServerˈOracle9i Application ServerˈjBossˈTomcat 32ǃᑨ⫼᳡ࡵ఼᳝䙷ѯ˛ Transaction Service˄JTS˅ǃ Java Transaction API˄JTA˅ˈᓔথ㒘˄X/Open˅ⱘ XA ষDŽ EJB 䗮䖛ҹϟᡔᴃㅵ⧚ᅲࡵ˖ᇍ䈵ㅵ⧚㒘㒛˄OMG˅ⱘᇍ䈵ᅲࡵ᳡ࡵ˄OTS˅ˈ Sun Microsystems ⱘ ᄬ⌏ⱘDŽEntity Beans ⫳ੑ਼ᳳ㛑㹿ᆍ఼㗙 Beans㞾Ꮕㅵ⧚DŽ beans ህϔⳈᄬ⌏DŽ㗠ϡᰃᣝ✻ᑨ⫼ᑣ㗙᳡ࡵ䖯ᴹ䇈ⱘDŽेՓ EJB ᆍ఼ዽњˈEntity beansгᰃ EntityBean˖Entity Beans 㛑ᄬ⌏Ⳍᇍ䕗䭓ⱘᯊ䯈ˈᑊϨ⢊ᗕᰃᣕ㓁ⱘDŽা㽕᭄ᑧЁⱘ᭄ᄬˈEntity ᠋ᴎⳌ݇㘨ⱘ Bean ᅲ՟DŽ ᅲ՟ˈᑊ݇㘨ࠄᅶ᠋ᴎϞˈҹৢℸᅶ᠋ᴎ䇗⫼ Stateful Session Bean ⱘᮍ⊩ᯊᆍ఼Ӯᡞ䇗⫼ߚ⌒ࠄϢℸᅶ ᅶ᠋ᴎDŽᔧᅶ᠋ᴎϔ䇗⫼ϔϾ Stateful Session Bean ᯊˈᆍ఼ᖙ乏ゟे᳡ࡵ఼Ё߯ᓎϔϾᮄⱘ Bean ᅲ՟ᯊˈEJB ᆍ఼ϡϔᅮ㽕߯ᓎϔϾᮄⱘ Bean ⱘᅲ՟կᅶ᠋ᴎ䇗⫼ˈ㗠ᰃ䱣֓ᡒϔϾ⦄᳝ⱘᅲ՟ᦤկ㒭 ᅮⱘˈᔧᅶ᠋ᴎথߎ䇋∖㽕ᓎゟϔϾ Bean ⱘއSessionBean˖Stateless Session Bean ⱘ⫳ੑ਼ᳳᰃ⬅ᆍ఼ 31ǃEJB ࣙᣀ˄SessionBean,EntityBean˅䇈ߎҪӀⱘ⫳ੑ਼ᳳˈঞབԩㅵ⧚џࡵⱘ˛ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! //㞾Ꮕݙ䚼ᅮН㞾ᏅϔϾᅲ՟ˈᰃϡᰃᕜ༛ᗾ˛ private Singleton(){} Public class Singleton { ࣪ᯊᅲ՟䆱ˈ䗮䖛ϔϾ public ⱘ getInstance ᮍ⊩㦋পᇍᅗⱘᓩ⫼,㒻㗠䇗⫼݊Ёⱘᮍ⊩DŽ ϔ⾡ᔶᓣ: ᅮНϔϾ㉏ˈᅗⱘᵘ䗴ߑ᭄Ў private ⱘˈᅗ᳝ϔϾ static ⱘ private ⱘ䆹㉏ব䞣ˈ㉏߱ྟ ϔ㠀 Singleton ᓣ䗮ᐌ᳝⾡⾡ᔶᓣ: Singleton ᓣЏ㽕⫼ᰃֱ䆕 Java ᑨ⫼ᑣЁˈϔϾ㉏ Class া᳝ϔϾᅲ՟ᄬDŽ 48ǃ㓪乬: ݭϔϾ Singleton ߎᴹDŽ ϡ㛑ˈϔϾᇍ䈵ⱘϔϾ synchronized ᮍ⊩া㛑⬅ϔϾ㒓䆓䯂DŽ 47ǃᔧϔϾ㒓䖯ܹϔϾᇍ䈵ⱘϔϾ synchronized ᮍ⊩ৢˈ݊ᅗ㒓ᰃ৺ৃ䖯ܹℸᇍ䈵ⱘ݊ᅗᮍ⊩? ህᰃᇍ䆹ᇍ䈵ⱘᓩ⫼DŽᇍ䈵ⱘݙᆍৃҹ㹿䇗⫼ⱘᮍ⊩ЁᬍবˈԚᇍ䈵ⱘᓩ⫼ᰃ∌䖰ϡӮᬍবⱘDŽ ᰃؐӴ䗦DŽJava 㓪䇁㿔া᳝ؐӴ䗦খ᭄DŽᔧϔϾᇍ䈵ᅲ՟ЎϔϾখ᭄㹿Ӵ䗦ࠄᮍ⊩Ёᯊˈখ᭄ⱘؐ 䙷М䖭䞠ࠄᑩᰃؐӴ䗦䖬ᰃᓩ⫼Ӵ䗦? 46ǃᔧϔϾᇍ䈵㹿ᔧখ᭄Ӵ䗦ࠄϔϾᮍ⊩ৢˈℸᮍ⊩ৃᬍব䖭Ͼᇍ䈵ⱘሲᗻˈᑊৃ䖨ಲব࣪ৢⱘ㒧ᵰˈ ϡᇍˈ᳝Ⳍৠⱘ hash codeDŽ 45ǃϸϾᇍ䈵ؐⳌৠ(x.equals(y) == true)ˈԚैৃ᳝ϡৠⱘ hash codeˈ䖭হ䆱ᇍϡᇍ? 2 << 3 44ǃ㓪乬: ⫼᳔᳝ᬜ⥛ⱘᮍ⊩ㅫߎ 2 Ьҹ 8 ㄝᮐ? Ӯᠻ㸠ˈ return ࠡᠻ㸠DŽ ᠻ㸠ˈ return ࠡ䖬ᰃৢ? 43ǃtry {}䞠᳝ϔϾ return 䇁হˈ䙷М㋻䎳䖭Ͼ tryৢⱘ finally {}䞠ⱘ code ӮϡӮ㹿ᠻ㸠ˈҔМᯊ㹿 char 㗙 byteDŽLong,string 䛑ϡ㛑⫼Ѣ swtichDŽ Switch˄expr1˅Ёˈexpr1 ᰃϔϾᭈ᭄㸼䖒ᓣDŽℸӴ䗦㒭 switch case 䇁হⱘখ᭄ᑨ䆹ᰃ intǃ shortǃ 42ǃswtich ᰃ৺㛑⫼ byte Ϟˈᰃ৺㛑⫼ long Ϟˈᰃ৺㛑⫼ String Ϟ? String ㉏ᰃ final ㉏ᬙϡৃҹ㒻ᡓDŽ 41ǃᰃ৺ৃҹ㒻ᡓ String ㉏? ᵘ䗴఼ Constructor ϡ㛑㹿㒻ᡓˈℸϡ㛑䞡ݭ OverridingˈԚৃҹ㹿䞡䕑 OverloadingDŽ 40ǃᵘ䗴఼ Constructor ᰃ৺ৃ㹿 override? ᆍ㉏ൟⳌ䜡ⱘ䆱ˈ䖨ಲⳳؐDŽ ᅮᓩ⫼ؐᰃ৺ᣛৠϔᇍ䈵 equals()㉏Ё㹿㽚ⲪˈЎⱘᰃᔧϸϾߚ⾏ⱘᇍ䈵ⱘݙއ⫣ Equals()==ᮍ ㋴ᰃϡ㛑䞡ⱘˈ䙷М⫼ iterator()ᮍ⊩ᴹऎߚ䞡Ϣ৺DŽEquals()ᰃ߸䇏ϸϾ Set ᰃ৺ⳌㄝDŽܗSet 䞠ⱘ ߿? ㋴ᰃϡ㛑䞡ⱘˈ䙷М⫼ҔМᮍ⊩ᴹऎߚ䞡Ϣ৺ਸ਼? ᰃ⫼==䖬ᰃ equals()? ᅗӀ᳝ԩऎܗ39ǃSet 䞠ⱘ ᭄㒘≵᳝ length()䖭Ͼᮍ⊩ˈ᳝ length ⱘሲᗻDŽString ᳝᳝ length()䖭Ͼᮍ⊩DŽ 38ǃ᭄㒘᳝≵᳝ length()䖭Ͼᮍ⊩? String ᳝≵᳝ length()䖭Ͼᮍ⊩˛ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! ݡ᳝“⫼ඳ“ⱘὖᗉˈা᳝ᇍ䈵ⱘᓩ⫼ᠡ᳝“⫼ඳ“DŽൗഒಲᬊৃҹ᳝ᬜⱘ䰆ℶݙᄬ⊘䴆ˈ᳝ᬜⱘՓ⫼ ᅗՓᕫ Java ᑣਬ㓪ݭᑣⱘᯊϡݡ䳔㽕㗗㰥ݙᄬㅵ⧚DŽ⬅Ѣ᳝ϾൗഒಲᬊᴎࠊˈJava Ёⱘᇍ䈵ϡ Java 䇁㿔ЁϔϾᰒ㨫ⱘ⡍⚍ህᰃᓩܹњൗഒಲᬊᴎࠊˈՓ c++ᑣਬ᳔༈⮐ⱘݙᄬㅵ⧚ⱘ䯂乬䖢ߗ㗠㾷ˈ 51ǃൗഒಲᬊⱘӬ⚍ॳ⧚DŽᑊ㗗㰥 2 ⾡ಲᬊᴎࠊDŽ ᠔᳝ⱘᓖᐌ䛑ᰃ java.lang.Thowable ⱘᄤ㉏DŽ ᑣਬᠽሩ䖭⾡䇁НẔᶹˈᑣਬৃҹ߯ᓎ㞾Ꮕⱘᓖᐌˈᑊ㞾⬅䗝ᢽԩᯊ⫼ throw ݇䬂ᄫᓩথᓖᐌDŽ 䆌ܕ ህᰃ JAVAމIndexOutOfBoundsException;䆓䯂 null ⱘᇍ䈵ᯊӮᓩথ NullPointerExceptionDŽϔ⾡ᚙ DŽϔ⾡ᰃ JAVA ㉏ᑧݙ㕂ⱘ䇁НẔᶹDŽ՟བ᭄㒘ϟᷛ䍞⬠,Ӯᓩথމ߭ࣙᣀ 2 ⾡ᚙ ᔧ JAVA ᑣ䖱ডњ JAVA ⱘ䇁Н㾘߭ᯊˈJAVA 㰮ᢳᴎህӮᇚথ⫳ⱘ䫭䇃㸼⼎ЎϔϾᓖᐌDŽ䖱ড䇁Н㾘 50ǃJava Ёⱘᓖᐌ໘⧚ᴎࠊⱘㅔऩॳ⧚ᑨ⫼DŽ ϟᰃ public.ϔϾ㉏ৃҹᅲ⦄ϾষDŽމᰃ public static,᠔᳝ᮍ⊩咬䅸ᚙ Ͼ㉏ᅲ⦄њষҹৢˈ䆹㉏㽕ᅲ⦄ষ䞠䴶᠔᳝ⱘᮍ⊩ሲᗻˈᑊϨষ䞠䴶ⱘሲᗻ咬䅸⢊ᗕϟ䴶䛑 ऩ㒻ᡓᴎࠊህϡ㛑⒵䎇㽕∖DŽϢ㒻ᡓⳌ↨ˈষ᳝催ⱘ♉⌏ᗻˈЎষЁ≵᳝ӏԩᅲ⦄ҷⷕDŽᔧϔ ⬅Ѣ Java ϡᬃᣕ㒻ᡓˈ㗠᳝ৃ㛑ᶤϾ㉏ᇍ䈵㽕Փ⫼ߚ߿Ͼ㉏ᇍ䈵䞠䴶ⱘᮍ⊩ሲᗻˈ⦄᳝ⱘ 49ǃJava ⱘষ C++ⱘ㰮㉏ⱘⳌৠϡৠ໘DŽ ϔ㠀䅸Ўϔ⾡ᔶᓣ㽕ࡴᅝܼѯ ᅮНϔϾ㉏ˈᅗⱘᵘ䗴ߑ᭄Ў private ⱘˈ᠔᳝ᮍ⊩Ў static ⱘDŽ ݊Ҫᔶᓣ: } return instance; } instance˙new Singleton(); If (instance==null) //Փ⫼ᯊ⫳៤ᅲ՟ˈᦤ催њᬜ⥛ʽ //䖭Ͼᮍ⊩↨Ϟ䴶᳝᠔ᬍ䖯ˈϡ⫼↣䛑䖯㸠⫳៤ᇍ䈵ˈাᰃϔ public static synchronized Singleton getInstance() { private static Singleton instance = null; public class Singleton { Ѡ⾡ᔶᓣ: } } return instance; public static Singleton getInstance() { //䖭䞠ᦤկњϔϾկ䚼䆓䯂ᴀ class ⱘ䴭ᗕᮍ⊩ˈৃҹⳈ䆓䯂 private static Singleton instance = new Singleton(); ᛣ䖭ᰃ private াկݙ䚼䇗⫼⊼// w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! config㸼⼎ϔϾ javax.servlet.ServletConfig ᇍ䈵DŽ䆹ᇍ䈵⫼Ѣᄬপ servlet ᅲ՟ⱘ߱ྟ࣪খ᭄DŽ ֵᙃ applicaton 㸼⼎ϔϾ javax.servle.ServletContext ᇍ䈵DŽ䖭᳝ࡽѢᶹᡒ᳝݇ servlet ᓩ᪢ servlet ⦃๗ⱘ Session㸼⼎ϔϾ䇋∖ⱘ javax.servlet.http.HttpSession ᇍ䈵DŽSession ৃҹᄬ䌂⫼᠋ⱘ⢊ᗕֵᙃ servlet Ⳍ݇ⱘᇍ䈵ⱘ APIˈᑊϨࣙ㺙њ䗮⫼ⱘ servlet Ⳍ݇ࡳ㛑ⱘᮍ⊩DŽ pageContext 㸼⼎ϔϾ javax.servlet.jsp.PageContext ᇍ䈵DŽᅗᰃ⫼Ѣᮍ֓ᄬপ⾡㣗ೈⱘৡᄫぎ䯈ǃ outᇍ䈵ᰃ javax.jsp.JspWriter ⱘϔϾᅲ՟ˈᑊᦤկњϾᮍ⊩ՓԴ㛑⫼Ѣ⌣㾜఼ಲ䗕䕧ߎ㒧ᵰDŽ ༈ֵᙃㄝ˅ Response㸼⼎ HttpServletResponse ᇍ䈵ˈᑊᦤկњϾ⫼Ѣ䆒㕂䗕ಲ ⌣㾜఼ⱘડᑨⱘᮍ⊩˄བ cookies, header, session ᭄ⱘ᳝⫼ⱘᮍ⊩DŽ Request 㸼⼎ HttpServletRequest ᇍ䈵DŽᅗࣙњ᳝݇⌣㾜఼䇋∖ⱘֵᙃˈᑊϨᦤկњϾ⫼Ѣ㦋প cookie, 57ǃJSP ⱘݙ㕂ᇍ䈵ঞᮍ⊩DŽ ৠℹⱘᅲ⦄ᮍ䴶᳝ϸ⾡ˈߚ߿ᰃ synchronized,wait Ϣ notify 㒓᳝ϸ⾡ᅲ⦄ᮍ⊩ˈߚ߿ᰃ㒻ᡓ Thread ㉏Ϣᅲ⦄ Runnable ষ 56ǃ㒓᳝⾡ᅲ⦄ᮍ⊩,䛑ᰃҔМ?ৠℹ᳝⾡ᅲ⦄ᮍ⊩,䛑ᰃҔМ? 乬ⱘ 㛑ᅮН៤ЎϔϾЁ᭛ⱘˈЎ java Ёҹ unicode 㓪ⷕˈϔϾ char ऴ 16 Ͼᄫ㡖ˈ᠔ҹᬒϔϾЁ᭛ᰃ≵䯂 55ǃchar ൟব䞣Ё㛑ϡ㛑ᄬ䌂ϔϾЁ᭛∝ᄫ?ЎҔМ? 㒘ӊDŽᅗ䋳䋷䖤㸠ᯊᶹᡒ㺙ܹ㉏᭛ӊⱘ㉏DŽ JVM Ё㉏ⱘ㺙䕑ᰃ⬅ ClassLoader ᅗⱘᄤ㉏ᴹᅲ⦄ⱘ,Java ClassLoader ᰃϔϾ䞡㽕ⱘ Java 䖤㸠ᯊ㋏㒳 54ǃᦣ䗄ϔϟ JVM ࡴ䕑 class ᭛ӊⱘॳ⧚ᴎࠊ? ᇘࠄϔϾؐDŽ ㋴ᇍ˄⿄“䬂““ؐ“˅ˈ݊Ё↣Ͼ䬂ܗټᮍ⊩DŽ Map 䲚ড়㉏⫼Ѣᄬټ㋴ᄬܗMap ᦤկњϔϾ䗮⫼ⱘ ㋴ⱘᚙᔶDŽܗ㋴߫㸼DŽ List 䗖⫼Ѣᣝ᭄ؐ㋶ᓩ䆓䯂ܗ᪡ӏԩ㉏ൟᇍ䈵ⱘټ↨䕗䗖ড়ᵘᓎǃᄬ ᳔ᐌ⫼ⱘ䲚ড়㉏ᰃ List MapDŽ List ⱘԧᅲ⦄ࣙᣀ ArrayList VectorˈᅗӀᰃৃবᇣⱘ߫㸼ˈ 53ǃԴ᠔ⶹ䘧ⱘ䲚ড়㉏䛑᳝ાѯ˛Џ㽕ᮍ⊩˛ Allnotity():䝦᠔᳝໘ܹㄝᕙ⢊ᗕⱘ㒓ˈ⊼ᛣᑊϡᰃ㒭᠔᳝䝦㒓ϔϾᇍ䈵ⱘ䫕ˈ㗠ᰃ䅽ᅗӀゲѝDŽ 㑻DŽܜᗕⱘ㒓ˈ㗠ᰃ⬅ JVM ⹂ᅮ䝦ાϾ㒓ˈ㗠ϨϡᰃᣝӬ Notify():䝦ϔϾ໘Ѣㄝᕙ⢊ᗕⱘ㒓ˈ⊼ᛣⱘᰃ䇗⫼ℸᮍ⊩ⱘᯊˈᑊϡ㛑⹂ߛⱘ䝦ᶤϔϾㄝᕙ⢊ ᓖᐌDŽ Sleep():ՓϔϾℷ䖤㸠ⱘ㒓໘Ѣⴵ⢊ᗕˈᰃϔϾ䴭ᗕᮍ⊩ˈ䇗⫼ℸᮍ⊩㽕ᤩᤝ InterruptedException Wait():ՓϔϾ㒓໘Ѣㄝᕙ⢊ᗕˈᑊϨ䞞ᬒ᠔ᣕ᳝ⱘᇍ䈵ⱘ lockDŽ 52ǃ䇋䇈ߎԴ᠔ⶹ䘧ⱘ㒓ৠℹⱘᮍ⊩DŽ ᠔᳝ᇍ䈵䖯㸠ൗഒಲᬊDŽಲᬊᴎࠊ᳝ߚҷࠊൗഒಲᬊᷛ䆄ൗഒಲᬊˈ䞣ൗഒಲᬊDŽ Ꮖ㒣⅏ѵⱘ㗙䭓ᯊ䯈≵᳝Փ⫼ⱘᇍ䈵䖯㸠⏙Ἦಲᬊˈᑣਬϡ㛑ᅲᯊⱘ䇗⫼ൗഒಲᬊ఼ᇍᶤϾᇍ䈵 ϟᇍݙᄬේЁމҹՓ⫼ⱘݙᄬDŽൗഒಲᬊ఼䗮ᐌᰃЎϔϾऩ⣀ⱘԢ㑻߿ⱘ㒓䖤㸠ˈϡৃ乘ⶹⱘᚙৃ Page㸼⼎Ң䆹义䴶ѻ⫳ⱘϔϾ servlet ᅲ՟ 58ǃ㒓ⱘᴀὖᗉǃ㒓ⱘᴀ⢊ᗕҹঞ⢊ᗕП䯈ⱘ݇㋏ 㒓ᣛᑣᠻ㸠䖛Ёˈ㛑ᠻ㸠ᑣҷⷕⱘϔϾᠻ㸠ऩԡˈ↣Ͼᑣ㟇ᇥ䛑᳝ϔϾ㒓ˈгህᰃ ᑣᴀ䑿DŽ Java Ёⱘ㒓᳝ಯ⾡⢊ᗕߚ߿ᰃ˖䖤㸠ǃህ㒾ǃᣖ䍋ǃ㒧ᴳDŽ 59ǃJSP ⱘᐌ⫼ᣛҸ isErrorPage(ᰃ৺㛑Փ⫼ Exception ᇍ䈵)ˈisELIgnored(ᰃ৺ᗑ⬹㸼䖒ᓣ) 60ǃҔМᚙމϟ䇗⫼ doGet() doPost()˛ Jsp 义䴶Ёⱘ form ᷛㅒ䞠ⱘ method ሲᗻЎ get ᯊ䇗⫼ doGet()ˈЎ post ᯊ䇗⫼ doPost()DŽ 61ǃservlet ⱘ⫳ੑ਼ᳳ web ᆍ఼ࡴ䕑 servletˈ⫳ੑ਼ᳳᓔྟDŽ䗮䖛䇗⫼ servlet ⱘ init()ᮍ⊩䖯㸠 servlet ⱘ߱ྟ࣪DŽ䗮䖛䇗⫼ service() ᮍ⊩ᅲ⦄ˈḍ䇋∖ⱘϡৠ䇗⫼ϡৠⱘ do***()ᮍ⊩DŽ㒧ᴳ᳡ࡵˈweb ᆍ఼䇗⫼ servlet ⱘ destroy()ᮍ⊩DŽ 62ǃབԩ⦄ᅲ servlet ⱘऩ㒓ᓣ 63ǃ义䴶䯈ᇍ䈵Ӵ䗦ⱘᮍ⊩ requestˈsessionˈapplicationˈcookie ㄝ 64ǃJSP Servlet ᳝ાѯⳌৠ⚍ϡৠ⚍ˈҪӀП䯈ⱘ㘨㋏ᰃҔМ˛ JSPᰃ Servlet ᡔᴃⱘᠽሩˈᴀ䋼ϞᰃServlet ⱘㅔᯧᮍᓣˈᔎ䇗ᑨ⫼ⱘ㸼㸼䖒DŽJSP㓪䆥ৢᰃ“㉏servlet“DŽ Servlet JSP ᳔Џ㽕ⱘϡৠ⚍ѢˈServlet ⱘᑨ⫼䘏䕥ᰃ Java ᭛ӊЁˈᑊϨᅠܼҢ㸼⼎ሖЁⱘ HTML 䞠ߚ⾏ᓔᴹDŽ㗠 JSP ⱘᚙމᰃ Java HTML ৃҹ㒘ড়៤ϔϾᠽሩৡЎ.jsp ⱘ᭛ӊDŽJSP ջ䞡Ѣ㾚ˈServlet Џ㽕⫼Ѣࠊ䘏䕥DŽ 65ǃಯ⾡Ӯ䆱䎳䏾ᡔᴃ Ӯ䆱⫼ඳ ServletsJSP 义䴶ᦣ䗄 page ৺ᰃҷ㸼ϢϔϾ义䴶Ⳍ݇ⱘᇍ䈵ሲᗻDŽϔϾ义䴶⬅ϔϾ㓪䆥དⱘ Java servlet㉏˄ৃҹᏺ᳝ӏԩ ⱘ include ᣛҸˈԚᰃ≵᳝ include ࡼ˅㸼⼎DŽ䖭᮶ࣙᣀ servlet জࣙᣀ㹿㓪䆥៤ servlet ⱘ JSP 义 䴶 request ᰃᰃҷ㸼Ϣ Web ᅶ᠋ᴎথߎⱘϔϾ䇋∖Ⳍ݇ⱘᇍ䈵ሲᗻDŽϔϾ䇋∖ৃ㛑䎼䍞Ͼ义䴶ˈ⍝ঞ Ͼ Web 㒘ӊ˄⬅Ѣ forward ᣛҸ include ࡼⱘ݇㋏˅ session ᰃᰃҷ㸼Ϣ⫼ѢᶤϾ Web ᅶ᠋ᴎⱘϔϾ⫼᠋ԧ偠Ⳍ݇ⱘᇍ䈵ሲᗻDŽϔϾ Web Ӯ䆱ৃҹг㒣 ᐌӮ䎼䍞Ͼᅶ᠋ᴎ䇋∖ application ᰃᰃҷ㸼ϢᭈϾ Web ᑨ⫼ᑣⳌ݇ⱘᇍ䈵ሲᗻDŽ䖭ᅲ䋼Ϟᰃ䎼䍞ᭈϾ Web ᑨ⫼ᑣˈࣙ ᣀϾ义䴶ǃ䇋∖Ӯ䆱ⱘϔϾܼሔ⫼ඳ Click to buy NOW! PDF•XC H ANGE w w w . d o c u • t r a c k.com w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! try { String tempStr = ““; Public String translate (String str) { ⷕⱘᄫヺІ˛ 68ǃ៥Ӏ web ᑨ⫼ᓔথ䖛Ё㒣ᐌ䘛ࠄ䕧ߎᶤ⾡㓪ⷕⱘᄫヺˈབ iso8859•1 ㄝˈབԩ䕧ߎϔϾᶤ⾡㓪 J2EEгᰃϔϾḚᶊˈࣙᣀ JDBCǃJNDIǃRMIǃJMSǃEJBǃJTA ㄝᡔᴃDŽ ᑇৄDŽޚϔϾЎӕϮߚᏗᓣᑨ⫼ⱘᓔথᦤկⱘᷛˈޚ J2EEᴀ䑿ᰃϔϾᷛ 67ǃJ2EE ᰃᡔᴃ䖬ᰃᑇৄ䖬ᰃḚᶊ˛ removeAttribute(String name)˖ߴ䰸䇋∖ЁⱘϔϾሲᗻ getServerPort()˖㦋প᳡ࡵ఼ⱘッষো getServletPath()˖㦋পᅶ᠋ッ᠔䇋∖ⱘ㛮ᴀ᭛ӊⱘ䏃ᕘ getServerName()˖㦋প᳡ࡵ఼ⱘৡᄫ getSession([Boolean create])˖䖨ಲ䇋∖Ⳍ݇ Session getRemoteHost()˖㦋পᅶ᠋ッⱘৡᄫ getRemoteAddr()˖㦋পᅶ᠋ッⱘ IP ഄഔ getRequestURI()˖㦋পথߎ䇋∖ᄫヺІⱘᅶ᠋ッഄഔ getQueryString()˖㦋ᕫᶹ䆶ᄫヺІ getProtocol()˖㦋পᅶ᠋ッ᳡ࡵ఼ッӴ䗕᭄᠔ձⱘण䆂ৡ⿄ getParameterValues(String name)˖㦋ᕫ᳝ name ᣛᅮⱘখ᭄ⱘ᠔᳝ؐ getParameterNames()˖㦋ᕫᅶ᠋ッӴ䗕㒭᳡ࡵ఼ッⱘ᠔᳝খ᭄ⱘৡᄫˈ㒧ᵰᰃϔϾᵮВⱘᅲ՟ getParameter(String name)˖㦋ᕫᅶ᠋ッӴ䗕㒭᳡ࡵ఼ッⱘ᳝ name ᣛᅮⱘখ᭄ؐ getMethod()˖㦋ᕫᅶ᠋ッ᳡ࡵ఼ッӴ䗕᭄ⱘᮍ⊩ getInputStream()˖䖨ಲ䇋∖ⱘ䕧ܹ⌕ˈ⫼Ѣ㦋ᕫ䇋∖Ёⱘ᭄ getHeaderNames()˖䖨ಲ᠔ҹ request Header ⱘৡᄫˈ㒧ᵰᰃϔϾᵮВⱘᅲ՟ getHeaders(String name)˖䖨ಲᣛᅮৡᄫⱘ request Header ⱘ᠔᳝ؐˈ㒧ᵰᰃϔϾᵮВⱘᅲ՟ getHeader(String name)˖㦋ᕫ HTTP ण䆂ᅮНⱘ᭛ӊ༈ֵᙃ getContentLength()˖䖨ಲ䇋∖ⱘ Body ⱘ䭓ᑺ getCharacterEncoding()˖䖨ಲ䇋∖Ёⱘᄫヺ㓪ⷕᮍᓣ getCookies()˖䖨ಲᅶ᠋ッⱘ᠔᳝ Cookie ᇍ䈵ˈ㒧ᵰᰃϔϾ Cookie ᭄㒘 getAttributeNames()˖䖨ಲ request ᇍ䈵᠔᳝ሲᗻⱘৡᄫ䲚ড়ˈ㒧ᵰᰃϔϾᵮВⱘᅲ՟ getAttribute(String name)˖䖨ಲ⬅ name ᣛᅮⱘሲᗻؐ setAttribute(String name,Object)˖䆒㕂ৡᄫЎ name ⱘ request ⱘখ᭄ؐ 66ǃRequest ᇍ䈵ⱘЏ㽕ᮍ⊩˖ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! 1.ϡ㛑᪡㒓㒓 API(㒓 API ᣛ䴲㒓ᇍ䈵ⱘᮍ⊩བ notify,wait ㄝ)ˈ2.ϡ㛑᪡ awtˈ3.ϡ㛑ᅲ 74ǃEJB 㾘㣗㾘ᅮ EJB Ё⽕ℶⱘ᪡᳝ાѯ˛ Џ㽕ᦤկໄᯢ਼ᳳㅵ⧚ǃҷⷕѻ⫳ǃᣕ㓁ᗻㅵ⧚ǃᅝܼǃџࡵㅵ⧚ǃ䫕ᑊথ㸠ㅵ⧚ㄝ᳡ࡵDŽ 73ǃEJB ᆍ఼ᦤկⱘ᳡ࡵ ϝϾᇍ䈵ᰃ Remote˄Local˅ষǃHome˄LocalHome˅ষˈBean ㉏ Administrator˅ ᳡ࡵ఼ᦤկ㗙˄EJB Server Provider˅ǃ EJB ᆍ఼ᦤկ㗙˄EJB Container Provider˅ǃ㋏㒳ㅵ⧚ਬ˄System ӊᓔথ㗙˄Enterprise Bean Provider˅ ǃᑨ⫼㒘ড়㗙˄Application Assembler˅ǃ䚼㕆㗙˄Deployer˅ǃ EJB 㡆᠔ⱘᎹᖙ乏䙉ᕾ Sun ݀ৌᦤկⱘ EJB 㾘㣗ˈҹֱ䆕ᕐℸП䯈ⱘݐᆍᗻDŽ䖭݁Ͼ㾦㡆ߚ߿ᰃ EJB 㒘 ϔϾᅠᭈⱘѢ EJB ⱘߚᏗᓣ䅵ㅫ㒧ᵘ⬅݁Ͼ㾦㡆㒘៤ˈ䖭݁Ͼ㾦㡆ৃҹ⬅ϡৠⱘᓔথଚᦤկˈ↣Ͼ㾦 72ǃEJB ⱘ㾦㡆ϝϾᇍ䈵 Lock ϔᅮ㽕∖ᑣਬᎹ䞞ᬒˈᑊϨᖙ乏 finally ҢহЁ䞞ᬒDŽ Џ㽕ϡৠ⚍˖Lock ᳝↨ synchronized ㊒⹂ⱘ㒓䇁Нདⱘᗻ㛑DŽSynchronized Ӯ㞾ࡼ䞞ᬒ䫕ˈ㗠 Џ㽕Ⳍৠ⚍˖Lock 㛑ᅠ៤ synchronized ᠔ᅲ⦄ⱘ᠔᳝ࡳ㛑 71ǃㅔ䗄 synchronized java.util.concurrent.locks.Lock ⱘᓖৠ ˛ STAX:Streaming API for XML (StAX) ݊ಲ䇗џӊЁݭܹ໘⧚ҷⷕᴹ໘⧚ XML ᭛ӊˈ䗖ড়ᇍ XML ⱘ乎ᑣ䆓䯂 ᭛ӊᓔ༈ˈ᭛ḷ㒧ᴳˈ㗙ᷛㅒᓔ༈Ϣᷛㅒ㒧ᴳᯊˈᅗӮ㾺থϔϾџӊˈ⫼᠋䗮䖛ڣᭈϾ᭛ӊDŽᔧ䘛ࠄ SAX:ϡ⦄Ѣ DOM,SAX ᰃџӊ偅ࡼൟⱘ XML 㾷ᵤᮍᓣDŽᅗ乎ᑣ䇏প XML ᭛ӊˈϡ䳔㽕ϔܼ䚼㺙䕑 ⫼ⱘݙᄬ䕗ˈ㗠Ϩ DOM ᖙ乏㾷ᵤ᭛ӊПࠡᡞᭈϾ᭛ḷ㺙ܹݙᄬ,䗖ড়ᇍ XML ⱘ䱣ᴎ䆓䯂 DOM:໘⧚ൟ᭛ӊᯊ݊ᗻ㛑ϟ䰡ⱘ䴲ᐌढ़ᆇDŽ䖭Ͼ䯂乬ᰃ⬅ DOM ⱘᷥ㒧ᵘ᠔䗴៤ⱘˈ䖭⾡㒧ᵘऴ Ϟথሩ schema ⱘḍᴀⳂⱘ)ˈc:᳝ DOM,SAX,STAX ㄝ A: ϸ⾡ᔶᓣ dtd schemaˈb: ᴀ䋼ऎ߿:schema ᴀ䑿ᰃ xml ⱘˈৃҹ㹿 XML 㾷ᵤ఼㾷ᵤ(䖭гᰃҢ DTD 70ǃXML ᭛ḷᅮН᳝⾡ᔶᓣ˛ᅗӀП䯈᳝ԩᴀ䋼ऎ߿˛㾷ᵤ XML ᭛ḷ᳝ા⾡ᮍᓣ˛ b.䘏䕥᪡ϡӮѻ⫳ⷁ䏃 ऎ߿Џ㽕ㄨϸ⚍˖a.ᴵӊ᪡া㛑᪡Ꮧᇨൟⱘ,㗠䘏䕥᪡ϡҙৃҹ᪡Ꮧᇨൟ,㗠Ϩৃҹ᪡᭄ؐൟ 69ǃㅔ䗄䘏䕥᪡(&,|,^)Ϣᴵӊ᪡(&&,||)ⱘऎ߿DŽ } return tempStr; } System.err.println(e.getMessage()); catch (Exception e) { } tempStr = tempStr.trim(); tempStr = new String(str.getBytes(“ISO•8859•1“), “GBK“); w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! 84ǃ䇈䇈 weblogic ЁϔϾ Domain ⱘ㔎ⳕⳂᔩ㒧ᵘ?↨བ㽕ᇚϔϾㅔऩⱘ helloWorld.jsp ᬒܹԩⳂᔩϟ,✊ ֱᄬℸ Domain ⱘ config.xml ᭛ӊЁˈᅗᰃ᳡ࡵ఼ⱘḌᖗ䜡㕂᭛ӊDŽ ᙃ䖯㸠䜡㕂ৢ,ᅲ䰙ֱᄬҔМ᭛ӊЁ? 83ǃ weblogic ㅵ⧚ࠊৄЁᇍϔϾᑨ⫼ඳ(㗙䇈ᰃϔϾ㔥キ,Domain)䖯㸠 jms ঞ ejb 䖲∴ㄝⳌֵ݇ ᠋ৡᆚⷕ. ׂᬍ᳡ࡵਃࡼ᭛ӊˈࡴ WLS_USER WLS_PW 乍DŽгৃҹ boot.properties ᭛ӊЁࡴࡴᆚ䖛ⱘ⫼ 82ǃབԩਃࡼᯊϡ䳔䕧ܹ⫼᠋ৡϢᆚⷕ? commenv ᭛ӊˈࡴ set PRODUCTION_MODE=trueDŽ ৃҹㅵ⧚ࠊৄЁׂᬍᇍᑨ᳡ࡵ఼ⱘਃࡼᓣЎᓔথѻકᓣПϔDŽ㗙ׂᬍ᳡ࡵⱘਃࡼ᭛ӊ㗙 81ǃབԩ䆒ᅮⱘ weblogic ⱘ⛁ਃࡼᓣ(ᓔথᓣ)ϢѻકথᏗᓣ? MEM_ARGS=•Xms32m •Xmx200mˈৃҹ䇗ᭈ᳔ᇣݙᄬЎ 32Mˈ᳔ 200M ਃࡼ Weblogic ⱘ㛮ᴀЁ˄ԡѢ᠔ Domian ᇍᑨ᳡ࡵ఼Ⳃᔩϟⱘ startServerName˅ˈࡴ set 80ǃབԩ㒭 weblogic ᣛᅮᇣⱘݙᄬ? Remote ষˈ䗮䖛 Remote ষ䇗⫼݊Ϯࡵᮍ⊩DŽ 䆒㕂 JNDI ᳡ࡵᎹॖҹঞ JNDI ᳡ࡵഄഔ㋏㒳ሲᗻˈᶹᡒ Home ষˈҢ Home ষ䇗⫼ Create ᮍ⊩߯ᓎ 79ǃᅶ᳡ッ䇗⫼ EJB ᇍ䈵ⱘϾᴀℹ偸 ᅲԧ Bean ৃߚЎ Bean ㅵ⧚ⱘᣕ㓁ᗻ˄BMP˅ᆍ఼ㅵ⧚ⱘᣕ㓁ᗻ˄CMP˅ϸ⾡ Ӯ䆱 Bean জৃߚЎ᳝⢊ᗕ˄Stateful˅᮴⢊ᗕ˄Stateless˅ϸ⾡ Ӯ䆱˄Session˅Bean ˈᅲԧ˄Entity˅Bean ⍜ᙃ偅ࡼⱘ˄Message Driven˅Bean 78ǃEJB ⱘ⾡㉏ൟ ᅲ՟˅ಲ˄▔⌏˅ℸᅲ՟DŽ⢊ᗕব䖕ࠡӮ䇗⫼ᇍᑨⱘ ejbActive ejbPassivate ᮍ⊩DŽټ Ё˄䗮䖛ᑣ߫࣪ᴎࠊᄬټབᵰᇍᑨ EJB Object থ⦄㞾Ꮕ≵᳝㒥ᅮᇍᑨⱘ Bean ᅲ՟߭Ң݊এ▔⌏ Bean ᄬ NRU ㅫ⊩ˈᅲ՟▔⌏এ▔⌏⢊ᗕП䯈䖕⿏ˈ▔⌏ᴎࠊᰃᔧᅶ᠋ッ䇗⫼ᶤϾ EJB ᅲ՟Ϯࡵᮍ⊩ᯊˈ ᅮњݙᄬЁৃҹৠᯊᄬⱘ Bean ᅲ՟ⱘ᭄䞣ˈḍ MRUއҹ Stateful Session Bean Ў ՟ ˖݊ Cache ᇣ 77ǃEJB ⱘ▔⌏ᴎࠊ ⱘ⢊ᗕᑊ䰤ࠊݙᄬЁᅲ՟᭄䞣DŽ 䇗ᑺᴎࠊϡᮁ䞡⫼ᅲ՟ˈ㗠ᇍѢᄬ Cache ㅵ⧚ⱘ Bean ߭䗮䖛▔⌏এ▔⌏ᴎࠊֱᣕ Bean∴ކ䞛⫼㓧 ㅵ⧚ⱘ Beanˈ create Пৢᅲ՟ᑊϡҢݙᄬ⏙䰸ˈ㗠ᰃ∴ކϮࡵᮍ⊩䇗⫼ǃremove ㄝ䖛ˈᇍѢᄬ㓧 Statefull Session Bean ᄬ Cache ㅵ⧚ˈ䗮ᐌࣙ߯ᓎᅲ՟ˈ䆒㕂Ϟϟ᭛ǃ߯ᓎ EJB Object˄create˅ǃ ㅵ⧚ˈ㗠ᇍѢ Entity Bean∴ކᇍѢ Stateless Session BeanǃEntity BeanǃMessage Driven Bean ϔ㠀ᄬ㓧 76ǃbean ᅲ՟ⱘ⫳ੑ਼ᳳ Home ষᰃ EJB Ꮉॖ⫼Ѣ߯ᓎ⿏䰸ᶹᡒ EJB ᅲ՟ remote ষᅮНњϮࡵᮍ⊩ˈ⫼Ѣ EJB ᅶ᠋ッ䇗⫼Ϯࡵᮍ⊩DŽ 75ǃremote ষ home ষЏ㽕⫼ ϡ㛑ᇚ this Ўব䞣䖨ಲˈ8.ϡ㛑ᕾ⦃䇗⫼DŽ ᳡ࡵ఼ࡳ㛑ˈ4.ϡ㛑ᇍ䴭ᗕሲ⫳ᄬপˈ5.ϡ㛑Փ⫼ IO ᪡Ⳉᄬপ᭛ӊ㋏㒳ˈ6.ϡ㛑ࡴ䕑ᴀഄᑧ.ˈ7.⦃ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! public void service(ServletRequest request,ServletResponse response) public String getServletInfo() public ServletConfig getServletConfig() Public void init(ServletConfig config) 91ǃServlet ᠻ㸠ᯊϔ㠀ᅲ⦄ાϾᮍ⊩˛ ⍜ᙃℸ MDB ৃ⫼ⱘᯊথ䗕䖛ᴹˈ㗠 nonˉpersistent ᮍᓣⱘ⍜ᙃᇚ㹿϶ᓗDŽ persistent ᮍᓣⱘ MDB ৃҹֱ䆕⍜ᙃӴ䗦ⱘৃ䴴ᗻ,гህᰃབᵰ EJB ᆍ఼ߎ⦄䯂乬㗠 JMS ᳡ࡵ఼ձ✊Ӯᇚ 90ǃ䇈䇈 weblogic Ёᓔথ⍜ᙃ Bean ᯊⱘ persistent Ϣ non•persisten ⱘᏂ߿ 䍞ᴖˈ乍Ⳃ䯳ӡ䍞ᑲ߭䍞㛑ԧ⦄㡃ད䆒䅵ⱘ䞡㽕ᗻDŽ ˡ˦˞ᶊᵘⱘ䆒䅵དണᇚⳈᕅડ㋏㒳ⱘᗻ㛑ǃৃᠽሩᗻǃৃ㓈ᡸᗻǃ㒘ӊৃ䞡⫼ᗻঞᓔথᬜ⥛DŽ乍Ⳃ Business Interface˖䗮䖛䖰˄ᴀഄ˅ষ Bean ㉏ᅲ⦄Ⳍৠষ㾘㣗Ϯࡵ䘏䕥ϔ㟈ᗻ Generic Attribute Access˖䗮䖛 AttibuteAccess ষㅔ࣪ EntityBean ᭄ᦤկ⡍ᗻ Data Transfer Object Factory˖䗮䖛 DTO Factory ㅔ࣪ EntityBean ᭄ᦤկ⡍ᗻ EJB Command Pattern˖Փ⫼ Command JavaBeans পҷ SessionBeanˈᅲ⦄䕏䞣㑻䆓䯂 Message Façade Pattern˖ᅲ⦄ᓖℹ䇗⫼ Session Façade Pattern˖Փ⫼ SessionBean 䆓䯂 EntityBean 89ǃ䇈䇈Դ᠔❳ᙝ䇈䖛ⱘ j2ee Ёⱘ⾡ᐌ⫼ᓣ?ঞᇍ䆒䅵ᓣⱘϔѯⳟ⊩ 㸠ˈЎϡৠⱘ᪡㋏㒳ᓔথDŽ 䆌ᑨ⫼ᑣ䯈Ѧ᪡ⱘण䆂DŽ ݊ⳂⱘЎ˖⫼ϡৠⱘᑣ䆒䅵䇁㿔кݭϡৠⱘ䖯Ё䖤ܕ䆥Ў㘨㓪) ࣪DŽᅗⱘ㒘៤ᰃষᅮН䇁㿔(IDL), 䇁㿔㒥ᅮ(binding:гޚ(Object Management Groupˈ㓽ݭЎ OMG)ᷛ ᰃ݀݅ᇍ䈵䇋∖ҷ⧚㒧ᵘ(Common Object Request Broker Architecture)ˈ⬅ᇍ䈵ㅵ⧚㒘㒛ޚCORBA ᷛ 88ǃCORBA ᰃҔМ?⫼䗨ᰃҔМ? ৃҹՓ⫼ㅵ⧚ࠊৄˈᅗⱘ Deployment Ёৃҹᶹⳟ᠔᳝ᏆথᏗⱘ EJB 87ǃབԩᶹⳟ weblogic ЁᏆ㒣থᏗⱘ EJB? ᕫⱘᆚ䩹᭄ᄫ䆕кDŽৃҹ䜡㕂ℸ SSL 䖲ᰃऩ䖬ᰃঠⱘDŽ 䜡㕂݊ッষˈѻકᓣϟ䳔㽕Ң CA 㦋প⾕᳝ᆚ䩹᭄ᄫ䆕кˈ߯ᓎ identity trust keystoreˈ㺙䕑㦋 㔎ⳕᅝ㺙ЁՓ⫼ DemoIdentity.jks DemoTrust.jks KeyStoreᅲ⦄ SSLˈ䳔㽕䜡㕂᳡ࡵ఼Փ⫼ Enable SSLˈ 䖯㸠 ssl ⱘ䜡㕂(ޚ86ǃབԩ weblogic Ё䖯㸠 ssl 䜡㕂Ϣᅶ᠋ッⱘ䅸䆕䜡㕂䇈䇈 j2ee(ᷛ ԧ Bean ϔ㠀䖬䳔㽕 weblogic•cmp•rdbms• jar.xml ϡৠ㉏ൟⱘ EJB ⍝ঞⱘ䜡㕂᭛ӊϡৠˈ䛑⍝ঞࠄⱘ䜡㕂᭛ӊࣙᣀ ejb• jar.xml,weblogic•ejb•jar.xmlCMPᅲ 85ǃ weblogic ЁথᏗ ejb 䳔⍝ঞࠄાѯ䜡㕂᭛ӊ ⱘ WEB•INF Ⳃᔩⱘ classes ⳂᔩЁˈ䆒㕂᳡ࡵ఼ⱘ㔎ⳕᑨ⫼ᇚৃҹᅲ⦄⌣㾜఼Ϟ᮴䳔䕧ܹᑨ⫼ৡDŽ ᑨ⫼Ⳃᔩ䳔㽕⒵䎇 Web ᑨ⫼Ⳃᔩ㽕∖ˈjsp ᭛ӊৃҹⳈᬒᑨ⫼ⳂᔩЁˈJavabean 䳔㽕ᬒᑨ⫼Ⳃᔩ Domain Ⳃᔩ᳡ࡵ఼Ⳃᔩ applicationsˈᇚᑨ⫼ⳂᔩᬒℸⳂᔩϟᇚৃҹЎᑨ⫼䆓䯂ˈབᵰᰃ Web ᑨ⫼ˈ ϔϾ㞾Ꮕݭⱘ javaBean 䆹བԩࡲ? ⱘ⌣㾜఼Ϟህৃᠧܹ http://Џᴎ:ッষো//helloword.jsp ህৃҹⳟࠄ䖤㸠㒧ᵰњ? জ↨བ䖭݊Ё⫼ࠄњ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! J2EE Ёⱘ WEB ᆍ఼DŽ خⱘ WEB ᳡ࡵ఼ህিޚDŽ៥Ӏᡞ䙉ᅜҹϞᷛޚᷛ TOMCAT,WEBLOGIC,WEBSPHERE ㄝDŽ䆹ᆍ఼ᦤկⱘষϹḐ䙉ᅜ J2EE 㾘㣗Ёⱘ WEB APPLICATION Ёⱘ⦃๗ব䞣** Ѧˈϡᖙ݇⊼݊ᅗ㋏㒳䯂乬DŽЏ㽕᳝ WEB ᳡ࡵ఼ᴹᅲ⦄DŽ՟བ˖ web ᆍ఼˖㒭໘Ѣ݊Ёⱘᑨ⫼ᑣ㒘ӊ˄JSPˈSERVLET˅ᦤկϔϾ⦃๗ˈՓ JSP,SERVLET Ⳉᆍ఼ 95ǃ䇋ᇍҹϟ J2EE Ёᐌ⫼ⱘৡ䆡䖯㸠㾷䞞(ㅔऩᦣ䗄) ᠔ᕫ㒧ᵰЎ l e f t + m I d d l e + r I g h t 䗦ᔦഄՓ⫼ᖿ䗳ᥦᑣᮍ⊩ᇍ right 䖯㸠ᥦᑣ 䗦ᔦഄՓ⫼ᖿ䗳ᥦᑣᮍ⊩ᇍ left 䖯㸠ᥦᑣ ㄝѢᬃ⚍ ㋴䛑Ѣܗ㋴䛑ᇣѢㄝѢᬃ⚍ˈ㗠 right Ёⱘܗ㋴ߚࡆЎϸ↉ left r I g h tˈՓᕫ l e f t Ёⱘܗᡞԭϟⱘ ㋴Ўᬃ⚍ܗ㋴Ў m I d d l eˈ䆹ܗҢ a[ 0 :n• 1 ]Ё䗝ᢽϔϾ / /Փ⫼ᖿ䗳ᥦᑣᮍ⊩ᇍ a[ 0 :n• 1 ]ᥦᑣ ᖿ䗳ᥦᑣⱘӾҷⷕDŽ ˄Ⳉ䗝ᢽᥦᑣǃේᥦᑣ˅ˈᔦᑊᥦᑣˈߚ䜡ᥦᑣ˄ㆅᥦᑣǃ᭄ᥦᑣ˅ ᥦᑣⱘᮍ⊩᳝˖ᦦܹᥦᑣ˄ⳈᦦܹᥦᑣǃᏠᇨᥦᑣ˅ˈѸᤶᥦᑣ˄ݦ⊵ᥦᑣǃᖿ䗳ᥦᑣ˅ˈ䗝ᢽᥦᑣ 94ǃᥦᑣ䛑᳝ા⾡ᮍ⊩˛䇋߫ВDŽ⫼ JAVA ᅲ⦄ϔϾᖿ䗳ᥦᑣDŽ Ўᇍᑨষ㉏ൟⱘᅲ՟㹿Փ⫼DŽ 䖰ষ Home ষϡ䳔㽕Ⳉᅲ⦄ˈҪӀⱘᅲ⦄ҷⷕᰃ⬅᳡ࡵ఼ѻ⫳ⱘˈᑣ䖤㸠Ёᇍᑨᅲ⦄㉏Ӯ 93ǃEJB 䳔Ⳉᅲ⦄ᅗⱘϮࡵষ Home ষ৫ˈ䇋ㅔ䗄⧚⬅DŽ Ҏਬৃҹ䇗⫼㉏Ёⱘᮍ⊩㗠ϡᖙ㗗㰥ࠄᑩ䖨ಲⱘᰃાϔϾᄤ㉏ⱘᅲ՟DŽ ⊩DŽ✊ৢ䳔㽕ᅮНϔϾᎹॖ㉏ˈᎹॖ㉏ৃҹḍᴵӊ⫳៤ϡৠⱘᄤ㉏ᅲ՟DŽᔧᕫࠄᄤ㉏ⱘᅲ՟ৢˈᓔথ 䳔㽕ᅮНϔϾ㉏ˈ䆹㉏ⱘᄤ㉏䗮䖛ϡৠⱘᮍ⊩ᅲ⦄њ㉏Ёⱘᮍܜϡৠⱘ᭄䖯㸠њϡৠⱘ᪡DŽ佪 ㉏ЁᶤϔϾ㉏ⱘᅲ՟ˈ䗮ᐌ䖭ϔ㒘㉏᳝ϔϾ݀݅ⱘᢑ䈵⠊㉏ᑊϨᅲ⦄њⳌৠⱘᮍ⊩ˈԚᰃ䖭ѯᮍ⊩䩜ᇍ Ꮉॖᓣ˖Ꮉॖᓣᰃϔ⾡㒣ᐌ㹿Փ⫼ࠄⱘᓣˈḍᎹॖᓣᅲ⦄ⱘ㉏ৃҹḍᦤկⱘ᭄⫳៤ϔ㒘 Template Method˄ᵓᮍ⊩ᓣ˅ˈ Chain Of Responsibleity˄䋷ӏ䫒ᓣ˅ Observer˄㾖ᆳ㗙ᓣ˅ˈ State˄⢊ᗕᓣ˅ˈ Strategy˄ㄪ⬹ᓣ˅ˈ 㗙ᓣ˅ˈ Memento˄ᖬᔩᓣ˅ˈذIterator˄䗁ҷᄤᓣ˅ˈ Mediator˄䇗 Command˄ੑҸᓣ˅ˈ Interpreter˄㾷䞞఼ᓣ˅ˈ Visitor˄䆓䯂㗙ᓣ˅ˈ ᓣ˅ˈ Proxy˄ҷ⧚ᓣ˅ˈܗDecorator˄㺙佄ᓣ˅ˈ Flyweight˄ѿ Adapter˄䗖䜡఼ᓣ˅ˈ Bridge˄ḹṕᓣ˅ˈ Composite˄ড়៤ᓣ˅ˈ Prototype˄ॳྟൟᓣ˅ˈSingleton˄ऩ՟ᓣ˅ˈ Façade˄䮼䴶ᓣ˅ˈ Factory˄Ꮉॖᓣ˅ˈ Builder˄ᓎ䗴ᓣ˅ˈ Factory Method˄Ꮉॖᮍ⊩ᓣ˅ˈ JavaЁⱘ 23 ⾡䆒䅵ᓣ˖ 92ǃj2ee ᐌ⫼ⱘ䆒䅵ᓣ˛䇈ᯢᎹॖᓣDŽ public void destroy() w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! 99ǃjava Ё᳝⾡ᮍ⊩ৃҹᅲ⦄ϔϾ㒓˛⫼ҔМ݇䬂ᄫׂ佄ৠℹᮍ⊩? Stop() suspend()ᮍ⊩Ўԩϡ ҹ䖯㸠ѸѦ䞡⫼DŽ ᰃϔϾ Servlet˅ˈ䗮䖛䖭⾡䆒䅵ൟᡞᑨ⫼䘏䕥ˈ໘⧚䖛ᰒ⼎䘏䕥ߚ៤ϡৠⱘ㒘ӊᅲ⦄DŽ䖭ѯ㒘ӊৃ ӊᅲ⦄˅ˈ “View“ ᰃᑨ⫼ⱘ㸼⼎䴶˄⬅ JSP 义䴶ѻ⫳˅ˈ“Controller“ ᰃᦤկᑨ⫼ⱘ໘⧚䖛ࠊ˄ϔ㠀 MVC ᰃ ModelˉViewˉController ⱘㅔݭDŽ“Model“ ҷ㸼ⱘᰃᑨ⫼ⱘϮࡵ䘏䕥˄䗮䖛 JavaBeanˈEJB 㒘 98ǃMVC ⱘϾ䚼ߚ䛑᳝䙷ѯᡔᴃᴹᅲ⦄?བԩᅲ⦄? ৃҹDŽᖙ乏া᳝ϔϾ㉏ৡϢ᭛ӊৡⳌৠDŽ 97ǃϔϾ“.java“⑤᭛ӊЁᰃ৺ৃҹࣙᣀϾ㉏˄ϡᰃݙ䚼㉏˅˛᳝ҔМ䰤ࠊ˛ 䇁হ≵᳝ᇍᶤ⾡“ᓖᐌ“䖯㸠໘⧚ˈේᷜህӮሩᓔˈⳈࠄ䘛ࠄ᳝໘⧚䖭⾡“ᓖᐌ“ⱘ try 䇁হDŽ ↣ᔧ䘛ࠄϔϾ try 䇁হˈ“ᓖᐌ“ⱘḚᶊህᬒࠄේᷜϞ䴶ˈⳈࠄ᠔᳝ⱘ try 䇁হ䛑ᅠ៤DŽབᵰϟϔ㑻ⱘ try ৃҹϔϾ៤ਬߑ᭄䇗⫼ⱘ䴶ݭϔϾ try 䇁হˈ䖭Ͼ៤ਬߑ᭄ݙ䚼ݭϔϾ try 䇁হֱᡸ݊ҪҷⷕDŽ Finally Ў⹂ֱϔ↉ҷⷕϡㅵথ⫳ҔМ“ᓖᐌ“䛑㹿ᠻ㸠ϔ↉ҷⷕDŽ Throws ⫼ᴹᷛᯢϔϾ៤ਬߑ᭄ৃ㛑ᡯߎⱘ⾡“ᓖᐌ“DŽ Throw 䇁হ⫼ᴹᯢ⹂ഄᡯߎϔϾ“ᓖᐌ“DŽ ᤝⱘ“ᓖᐌ“ⱘ㉏ൟDŽ ⫼ try ᴹᣛᅮϔഫ乘䰆᠔᳝“ᓖᐌ“ⱘᑣDŽ㋻䎳 try ᑣৢ䴶ˈᑨࣙϔϾ catch ᄤহᴹᣛᅮԴᛇ㽕ᤩ ᳔ৢ˄finally˅⬅㔎ⳕ໘⧚఼ᴹ໘⧚DŽ ᑣˈབᵰߎ⦄ᓖᐌˈ㋏㒳Ӯᡯߎ˄throws˅ϔϾᓖᐌˈ䖭ᯊԴৃҹ䗮䖛ᅗⱘ㉏ൟᴹᤩᤝ˄catch˅ᅗˈ ϟᰃ⫼ try ᴹᠻ㸠ϔ↉މ⧚ᰃ䗮䖛 5 Ͼ݇䬂䆡ᴹᅲ⦄ⱘ˖tryǃcatchǃthrowǃthrows finallyDŽϔ㠀ᚙ ᇍ䈵ˈ䆹ᇍ䈵Ё᳝ࣙᓖᐌֵᙃˈ䇗⫼䖭Ͼᇍ䈵ⱘᮍ⊩ৃҹᤩ㦋ࠄ䖭Ͼᓖᐌᑊ䖯㸠໘⧚DŽJava ⱘᓖᐌ໘ ↣Ͼᓖᐌ䛑ᰃϔϾᇍ䈵ˈᅗᰃ Throwable ㉏݊ᅗᄤ㉏ⱘᅲ՟DŽᔧϔϾᮍ⊩ߎ⦄ᓖᐌৢ֓ᡯߎϔϾᓖᐌ Java 䗮䖛䴶ᇍ䈵ⱘᮍ⊩䖯㸠ᓖᐌ໘⧚ˈᡞ⾡ϡৠⱘᓖᐌ䖯㸠ߚ㉏ˈᑊᦤկњ㡃དⱘষDŽ Java Ёˈ ৃҹᡯߎᓖᐌ৫˛ 96ǃJAVA 䇁㿔བԩ䖯㸠ᓖᐌ໘⧚ˈ݇䬂ᄫ˖throws,throw,try,catch,finally ߚ߿ҷ㸼ҔМᛣН˛ try ഫЁ 䇗⫼DŽᔧ✊䖭ᰃ㽕䗮䖛ϔᅮⱘ㾘㣗ᠡ㛑ᓖᵘⱘ㋏㒳П䯈䖯㸠䗮ֵDŽRMI ᰃ JAVA ⡍᳝ⱘDŽ བˈ䖰᳝ϔৄ䅵ㅫᴎϞ䖤㸠ϔϾᑣˈᅗᦤկ㙵⼼ߚᵤ᳡ࡵˈ៥Ӏৃҹᴀഄ䅵ㅫᴎϞᅲ⦄ᇍ݊Ⳉ RMI/IIOP:˄Remote Method Invocation /internet ᇍ䈵䇋∖Ёҟण䆂˅ҪӀЏ㽕⫼Ѣ䗮䖛䖰䇗⫼᳡ࡵDŽ՟ 䚼㕆㞾ᅮНᅲ⦄㞾ᏅⱘϾᗻᅝܼࠊㄪ⬹DŽ JAF˖˄ Java Action FrameWork˅JAVA ᅝܼ䅸䆕ḚᶊDŽᦤկϔѯᅝܼࠊᮍ䴶ⱘḚᶊDŽ䅽ᓔথ㗙䗮䖛⾡ ষेৃDŽ JTA˖˄ Java Transaction API˅JAVA џࡵ᳡ࡵDŽᦤկ⾡ߚᏗᓣџࡵ᳡ࡵDŽᑨ⫼ᑣা䳔䇗⫼݊ᦤկⱘ JMS˖˄ Java Message Service˅JAVA ⍜ᙃ᳡ࡵDŽЏ㽕ᅲ⦄Ͼᑨ⫼ᑣП䯈ⱘ䗮䆃DŽࣙᣀ⚍ᇍ⚍ᑓ᪁DŽ 䅽݊ᅗഄⱘᑨ⫼ᑣ݊Ϟ䴶⬭ϟ㞾Ꮕⱘ㋶ᓩˈҢ㗠⒵䎇ᖿ䗳ᶹᡒᅮԡߚᏗᓣᑨ⫼ᑣⱘࡳ㛑DŽ JNDI˖˄ Java Naming & Directory Interface˅JAVA ੑৡⳂᔩ᳡ࡵDŽЏ㽕ᦤկⱘࡳ㛑ᰃ˖ᦤկϔϾⳂᔩ㋏㒳ˈ ⱘষᴹ㦋ᕫ㋏㒳㑻߿ⱘ᳡ࡵDŽ՟བ䚂ӊ᳡ࡵǃџࡵㅵ⧚DŽ ࡳ㛑DŽা㽕⒵䎇 J2EE 㾘㣗ⱘ EJB ᬒܹ䆹ᆍ఼ˈ偀ϞህӮ㹿ᆍ఼䖯㸠催ᬜ⥛ⱘㅵ⧚DŽᑊϨৃҹ䗮䖛⦄៤ EJB ᆍ఼˖Enterprise java beanᆍ఼DŽ᳝㸠Ϯ乚ඳ⡍㡆DŽҪᦤկ㒭䖤㸠݊Ёⱘ㒘ӊ EJB ⾡ㅵ⧚ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! 106ǃᰃ৺ৃҹҢϔϾ static ᮍ⊩ݙ䚼থߎᇍ䴲 static ᮍ⊩ⱘ䇗⫼˛ ህৃҹᇚখ᭄Ў obj ⱘᇍ䈵ݭߎ(ेֱᄬ݊⢊ᗕ)ˈ㽕ᘶⱘ䆱߭⫼䕧ܹ⌕DŽ Ͼ ObjectOutputStream(ᇍ䈵⌕)ᇍ䈵ˈⴔˈՓ⫼ ObjectOutputStream ᇍ䈵ⱘ writeObject(Object obj)ᮍ⊩ Serializable াᰃЎњᷛ⊼䆹ᇍ䈵ᰃৃ㹿ᑣ߫࣪ⱘˈ✊ৢՓ⫼ϔϾ䕧ߎ⌕(བ˖FileOutputStream)ᴹᵘ䗴ϔ ᑣ߫࣪ⱘᅲ⦄˖ᇚ䳔㽕㹿ᑣ߫࣪ⱘ㉏ᅲ⦄ Serializable ষˈ䆹ষ≵᳝䳔㽕ᅲ⦄ⱘᮍ⊩ˈimplements ᠔ᓩথⱘ䯂乬DŽ ᇍᇍ䈵⌕䖯㸠䇏ݭ᪡ᯊއ䈵䖯㸠䇏ݭ᪡ˈгৃᇚ⌕࣪ৢⱘᇍ䈵Ӵ䕧Ѣ㔥㒰П䯈DŽᑣ߫࣪ᰃЎњ㾷 ᑣ߫࣪ህᰃϔ⾡⫼ᴹ໘⧚ᇍ䈵⌕ⱘᴎࠊˈ᠔䇧ᇍ䈵⌕гህᰃᇚᇍ䈵ⱘݙᆍ䖯㸠⌕࣪DŽৃҹᇍ⌕࣪ৢⱘᇍ 105ǃҔМᰃ java ᑣ߫࣪ˈབԩᅲ⦄ java ᑣ߫࣪˛ class A a; a.i =10;//ৃব Static I = 10; //ᐌ䞣 104ǃ䴭ᗕব䞣ᅲ՟ব䞣ⱘऎ߿˛ ࡼᠻ㸠 System.gc()ˈ䗮ⶹ GC 䖤㸠ˈԚᰃ Java 䇁㿔㾘㣗ᑊϡֱ䆕 GC ϔᅮӮᠻ㸠DŽ ᰃ“ϡৃ䖒ⱘ“DŽᔧ GC ⹂ᅮϔѯᇍ䈵Ў“ϡৃ䖒“ᯊˈGC ህ᳝䋷ӏಲᬊ䖭ѯݙᄬぎ䯈DŽৃҹDŽᑣਬৃҹ 䞛⫼᳝ⱘᮍᓣ䆄ᔩㅵ⧚ේ(heap)Ёⱘ᠔᳝ᇍ䈵DŽ䗮䖛䖭⾡ᮍᓣ⹂ᅮાѯᇍ䈵ᰃ“ৃ䖒ⱘ“ˈાѯᇍ䈵 DŽ䗮ᐌˈGCމᇍѢ GC ᴹ䇈ˈᔧᑣਬ߯ᓎᇍ䈵ᯊˈGC ህᓔྟⲥ䖭Ͼᇍ䈵ⱘഄഔǃᇣҹঞՓ⫼ᚙ ൗഒಲᬊ˛ 103ǃൗഒಲᬊ఼ⱘᴀॳ⧚ᰃҔМ˛ൗഒಲᬊ఼ৃҹ偀Ϟಲᬊݙᄬ৫˛᳝ҔМࡲ⊩Џࡼ䗮ⶹ㰮ᢳᴎ䖯㸠 ᗕᗻⱘϔ⾡㸼⦄ˈ䞡䕑 Overloading ᰃϔϾ㉏Ёᗕᗻⱘϔ⾡㸼⦄DŽ ᮍ⊩ⱘ䞡ݭ Overriding 䞡䕑 Overloading ᰃ Java ᗕᗻⱘϡৠ㸼⦄DŽ䞡ݭ Overriding ᰃ⠊㉏Ϣᄤ㉏П䯈 102ǃjava Ёᅲ⦄ᗕⱘᴎࠊᰃҔМ˛ ӮDŽབ˖int I,i2; return (i•i2); //when iЎ䎇ⱘℷ᭄,i2 Ў䎇ⱘ䋳᭄DŽ㒧ᵰӮ䗴៤⑶ԡˈᇐ㟈䫭䇃DŽ 101ǃjava ЁӮᄬݙᄬ⊘ⓣ৫ˈ䇋ㅔऩᦣ䗄DŽ OutputStreamWriterDŽ java.io ࣙЁ䖬᳝䆌݊Ҫⱘ⌕ˈЏ㽕ᰃЎњᦤ催ᗻ㛑Փ⫼ᮍ֓DŽ ᄫ㡖⌕ˈᄫヺ⌕DŽᄫ㡖⌕㒻ᡓѢ InputStream OutputStreamˈᄫヺ⌕㒻ᡓѢ InputStreamReader ㉏˛ 100ǃjava Ё᳝⾡㉏ൟⱘ⌕˛JDK Ў↣⾡㉏ൟⱘ⌕ᦤկњϔѯᢑ䈵㉏ҹկ㒻ᡓˈ䇋䇈ߎҪӀߚ߿ᰃાѯ ܹㄝᕙ⢊ᗕDŽ㢹ᷛᖫᣛߎ㒓ᑨᔧᘶˈ߭⫼ϔϾ notify()䞡ᮄਃࡼ㒓DŽ Thread ㉏Ё㕂ܹϔϾᷛᖫˈᣛߎ㒓ᑨ䆹⌏ࡼ䖬ᰃᣖ䍋DŽ㢹ᷛᖫᣛߎ㒓ᑨ䆹ᣖ䍋ˈ֓⫼ wait()ੑ݊䖯 㒓ˈৠᯊজ䆩Փ⫼ӏԩϔϾ䫕ᅮⱘ䌘⑤ˈህӮ䗴៤⅏䫕DŽ᠔ҹϡᑨ䆹Փ⫼ suspend()ˈ㗠ᑨ㞾Ꮕⱘ ԩ㒓䛑ϡ㛑䆓䯂䫕ᅮⱘ䌘⑤ˈ䰸䴲㹿“ᣖ䍋“ⱘ㒓ᘶ䖤㸠DŽᇍӏԩ㒓ᴹ䇈ˈབᵰᅗӀᛇᘶⳂᷛ ϟᴹˈԚैҡ✊ᣕ᳝䖭Пࠡ㦋ᕫⱘ䫕ᅮDŽℸᯊˈ݊Ҫӏذ⫳⅏䫕DŽ䇗⫼ suspend()ⱘᯊˈⳂᷛ㒓Ӯ 䙷М݊Ҫ㒓㛑䙷⾡⢊ᗕϟẔᶹׂᬍᅗӀDŽ㒧ᵰᕜ䲒Ẕᶹߎⳳℷⱘ䯂乬᠔DŽSuspend()ᮍ⊩ᆍᯧথ ডᇍՓ⫼ stop()ˈᰃЎᅗϡᅝܼDŽᅗӮ㾷䰸⬅㒓㦋পⱘ᠔᳝䫕ᅮˈ㗠Ϩབᵰᇍ䈵໘Ѣϔ⾡ϡ䖲䌃⢊ᗕˈ ⫼ synchronized ݇䬂ᄫׂ佄ৠℹᮍ⊩ ᳝ϸ⾡ᅲ⦄ᮍ⊩ˈߚ߿ᰃ㒻ᡓ Thread ㉏Ϣᅲ⦄ Runnable ষ 㤤Փ⫼˛ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! 117ǃBS Ϣ CS ⱘ㘨㋏Ϣऎ߿DŽ WEB SERVER˖IISǃ Apache ᑨ⫼᳡ࡵ఼˖WeblogicǃTomcatǃJboss 116ǃᑨ⫼᳡ࡵ఼Ϣ WEB SERVER ⱘऎ߿˛ ৃҹ㒻ᡓ݊Ҫ㉏ᅠ៤݊Ҫষˈ swing 㓪Ёᐌ⫼ℸᮍᓣDŽ ⦄)interface(ষ)? 115ǃAnonymous Inner Class (ओৡݙ䚼㉏) ᰃ৺ৃҹ extends(㒻ᡓ)݊ᅗ㉏ˈᰃ৺ৃҹ implements(ᅲ EMBED ᷛ䆄DŽ ᗻDŽ Jsp:forward˖ᡞ䇋∖䕀ࠄϔϾᮄⱘ义䴶DŽ Jsp:plugin˖ḍ⌣㾜఼㉏ൟЎ Java ᦦӊ⫳៤ OBJECT ՟࣪ϔϾ JavaBeanDŽ Jsp:setProperty˖䆒㕂 JavaBean ⱘሲᗻDŽ Jsp:getProperty˖䕧ߎᶤϾ JavaBean ⱘሲ JSP ᳝݅ҹϟ 6 ⾡ᴀࡼ jsp:include˖义䴶㹿䇋∖ⱘᯊᓩܹϔϾ᭛ӊDŽ Jsp:useBean˖ᇏᡒ㗙ᅲ 114ǃjsp ᳝ાѯࡼ?⫼ߚ߿ᰃҔМ? ᓣDŽ⫼ᴹᓔথ JSP/Servlet 㗙 J2EE ⱘⳌ݇ᑨ⫼DŽㅔऩᎹॖᓣㄝDŽ ᮍḜˈ᮴䳔䞡ⳌৠⱘᎹDŽЏ㽕⫼ࠄњ MVC ⱘ䆒䅵އ⾡ᮍᓣˈԴৃҹ᮴᭄ഄՓ⫼䙷ѯᏆ᳝ⱘ㾷 ᮍḜⱘḌᖗDŽ䗮䖛䖭އ↣Ͼᓣ䛑ᦣ䗄њϔϾ៥Ӏⱘ⦃๗Ёϡᮁߎ⦄ⱘ䯂乬ˈ✊ৢᦣ䗄њ䆹䯂乬ⱘ㾷 113ǃᓔথЁ䛑⫼ࠄњ䙷ѯ䆒䅵ᓣ?⫼ҔМഎড়? ᐌ⫼ⱘষ˖Remote List Map Document NodeList ᐌ⫼ⱘࣙ˖java.lang java.awt java.io java.util java.sql ᐌ⫼ⱘ㉏˖BufferedReader BufferedWriter FileReader FileWirter String Integer 112ǃ䇈ߎϔѯᐌ⫼ⱘ㉏ˈࣙˈষˈ䇋В 5 Ͼ ᓎ䇁㿔 UMLDŽ⫼՟,䴭ᗕ(ࣙᣀ㉏ǃᇍ䈵ࣙ),㸠Ў,ѸѦ(乎ᑣ,ড়),ᅲ⦄DŽޚᷛ 111ǃUML ᮍ䴶 ӊ,Business ሖ㒘ӊ,ӕϮֵᙃ㋏㒳(EIS)ሖDŽ ৃϡৠ䅵ㅫᴎϞˈᑊϨ໘ѢⳌᑨⱘሖ(tier)ЁDŽ᠔ሲሖࣙᣀᅶ᠋ሖ(clietn tier)㒘ӊ,web ሖ㒘 ൟ(enterpriese application model).䖭ḋⱘϔϾᑨ⫼㋏㒳Ёˈৃᣝ✻ࡳ㛑ߦߚЎϡৠⱘ㒘ӊˈ䖭ѯ㒘ӊজ J2EE ᰃ Sun ݀ৌᦤߎⱘሖ(multi•diered),ߚᏗᓣ(distributed),Ѣ㒘ӊ(component•base)ⱘӕϮ㑻ᑨ⫼ 110ǃJ2EE ᰃҔМ˛ value ৃؐDŽ ㋴,ݙ䚼ᥦᑣDŽMap ֱᄬ key•value ؐˈܗ㋴DŽSet ᮴⊩ᢹ᳝䞡ܗ㋴ˈৃ᳝䞡ܗList ҹ⡍ᅮᑣᴹᣕ᳝ ㋴ᯊˈ᳝ҔМ⡍⚍˛ܗ109ǃListǃMapǃSet ϝϾষˈᄬপ ⫼ break; return ᮍ⊩DŽ 108ǃ JAVA Ёˈབԩ䏇ߎᔧࠡⱘ䞡ጠ༫ᕾ⦃˛ Clone ᳝㔎ⳕ㸠Ўˈsuper.clone();Ҫ䋳䋷ѻ⫳ℷ⹂ᇣⱘぎ䯈ˈᑊ䗤ԡࠊDŽ 107ǃݭ clone()ᮍ⊩ᯊˈ䗮ᐌ䛑᳝ϔ㸠ҷⷕˈᰃҔМ˛ ϡৃҹ,བᵰ݊Ёࣙᇍ䈵ⱘ method()˗ϡ㛑ֱ䆕ᇍ䈵߱ྟ࣪. w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! ˓ˊ⫼᠋ষϡৠ ᇣ. B/S ᓎゟᑓඳ㔥Ϟ, 䴶ϡৠⱘ⫼᠋㕸, ߚᬷഄඳ, 䖭ᰃ C/S ᮴⊩ࠄⱘ. Ϣ᪡㋏㒳ᑇৄ݇㋏᳔ ⱘ㋏㒳 C/S ᑣৃҹ໘⧚⫼᠋䴶ᅮ, ᑊϨⳌৠऎඳ, ᅝܼ㽕∖催䳔∖, Ϣ᪡㋏㒳Ⳍ݇. ᑨ䆹䛑ᰃⳌৠ ˒ˊ໘⧚䯂乬ϡৠ ϟ䕑ᅝ㺙ህৃҹᅲ⦄छ㑻. ࠄ᳔ᇣ.⫼᠋Ң㔥Ϟ㞾ᏅޣB/S ᵘӊ㒘៤,ᮍ䴶ᵘӊϾ߿ⱘᤶ,ᅲ⦄㋏㒳ⱘ᮴㓱छ㑻. ㋏㒳㓈ᡸᓔ䫔 ⱘ㋏㒳 ϔϾܼᮄخC/S ᑣ⬅Ѣᭈԧᗻ, ᖙ乏ᭈԧ㗗ᆳ, ໘⧚ߎ⦄ⱘ䯂乬ҹঞ㋏㒳छ㑻. छ㑻䲒. ৃ㛑ᰃݡ ˑˊ㋏㒳㓈ᡸϡৠ Ϟⱘ༈Ḡᄤخϡᰃ B/S ᇍⱘ䞡㒧ᵘ,㽕∖ᵘӊⳌᇍ⣀ゟⱘࡳ㛑. 㛑Ⳍᇍ䕗དⱘ䞡⫼.ህܹфᴹⱘ令Ḡৃҹݡ߽⫼,㗠 ⱘᭈԧᗻ㗗㰥, ᵘӊⱘ䞡⫼ᗻϡབ B/S 㽕∖ϟⱘᵘӊⱘ䞡⫼ᗻད.ܡC/S ᑣৃҹϡৃ䙓 ːˊ䕃ӊ䞡⫼ϡৠ ᵘӊᨁᓎⱘ㋏㒳. SUN IBM ⱘ JavaBean ᵘӊᡔᴃㄝ,Փ B/Sࡴ៤❳. B/S 㒧ᵘⱘᑣᶊᵘᰃথሩⱘ䍟,Ң MS ⱘ.Net ㋏߫ⱘ BizTalk 2000 Exchange 2000ㄝ, ܼ䴶ᬃᣕ㔥㒰ⱘ B/S ᇍᅝܼҹঞ䆓䯂䗳ᑺⱘ䞡ⱘ㗗㰥, ᓎゟ䳔㽕ࡴӬ࣪ⱘ⸔ПϞ. ↨ C/S ᳝催ⱘ㽕∖ C/S ᑣৃҹࡴ⊼䞡⌕, ৃҹᇍᴗ䰤ሖ᷵偠, ᇍ㋏㒳䖤㸠䗳ᑺৃҹ䕗ᇥ㗗㰥. ˏˊᇍᑣᶊᵘϡৠ B/S ᓎゟᑓඳ㔥ПϞ, ᇍᅝܼⱘࠊ㛑Ⳍᇍᔅ, ৃ㛑䴶ϡৃⶹⱘ⫼᠋DŽ 㒧ᵘ䗖ᅰ. ৃҹ䗮䖛 B/S থᏗ䚼ߚৃ݀ᓔֵᙃ. C/S ϔ㠀䴶Ⳍᇍᅮⱘ⫼᠋㕸, ᇍֵᙃᅝܼⱘࠊ㛑ᕜᔎ. ϔ㠀催ᑺᴎᆚⱘֵᙃ㋏㒳䞛⫼ C/S ˎˊᇍᅝܼ㽕∖ϡৠ ᳝↨ C/S ᔎⱘ䗖ᑨ㣗ೈ, ϔ㠀া㽕᳝᪡㋏㒳⌣㾜఼ህ㸠 B/S ᓎゟᑓඳ㔥ПϞⱘ, ϡᖙᰃϧ䮼ⱘ㔥㒰⹀ӊ⦃๗,՟Ϣ⬉䆱Ϟ㔥, ⾳⫼䆒. ֵᙃ㞾Ꮕㅵ⧚. Ѹᤶ᳡ࡵ. C/S ϔ㠀ᓎゟϧ⫼ⱘ㔥㒰Ϟ, ᇣ㣗ೈ䞠ⱘ㔥㒰⦃๗, ሔඳ㔥П䯈ݡ䗮䖛ϧ䮼᳡ࡵ఼ᦤկ䖲᭄ ˍˊ⹀ӊ⦃๗ϡৠ: C/S Ϣ B/S ऎ߿˖ ˳eb Server ৠ᭄ᑧ䖯㸠᭄ѸѦDŽ 䗮䖛 WWW ⌣㾜఼ᅲ⦄ˈϔ䚼ߚџࡵ䘏䕥ࠡッᅲ⦄ˈԚᰃЏ㽕џࡵ䘏䕥᳡ࡵ఼ッᅲ⦄DŽ⌣㾜఼䗮䖛 Explorerˈ᳡ࡵ఼ᅝ㺙 OracleǃSybaseǃInformix SQL Serverㄝ᭄ᑧDŽ䖭⾡㒧ᵘϟˈ⫼᠋⬠䴶ᅠܼ B/˯ᰃ Brower/Server ⱘ㓽ݭˈᅶ᠋ᴎϞা㽕ᅝ㺙ϔϾ⌣㾜఼˄Browser˅ˈབ Netscape Navigator Internet བ OracleǃSybaseǃInformix SQL ServerDŽᅶ᠋ッ䳔㽕ᅝ㺙ϧ⫼ⱘᅶ᠋ッ䕃ӊDŽ C/S ᰃ Client/Server ⱘ㓽ݭDŽ᳡ࡵ఼䗮ᐌ䞛⫼催ᗻ㛑ⱘ PCǃᎹキᇣൟᴎˈᑊ䞛⫼ൟ᭄ᑧ㋏㒳ˈ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! UDDI ᰃϔ༫Ѣ Web ⱘǃߚᏗᓣⱘǃЎ Web Service ᦤկⱘǃֵ˗ޚUDDI ⱘⳂⱘᰃЎ⬉ᄤଚࡵᓎゟᷛ SOAP ेㅔऩᇍ䈵䆓䯂ण䆂(Simple Object Access Protocol)ˈᅗᰃ⫼ѢѸᤶ XML 㓪ⷕֵᙃⱘ䕏䞣㑻ण䆂DŽ ᙃḐᓣϞҹᅮНッ⚍DŽⳌ݇ⱘԧッ⚍े㒘ড়៤Ўᢑ䈵ッ⚍˄᳡ࡵ˅DŽ ᇍ᪡⍜ᙃ䖯㸠ᢑ䈵ᦣ䗄ˈ✊ৢᇚ݊㒥ᅮࠄԧⱘ㔥㒰ण䆂⍜ܜֵᙃⱘ⍜ᙃ䖯㸠᪡DŽ䖭⾡Ḑᓣ佪 WSDL ᰃϔ⾡ XML Ḑᓣˈ⫼Ѣᇚ㔥㒰᳡ࡵᦣ䗄Ўϔ㒘ッ⚍ˈ䖭ѯッ⚍ᇍࣙ䴶᭛ḷֵᙃ䴶䖛 JAXM(Java API for XML Messaging) ᰃЎ SOAP 䗮ֵᦤկ䆓䯂ᮍ⊩Ӵ䕧ᴎࠊⱘ APIDŽ ᑣЁԴা㽕Փ⫼䖭ѯ䗮⫼ⱘষˈᔧԴ䳔㽕ᬍবԧⱘᅲ⦄ᯊгϡ䳔㽕ׂᬍҷⷕDŽ JAXP(Java API for XML Parsing) ᅮНњ Java ЁՓ⫼ DOM, SAX, XSLTⱘ䗮⫼ⱘষDŽ䖭ḋԴⱘ 䖭ѯ㾘㣗Փᕫ Web Service 㛑Ϣ݊Ҫݐᆍⱘ㒘ӊ䖯㸠Ѧ᪡DŽ Web ServiceWeb Service ᰃѢ㔥㒰ⱘǃߚᏗᓣⱘഫ࣪㒘ӊˈᅗᠻ㸠⡍ᅮⱘӏࡵˈ䙉ᅜԧⱘᡔᴃ㾘㣗ˈ 䞞DŽ 122ǃWEB SERVICE ৡ䆡㾷䞞DŽJSWDL ᓔথࣙⱘҟ㒡DŽJAXPǃJAXM ⱘ㾷䞞DŽSOAPǃUDDI,WSDL 㾷 ϔϾݙ䚼㉏ᇍ䈵ৃҹ䆓䯂߯ᓎᅗⱘ䚼㉏ᇍ䈵ⱘݙᆍ 121ǃݙ䚼㉏ৃҹᓩ⫼Ҫࣙ㉏ⱘ៤ਬ৫˛᳝≵᳝ҔМ䰤ࠊ˛ XML ҹঞᇍ䈵᭄ᑧ˄ODBMS˅ㄝㄝˈՓᕫᑨ⫼ৃ⿏ỡᗻᔎDŽ ࡳ㛑ˈ↨བ݇㋏᭄ᑧǃ᭛ӊǃټᰃ䴶݇㋏᭄ᑧ˄RDBMS˅JDO 䗮⫼ˈᦤկࠄӏԩ᭄ᑩሖⱘᄬ Ң㗠䲚Ёᯊ䯈㊒Ϯࡵ䘏䕥ϞDŽˈJDO ᕜ♉⌏ˈЎᅗৃҹӏԩ᭄ᑩሖϞ䖤㸠DŽJDBC া ⷕ˄བ JDBC API ⱘՓ⫼˅DŽ䖭ѯ㐕⧤ⱘ՟㸠ᎹᏆ㒣䕀⿏ࠄ JDO ѻકᦤկଚ䑿ϞˈՓᓔথҎਬ㾷㜅ߎᴹˈ ᭄ᇍ䈵ᅠܼϡ䳔㽕乱ⱘҷټℸᇍᓔথҎਬᴹ䇈ˈᄬˈټ࣪ APIDŽJDO ᦤկњ䗣ᯢⱘᇍ䈵ᄬޚⱘᷛ JDO ᰃ Java ᇍ䈵ᣕЙ࣪ⱘᮄⱘ㾘㣗ˈЎ java data object ⱘㅔ⿄,гᰃϔϾ⫼Ѣᄬপᶤ⾡᭄ҧᑧЁⱘᇍ䈵 120ǃJdo ᰃҔМ? 䖛 Java reflection APIs 㞾ࡼ໘⧚ JavaBeans ሲᗻǃ䰙࣪ⱘᦤ⼎⍜ᙃDŽ servlet Ёᦤկ݇㘨ᬃᣕˈᐂࡽᓔথਬ߯ᓎѸѦᓣ㸼ऩᑨ⫼DŽ ϝ.ᦤկњϔ㋏߫ᅲ⫼ᇍ䈵˖XML ໘⧚ǃ䗮 Ͼ controller servletˈ㛑ᇚ⫼᠋ⱘ䇋∖থ䗕ࠄⳌᑨⱘ Action ᇍ䈵DŽ Ѡ.JSP 㞾⬅ tag ᑧˈᑊϨ controller 㛑ᓔথߎѢ MVC(Model•View•Controller)䆒䅵ᓣⱘᑨ⫼ᵘᶊDŽ Struts᳝བϟⱘЏ㽕ࡳ㛑˖ ϔ.ࣙϔ Struts ᰃ䞛⫼ Java Servlet/JavaServer Pages ᡔᴃˈᓔথ Web ᑨ⫼ᑣⱘᓔᬒ⑤ⷕⱘ frameworkDŽ䞛⫼ Struts 119ǃSTRUTS ⱘᑨ⫼(བ STRUTS ᶊᵘ) 䆒㓪ষ㉏ᑧDŽڣGDI ㉏Ў 㗠㒓П䯈ⱘㅵ⧚Ḍߑ᭄ᑧЁᅲ⦄DŽ LINUX ᅲ⦄ⱘህᰃѢḌᖗ䕏䞣㑻䖯ⱘ“ϔᇍϔ“㒓ൟˈϔϾ㒓ᅲԧᇍᑨϔϾḌᖗ䕏䞣㑻䖯ˈ 118ǃLINUX ϟ㒓ˈGDI ㉏ⱘ㾷䞞DŽ ѸᯧЁᖗDŽڣB/S ֵᙃ⌕ৃব࣪, B•B B•C B•G ㄝֵᙃǃ⌕ⱘব࣪, C/S ᑣϔ㠀ᰃൟⱘЁ༂䲚ᴗⱘᴎẄᓣ໘⧚, ѸѦᗻⳌᇍԢ ˔ˊֵᙃ⌕ϡৠ ᴀ. Ԣᓔথ៤ޣ,ԢޣB/S ᓎゟ⌣㾜఼Ϟ, ᳝ࡴЄᆠ⫳ࡼⱘ㸼⦄ᮍᓣϢ⫼᠋Ѹ⌕. ᑊϨ䚼ߚ䲒ᑺ C/S ᰃᓎゟⱘ Window ᑇৄϞ,㸼⦄ᮍ⊩᳝䰤,ᇍᑣਬ᱂䘡㽕∖䕗催 w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! return ++x; public int addOne(final int x) { public class Something { 4. method ᇕ䫕䍋ᴹਸ਼? (ৠ⧚ˈabstract method ࠡϡ㛑ࡴ final)DŽ 㒚㡖ⱘˈᗢМৃҹ⫼ private ᡞ abstract ㄨḜ: 䫭DŽAbstract ⱘ methods ϡ㛑ҹ private ׂ佄DŽAbstract ⱘ methods ህᰃ䅽ᄤ㉏ implement(ᅲ⦄)ԧ ҔМ䫭৻?≴ڣ䖭ད } private abstract String doSomething (); abstract class Something { 3. (final བৠ abstract strictfpˈ䛑ᰃ䴲䆓䯂ׂ佄ヺˈstrictfp া㛑ׂ佄 class method 㗠䴲 variable)DŽ ব䞣 ㄨḜ: 䫭DŽሔ䚼ব䞣ࠡϡ㛑ᬒ㕂ӏԩ䆓䯂ׂ佄ヺ (privateˈpublicˈ protected)DŽFinal ৃҹ⫼ᴹׂ佄ሔ䚼 ᳝䫭৫? } } int l = s.length(); private String s = ““; void doSomething () { public class Something { 2. ㄨḜ: 䫭DŽAbstract method ᖙ乏ҹߚো㒧ሒˈϨϡᏺ㢅ᣀোDŽ մӀˈ䖭᳝ԩ䫭䇃? } public abstract boolean isStupidName(String name) {} private String name; abstract class Name { 1. JAVA ҷⷕᶹ䫭 DŽޚথ⦄ⱘ䆓䯂ण䆂ⱘᅲ⦄ᷛ 㾘㣗ˈৠᯊгࣙϔ㒘ՓӕϮ㛑ᇚ㞾䑿ᦤկⱘ Web Service ⊼ݠˈҹՓ߿ⱘӕϮ㛑ޚᙃ⊼ݠЁᖗⱘᅲ⦄ᷛ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! class Something { 6. (៤ਬব䞣)ˈ㗠 o ⱘ reference ᑊ≵᳝ᬍবDŽ (↨བ: o = new Other();)ˈ䙷МབৠϞ՟䖭乬гᰃ䫭ⱘDŽԚ䖭䞠ׂᬍⱘᰃ o ⱘ member vairable ㄨḜ: ℷ⹂DŽ addOne methodЁˈখ᭄ o 㹿ׂ佄៤ finalDŽབᵰaddOne method 䞠៥Ӏׂᬍњ oⱘreference Ϟ䴶ⱘᕜⳌԐˈ䛑ᰃ݇Ѣ final ⱘ䯂乬ˈ䖭᳝䫭৫? } public int I; class Other { } } o.i++; public void addOne(final Other o) { } new Something().addOne(o); Other o = new Other(); public static void main(String[] args) { public class Something { 5. IT 䴶䆩乬•᳔ܼ IT 䴶䆩乬䲚ড় Java 䴶䆩乬䲚•Java 䴶䆩乬,J2EE 䴶䆩乬䲚 Java 䴶䆩乬䲚(䖢ᆊ䏞䎗ᦤկ) Java ᐌ㾕䴶䆩乬䲚••䴶䆩乬ܼ䴶㓐ড়(Ѡ) Java ᐌ㾕䴶䆩乬䲚••䴶䆩乬ܼ䴶㓐ড়(ϔ) J2EE 䴶䆩乬䲚(䰘ㄨḜ) ㄨḜ: 䫭DŽInt x 㹿ׂ佄៤ finalˈᛣੇⴔ x ϡ㛑 addOne method Ё㹿ׂᬍDŽ 䖭Ͼ↨䕗ᯢᰒDŽ { { w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! public void doSomething() { final int I; class Something { 7. Java ᐌ㾕䴶䆩乬䲚••䴶䆩乬ܼ䴶㓐ড়(Ѡ) Java ᐌ㾕䴶䆩乬䲚••䴶䆩乬ܼ䴶㓐ড়(ϔ) Java 䴶䆩乬(᳔ᮄ᳔ܼ Java 䴶䆩乬∛ᘏ) J2EE 䴶䆩乬䲚(䰘ㄨḜ) ᳔ܼⱘ CC++䴶䆩乬䲚(CC++䆩乬䚼ߚㄨḜ) J2EE 䴶䆩乬䲚(䰘ㄨḜ) Java 䴶䆩乬∛ᘏঞ c/c++䴶䆩乬(᳔ᮄ᳔ܼ) Ϫ⬠݀ৌ䴶䆩乬—— ᖂ䕃ⱘ䴶䆩乬 ߎᇥ˛خGoogle ⱘ䴶䆩乬ˈԴ㛑 GOOGLE 䴶䆩乬 Google˖21 䘧㛑ؒ⌟䆩䴶䆩乬 .Net 䴶䆩乬䲚(᳔᳔ܼᮄ)(䖢ࡴܹ.Net 䴶䆩乬) 䗮⫼ C#䴶䆩乬 (䰘ㄨḜ) ASP.NET 䴶䆩乬 ᶤ݀ৌᬊ.net 催㑻ᑣਬⱘ䆩ो C#䴶䆩乬ㄨḜ C#䴶䆩乬䲚•᳔ᮄᭈ⧚ⱘ C#䴶䆩乬䲚 ᳔ܼⱘ CC++䴶䆩乬䲚(CC++䆩乬䚼ߚㄨḜ) .Net 䴶䆩乬䲚(᳔᳔ܼᮄ.Net 䴶䆩乬) valueDŽInt ⱘ default value ᰃ 0DŽ ㄨḜ: ℷ⹂DŽ䕧ߎⱘᰃ“I = 0“DŽInt i ሲᮐ instant variable (ᅲ՟ব䞣ˈি៤ਬব䞣)DŽInstant variable ᳝ default ᳝ҔМ䫭ਸ਼? ⳟϡߎᴹଞDŽ } } System.out.println(“I = “ + i); public void doSomething() { int I; w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! int x = 0; Interface A{ 10ˊ ৡⳌৠDŽ ㄨḜ: ℷ⹂DŽҢᴹ≵᳝Ҏ䇈䖛 Java ⱘ Class ৡᄫᖙ乏݊᭛ӊৡⳌৠDŽԚ public classⱘৡᄫᖙ乏᭛ӊ ᕜᯢᰒDŽڣ䖭Ͼད } } System.out.println(“Do something … “); private static void main(String[] something_to_do) { class Something { ℸ໘ˈSomething ㉏ⱘ᭛ӊৡি OtherThing.java 9. instant variableDŽ “System.out.println(“s.doSomething() returns “ + s.doSomething());“DŽৠ⧚ˈstatic method ϡ㛑䆓䯂 non•static Ҩ㒚ⳟˈmain ᰃ static ⱘDŽStatic method ϡ㛑Ⳉ call non•static methodsDŽৃᬍ៤ ㄨḜ: 䫭DŽⳟϞএ main 䞠 call doSomething ≵᳝ҔМ䯂乬ˈ↩コϸϾ methods 䛑ৠϔϾ class 䞠DŽԚ ⳟϞএᕜᅠ㕢DŽ } } return “Do something … “; public String doSomething() { } System.out.println(“s.doSomething() returns “ + doSomething()); Something s = new Something(); public static void main(String[] args) { public class Something { 8. default valueˈᖙ乏 constructor (ᵘ䗴఼)㒧ᴳПࠡ㹿䌟ќϔϾᯢ⹂ⱘؐDŽৃҹׂᬍЎ“final int I = 0;“DŽ ㄨḜ: 䫭DŽFinal int i ᰃϾ final ⱘ instant variable (ᅲ՟ব䞣ˈি៤ਬব䞣)DŽFinal ⱘ instant variable ≵᳝ Ϟ䴶ϔ乬া᳝ϔϾഄᮍϡৠˈህᰃњϔϾ finalDŽ䖭䲒䘧ህ䫭њ৫? } } System.out.println(“I = “ + i); w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! } this.name = name; public Ball(String name) { } return name; public String getName() { private String name; class Ball implements Rollable { } Ball ball = new Ball(“PingPang“); interface Rollable extends Playable, Bounceable { } void play(); interface Bounceable { } void play(); interface Playable { 11. ⫼ super.x ᴹᯢ⹂ˈ㗠ষⱘሲᗻ咬䅸䱤Ў public static final.᠔ҹৃҹ䗮䖛 A.x ᴹᯢ⹂DŽ Ͼ x 䛑ऍ䜡˄ህ䈵ৠᯊ import java.util java.sql ϸϾࣙᯊⳈໄᯢ Date ϔḋ˅DŽᇍѢ⠊㉏ⱘব䞣,ৃҹ ㄨḜ˖䫭䇃DŽ㓪䆥ᯊӮথ⫳䫭䇃(䫭䇃ᦣ䗄ϡৠⱘ JVM ᳝ϡৠⱘֵᙃˈᛣᗱህᰃᯢ⹂ⱘ x 䇗⫼ˈϸ } } new C().pX(); public static void main(String[] args) { } System.out.println(x); public void pX(){ class C extends B implements A { } int x =1; class B{ { public void play() { ball = new Ball(“Football“); System.out.println(ball.getName()); } } 䖭Ͼ䫭䇃ϡᆍᯧথ⦄DŽ ㄨḜ: 䫭DŽ“interface Rollable extends Playable, Bounceable“≵᳝䯂乬DŽInterface ৃ㒻ᡓϾ interfacesˈ᠔ ҹ䖭䞠≵䫭DŽ䯂乬ߎ interface Rollable 䞠ⱘ“Ball ball = new Ball(“PingPang“);“DŽӏԩ interface 䞠ໄᯢ ⱘ interface variable (ষব䞣ˈгৃ⿄៤ਬব䞣)ˈ咬䅸Ў public static finalDŽгህᰃ䇈“Ball ball = new Ball(“PingPang“);“ᅲ䰙Ϟᰃ“public static final Ball ball = new Ball(“PingPang“);“DŽ Ball ㉏ⱘ Play()ᮍ⊩Ёˈ “ball = new Ball(“Football“);“ᬍবњ ball ⱘ referenceˈ㗠䖭䞠ⱘ ball ᴹ㞾 Rollable interfaceˈRollable interface 䞠ⱘ ball ᰃ public static finalⱘˈfinal ⱘ object ᰃϡ㛑㹿ᬍব reference ⱘDŽℸ㓪䆥఼ᇚ“ball = new Ball(“Football“);“䖭䞠ᰒ⼎᳝䫭DŽ ᭛ゴߎ㞾 http://www.ad0.cn/ JAVA 㓪乬 1ˊ⦄䕧ܹ n Ͼ᭄ᄫˈҹ䗫োˈߚᓔ˗✊ৢৃ䗝ᢽछ㗙䰡ᑣᥦᑣ˗ᣝᦤѸ䬂ህϔ义䴶ᰒ⼎ᣝҔМ ᥦᑣˈ㒧ᵰЎˈᦤկ reset import java.util.*; public class bycomma{ public static String[] splitStringByComma(String source){ if(source==null||source.trim().equals(““)) return null; StringTokenizer commaToker = new StringTokenizer(source,“,“); String[] result = new String[commaToker.countTokens()]; int i=0; while(commaToker.hasMoreTokens()){ result[i] = commaToker.nextToken(); i++; } return result; } public static void main(String args[]){ String[] s = splitStringByComma(“5,8,7,4,3,9,1“); int[] ii = new int[s.length]; for(int I = 0;i ii[i] =Integer.parseInt(s[i]); Click to buy NOW! PDF•XC H ANGE w w w . d o c u • t r a c k.com } Arrays.sort(ii); //asc for(int i=0;i System.out.println(ii[i]); } //desc for(int i=(s.length•1);i>=0;i••){ System.out.println(ii[i]); } } } 2ˊ䞥乱䕀ᤶˈ䰓ᢝԃ᭄ᄫⱘ䞥乱䕀ᤶ៤ЁӴ㒳ⱘᔶᓣབ˖˄̞1011˅ˉ>˄ϔग䳊ϔᣒϔܗᭈ˅䕧ߎDŽ Package test.format; import java.text.NumberFormat; import java.util.HashMap; public class SimpleMoneyFormat { public static final String EMPTY = ““; public static final String ZERO = “䳊“; public static final String ONE = “ໍ“; public static final String TWO = “䌄“; public static final String THREE = “ক“; public static final String FOUR = “㙚“; public static final String FIVE = “ӡ“; public static final String SIX = “䰚“; public static final String SEVEN = “ᶦ“; public static final String EIGHT = “ᤠ“; public static final String NINE = “⥪“; public static final String TEN = “ᣒ“; public static final String HUNDRED = “Մ“; public static final String THOUSAND = “ҳ“; public static final String TEN_THOUSAND = “ϛ“; public static final String HUNDRED_MILLION = “ғ“; public static final String YUAN = “ܗ“; Click to buy NOW! PDF•XC H ANGE w w w . d o c u • t r a c k.com public static final String JIAO = “㾦“; public static final String FEN = “ߚ“; public static final String DOT = “.“; private static SimpleMoneyFormat formatter = null; private HashMap chineseNumberMap = new HashMap(); private HashMap chineseMoneyPattern = new HashMap(); private NumberFormat numberFormat = NumberFormat.getInstance(); private SimpleMoneyFormat() { numberFormat.setMaximumFractionDigits(4); numberFormat.setMinimumFractionDigits(2); numberFormat.setGroupingUsed(false); chineseNumberMap.put(“0“, ZERO); chineseNumberMap.put(“1“, ONE); chineseNumberMap.put(“2“, TWO); chineseNumberMap.put(“3“, THREE); chineseNumberMap.put(“4“, FOUR); chineseNumberMap.put(“5“, FIVE); chineseNumberMap.put(“6“, SIX); chineseNumberMap.put(“7“, SEVEN); chineseNumberMap.put(“8“, EIGHT); chineseNumberMap.put(“9“, NINE); chineseNumberMap.put(DOT, DOT); chineseMoneyPattern.put(“1“, TEN); chineseMoneyPattern.put(“2“, HUNDRED); chineseMoneyPattern.put(“3“, THOUSAND); chineseMoneyPattern.put(“4“, TEN_THOUSAND); chineseMoneyPattern.put(“5“, TEN); chineseMoneyPattern.put(“6“, HUNDRED); chineseMoneyPattern.put(“7“, THOUSAND); Click to buy NOW! PDF•XC H ANGE w w w . d o c u • t r a c k.com chineseMoneyPattern.put(“8“, HUNDRED_MILLION); } public static SimpleMoneyFormat getInstance() { if (formatter == null) formatter = new SimpleMoneyFormat(); return formatter; } public String format(String moneyStr) { checkPrecision(moneyStr); String result; result = convertToChineseNumber(moneyStr); result = addUnitsToChineseMoneyString(result); return result; } public String format(double moneyDouble) { return format(numberFormat.format(moneyDouble)); } public String format(int moneyInt) { return format(numberFormat.format(moneyInt)); } public String format(long moneyLong) { return format(numberFormat.format(moneyLong)); } public String format(Number moneyNum) { return format(numberFormat.format(moneyNum)); } Click to buy NOW! PDF•XC H ANGE w w w . d o c u • t r a c k.com private String convertToChineseNumber(String moneyStr) { String result; StringBuffer cMoneyStringBuffer = new StringBuffer(); for (int I = 0; I < moneyStr.length(); i++) { cMoneyStringBuffer.append(chineseNumberMap.get(moneyStr.substring(I, I + 1))); } //ᣒՄҳϛғㄝ䛑ᰃ∝ᄫ䞠䴶ᠡ᳝ⱘऩԡˈࡴϞᅗӀ int indexOfDot = cMoneyStringBuffer.indexOf(DOT); int moneyPatternCursor = 1; for (int I = indexOfDot • 1; I > 0; i••) { cMoneyStringBuffer.insert(I, chineseMoneyPattern.get(EMPTY + moneyPatternCursor)); moneyPatternCursor = moneyPatternCursor == 8 ? 1 : moneyPatternCursor + 1; } String fractionPart = cMoneyStringBuffer.substring(cMoneyStringBuffer.indexOf(“.“)); cMoneyStringBuffer.delete(cMoneyStringBuffer.indexOf(“.“), cMoneyStringBuffer.length()); while (cMoneyStringBuffer.indexOf(“䳊ᣒ“) != •1) { cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf(“䳊ᣒ“), cMoneyStringBuffer.indexOf(“䳊ᣒ“) + 2, ZERO); } while (cMoneyStringBuffer.indexOf(“䳊Մ“) != •1) { cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf(“䳊Մ“), cMoneyStringBuffer.indexOf(“䳊Մ“) + 2, ZERO); } while (cMoneyStringBuffer.indexOf(“䳊ҳ“) != •1) { cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf(“䳊ҳ“), cMoneyStringBuffer.indexOf(“䳊ҳ“) + 2, ZERO); } while (cMoneyStringBuffer.indexOf(“䳊ϛ“) != •1) { cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf(“䳊ϛ“), cMoneyStringBuffer.indexOf(“䳊ϛ“) + 2, TEN_THOUSAND); } while (cMoneyStringBuffer.indexOf(“䳊ғ“) != •1) { cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf(“䳊ғ“), cMoneyStringBuffer.indexOf(“䳊ғ“) Click to buy NOW! PDF•XC H ANGE w w w . d o c u • t r a c k.com + 2, HUNDRED_MILLION); } while (cMoneyStringBuffer.indexOf(“䳊䳊“) != •1) { cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf(“䳊䳊“), cMoneyStringBuffer.indexOf(“䳊䳊“) + 2, ZERO); } if (cMoneyStringBuffer.lastIndexOf(ZERO) == cMoneyStringBuffer.length() • 1) cMoneyStringBuffer.delete(cMoneyStringBuffer.length() • 1, cMoneyStringBuffer.length()); cMoneyStringBuffer.append(fractionPart); result = cMoneyStringBuffer.toString(); return result; } private String addUnitsToChineseMoneyString(String moneyStr) { String result; StringBuffer cMoneyStringBuffer = new StringBuffer(moneyStr); int indexOfDot = cMoneyStringBuffer.indexOf(DOT); cMoneyStringBuffer.replace(indexOfDot, indexOfDot + 1, YUAN); 1. ҹϟϝᴵ䕧ߎ䇁হߚ߿䕧ߎҔМ˛[C ᯧ] char str1[] = “abc“; char str2[] = “abc“; const char str3[] = “abc“; const char str4[] = “abc“; const char* str5 = “abc“; const char* str6 = “abc“; cout << boolalpha << ( str1==str2 ) << endl; // 䕧ߎҔМ˛ Cout << boolalpha << ( str3==str4 ) << endl; // 䕧ߎҔМ˛ Cout << boolalpha << ( str5==str6 ) << endl; // 䕧ߎҔМ˛ Click to buy NOW! PDF•XC H ANGE w w w . d o c u • t r a c k.com w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! Test( int ) {} { struct Test 4. ҹϟҷⷕ᳝ҔМ䯂乬˛[C++ᯧ] cout << endl; for( size_t i=0; i char2Hex( str[i] ); char str[] = “I love Ё“; } cout << ch << cl << ' '; char cl = c%0x10 + '0'; if( cl > '9' ) cl += ('A'•'9'•1); char ch = c/0x10 + '0'; if( ch > '9' ) ch += ('A'•'9'•1); { void char2Hex( char c ) // ᇚᄫヺҹ 16 䖯ࠊ㸼⼎ 7. ҹϟҷⷕ᳝ҔМ䯂乬˛[C 䲒] cout << str << endl; UpperCase( str ); cout << “str ᄫヺ䭓ᑺЎ: “ << sizeof(str)/sizeof(str[0]) << endl; char str[] = “aBcDe“; } str[i] •= ('a'•'A' ); for( size_t i=0; i if( 'a'<=str[i] && str[i]<='z' ) { void UpperCase( char str[] ) // ᇚ str Ёⱘᇣݭᄫ↡䕀ᤶ៤ݭᄫ↡ 12. ҹϟҷⷕЁⱘϸϾ sizeof ⫼⊩᳝䯂乬৫˛[C ᯧ] d. A& operator= ( const A& ); // 䌟ؐ᪡ˈ㱑ϡᰃℷᅫⱘ䱤ᓣ㉏ൟ䕀ᤶˈԚгৃҹ࢝ᔎㅫϔϾ c. class A { A( const B& ); } // A ᅲ⦄њ non•explicit ⱘখ᭄Ў B˄ৃҹ᳝݊Ҫᏺ咬䅸ؐⱘখ᭄˅ᵘ䗴ߑ᭄ b. class B { operator A( ); } // B ᅲ⦄њ䱤ᓣ䕀࣪Ў A ⱘ䕀࣪ a. class B : public A { … … } // B ᳝݀㒻ᡓ㞾 Aˈৃҹᰃ䯈㒻ᡓⱘ ㄨ˖ ϟ B 㛑䱤ᓣ䕀࣪Ў A˛[C++Ёㄝ]މ䴲 C++ݙᓎൟ߿ A Bˈા⾡ᚙ .13 Test() {} void fun() {} }; void main( void ) { Test a(1); a.fun(); Test b(); b.fun(); } 5. ҹϟҷⷕ᳝ҔМ䯂乬˛[C++ᯧ] cout << (true?1:“1“) << endl; 8. ҹϟҷⷕ㛑㓪䆥䗮䖛৫ˈЎҔМ˛[C++ᯧ] unsigned int const size1 = 2; char str1[ size1 ]; unsigned int temp = 0; cin >> temp; unsigned int const size2 = temp; char str2[ size2 ]; 9. ҹϟҷⷕЁⱘ䕧ߎ䇁হ䕧ߎ 0 ৫ˈЎҔМ˛[C++ᯧ] struct CLS { int m_i; CLS( int I ) : m_i(i) {} CLS() { CLS(0); } }; CLS obj; Click to buy NOW! PDF•XC H ANGE w w w . d o c u • t r a c k.com w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! cout << array[i] << endl; { for( vector::size_type i=array.size()•1; i>=0; ••I ) // ড䘡ग़ array ᭄㒘 array.push_back( 3 ); array.push_back( 2 ); array.push_back( 1 ); vector array; 2. ҹϟড䘡ग़ array ᭄㒘ⱘᮍ⊩᳝ҔМ䫭䇃˛[STL ᯧ] cout << boolalpha << ( (int)b == (int&)b ) << endl; // 䕧ߎҔМ˛ cout << (int&)b << endl; cout << (int)b << endl; Float b = 0.0f; cout << boolalpha << ( (int)a == (int&)a ) << endl; // 䕧ߎҔМ˛ cout << (int&)a << endl; cout << (int)a << endl; float a = 1.0f; 3. ҹϟϸᴵ䕧ߎ䇁হߚ߿䕧ߎҔМ˛[C++䲒] }; const Empty* operator&() const; //পഔ䖤ㅫヺ const Empty* operator&(); // পഔ䖤ㅫヺ Empty& operator=( const Empty& ); // 䌟ؐ䖤ㅫヺ ~Empty(); //ᵤᵘߑ᭄ Empty( const Empty& ); // ᣋ䋱ᵘ䗴ߑ᭄ Empty(); // 㔎ⳕᵘ䗴ߑ᭄ public: { class Empty ㄨ˖ 10. C++Ёⱘぎ㉏ˈ咬䅸ѻ⫳ાѯ㉏៤ਬߑ᭄˛[C++ᯧ] cout << obj.m_i << endl; w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! { int main( void ) } return dest; } for( size_t i=0; i pdest[i] = psrc[i]; { else } pdest[i] = psrc[i]; for( size_t i=count•1; i!=•1; ••I ) if( pdest>psrc && pdest { const char* psrc = static_cast( src ); char* pdest = static_cast( dest ); { void* mymemcpy( void *dest, const void *src, size_t count ) ㄨ˖ 11. ݭϔϾߑ᭄ˈᅠ៤ݙᄬП䯈ⱘᣋ䋱DŽ[㗗㰥䯂乬ᰃ৺ܼ䴶] } if( 2 == *itor ) array.erase( itor ); { for( IntArray::iterator itor=array.begin(); itor!=array.end(); ++itor ) // ߴ䰸 array ᭄㒘Ё᠔᳝ⱘ 2 array.push_back( 3 ); array.push_back( 2 ); array.push_back( 2 ); array.push_back( 1 ); IntArray array; typedef vector IntArray; 6. ҹϟҷⷕ᳝ҔМ䯂乬˛[STL ᯧ] ᭛ゴߎ㞾 http://www.ad0.cn/ { w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! 䫟䆎യ/IT ㊒㣅䆎യܜ http://bbs.ad0.cn/ ゟेࡴܹ IT Java 䴶䆩乬ܼ䲚 J2EEᐌ㾕䴶䆩乬 Java䴶䆩乬∛ᘏ c/c++䴶䆩乬 Java䴶䆩乬 䴶䆩乬䇋⚍ߏᎺջⱘⳌ݇ݙᆍЏ乬…… Ⳍ݇䴶䆩䆩乬 Java 䴶䆩乬䲚(䖢ᆊ䏞䎗ᦤկ) Java ᐌ㾕䴶䆩乬䲚••䴶䆩乬ܼ䴶㓐ড়(Ѡ) Java ᐌ㾕䴶䆩乬䲚••䴶䆩乬ܼ䴶㓐ড়(ϔ) J2EE 䴶䆩乬䲚(䰘ㄨḜ) Java 䴶䆩乬∛ᘏঞ c/c++䴶䆩乬(᳔ᮄ᳔ܼ) ᖂ䕃䴶䆩乬—— ᖂ䕃ⱘᱎ乬—— ϝϾ♃⊵ ݏ៤Ў㓪催ⱘ⸔㋴ Ϫ⬠݀ৌ䴶䆩乬—— ᖂ䕃ⱘ䴶䆩乬˄ㄨḜ˅ Ϫ⬠݀ৌ䴶䆩乬—— ᖂ䕃ⱘ䴶䆩乬 䇈ᰃ䰓ᇨव⡍˄Ё˅ⱘ䴶䆩乬Ⳃ© ߎᇥ˛خGoogle ⱘ䴶䆩乬ˈԴ㛑 GOOGLE 䴶䆩乬 Google˖21 䘧㛑ؒ⌟䆩䴶䆩乬 .Net 䴶䆩乬䲚(᳔᳔ܼᮄ)(䖢ࡴܹ.Net 䴶䆩乬) ᳆߿䩜ᤶ᠓ᄤ 䖭ህᰃⳳᅲⱘџᚙ ᶤ݀ৌᬊ.net 催㑻ᑣਬⱘ䆩ो ϔ䘧᳝䍷ⱘ C#㗗䆩乬Ⳃ Ⳍ݇䴶䆩乬䇋খ䯙䖭䞠˖ } return 0; system( “Pause“ ); cout << str << endl; mymemcpy( str+1, str+0, 9 ); char str[] = “0123456789“; w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! int length=(\“\“ + number).length(); int count=0; int getCountOfNumber(int number){ java ㄨḜϔ˖ google ⱘϔ䘧 JAVA 䴶䆩乬! 2006/12/01 16:09 NetFetch Says: ᭛ゴᕜདˈ៥ᬊ㮣њʽ 2007/06/01 08:48 57jx55 Says: ᭛ゴϟ䕑њ,䇶䇶 2007/10/27 20:20 䴦䴦 Says: 2DŽᗢḋ䇗⫼ϔϾ㉏ⱘ⾕᳝ᮍ⊩DŽ 1DŽ᳝⾡ᮍ⊩䅵ㅫ䖤㸠ϔϾᮍ⊩᠔䳔ⱘᯊ䯈DŽ ᶤӕⱘ Java 䴶䆩乬Ⳃ 2007/10/29 21:58 NetFetch Says: 43517=? 2007/11/30 11:06 wh Says: བℸⱘ Java 乬ˈᛳ䇶ߚѿ 2008/03/12 10:50 jer08 Says: ⊼ᛣ˖ 䆹ഄഔҙҞ᮹ 23:59:59 П᳝ࠡᬜ ᓩ⫼ഄഔ˖ 䆘䆎(14) | ᓩ⫼(0) | 䯙䇏(98086) ϟϔ㆛: Java Ё float ⱘপؐ㣗ೈ Ϟϔ㆛: J2EE 䴶䆩乬䲚(䰘ㄨḜ)˄䖢ࡴܹ J2EE 䴶䆩乬˅ Ta gs: JAVA ᐌ㾕䴶䆩乬 , JAVA䴶䆩乬 , JAVA䴶䆩乬∛ᘏ , C/C++䴶䆩乬 , C++䴶䆩乬䲚 w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! java ҷⷕ: google ⱘϔ䘧 JAVA 䴶䆩乬! 2006/12/01 16:07 NetFetch Says: ᳝དᗱ䏃ⱘৃҹ䅼䆎䅼䆎DŽ ᳝Ҏ⫼ c ݭњϔϾˈᕫߎ䖭ѯ㒧ᵰা⫼њक↿⾦ʽ f(1111111110) = 1111111110 f(535200001) = 535200001 f(535200000) = 535200000 f(535199990) = 535199990 f(535199989) = 535199989 .... f(199985) = 199985 f(199984) = 199984 f(199983) = 199983 f(199982) = 199982 f(199981) = 199981 f(1) = 1 f(0) = 0 䖭Ͼᰃ 4000000000 ҹݙⱘ㒧ᵰʽ˖ ϡ䖛া䅵ㅫࠄϞ䖍ⱘ᭄ؐህ≵ᛣᗱˈⳟⳟ䖭Ͼ˖ 䅵ㅫࠄ˖199981 ⫼њ 203 } return count; } if(num*num==1) count++; number=(number•num)/10; int num=number%10; for(int i=0;i<=length;i++){ w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! Џ㽕ᮄ c/c++䴶䆩乬䚼ߚ Java 䴶䆩乬∛ᘏঞ c/c++䴶䆩乬Ҟ᮹ݡᮄ…… 2006/04/04 10:19 㔥儖Ꮉᅸ Says: 18.㔥㒰㓪Ё䆒䅵ᑊথ᳡ࡵ఼ˈՓ⫼䖯Ϣ㒓 ˈ䇋䯂᳝ҔМऎ߿˛ 17ˊ䇜䇜 Windows DNA 㒧ᵘⱘ⡍⚍Ӭ⚍DŽ 16ˊTemplate ᳝ҔМ⡍⚍˛ҔМᯊ⫼˛ 䖛ᰃҔМ˛᳝ҔМ⫼˛᳝ҔМӬ⚍˛ټ15ˊᄬ 14ˊApartment COM Ё᳝ҔМ⫼˛ЎҔМ㽕ᓩܹ˛ 13ˊབԩপ䬂Ⲭⱘડᑨˈ䅽᠔᳝ⱘ‘a’ব៤‘b’˛ winamp ϔḋˈা㛑ᓔϔϾにষˈᗢḋᅲ⦄˛ ڣ12ˊབᵰাᛇ䅽ᑣ᳝ϔϾᅲ՟䖤㸠ˈϡ㛑䖤㸠ϸϾDŽ 11ˊ IA32 Ёϔ᳝݅ᇥ⾡ࡲ⊩Ң⫼᠋ᗕ䏇ࠄݙḌᗕ˛ 10ˊ㒭ϸϾব䞣ˈབԩᡒߎϔϾᏺ⦃ऩ䫒㸼ЁᰃҔМഄᮍߎ⦄⦃ⱘ˛ 9ˊ䇜䇜 IA32 ϟⱘߚ义ᴎࠊ 8ˊ䇜䇜 COM ⱘ㒓ൟDŽ✊ৢ䅼䆎䖯ݙ/㒘ӊⱘᏂ߿DŽ 7ˊC/C++㓪䆥఼Ё㰮㸼ᰃབԩᅠ៤ⱘ˛ 6ˊᅶ᠋ッབԩ䆓䯂.Net 㒘ӊᅲ⦄ Web Service˛ 5ˊҟ㒡.Net .Net ⱘᅝܼᗻDŽ 4ˊWindows ϟⱘݙᄬᰃབԩㅵ⧚ⱘ˛ 3ˊHeap Ϣ stack ⱘᏂ߿DŽ 2.⌟䆩ᮍ⊩ 1ˊ䖯㒓ⱘᏂ߿DŽ C/C++䴶䆩乬∛ᘏПᖂ䕃Ѯ⌆ᡔᴃЁᖗ䴶䆩乬 2006/10/28 09:27 NetFetch Says: ᳔ⱘ f(n)=n ⱘ n ᰃҔМ˛ ᳝ϔϾᭈ᭄ n,ݭϔϾߑ᭄ f(n),䖨ಲ 0 ࠄ n П䯈ߎ⦄ⱘ\“1\“ⱘϾ᭄DŽ↨བ f(13)=6,⦄ f(1)=1,䯂ϟϔϾ 㗏䆥䖛ᴹԧᰃ䖭ḋ˖ For example, f(13)=6. Notice that f(1)=1. What is the next largest n such that f(n)=n? all numbers between 0 and n. Consider a function which, for a given whole number n, returns the number of ones required when writing out w . d o c u • t r a c k.com w w PDF•XC H ANGE Click to buy NOW! { }else System.out.println(substrx); String substrx=new String(bt,0,••byteNum); { if(bt[byteNum]<0) { if(byteNum>1) System.out.println(\“Length of this String ===>\“+bt.length); byte bt[]=str.getBytes(); { public void splitIt() } this.byteNum=byteNum; this.str=str; { public SplitString(String str,int byteNum) public SplitString(){} private int byteNum; private String str; { class SplitString package string; 㗠ϡᰃ“៥ ABC+∝ⱘञϾ”DŽ ֱ䆕∝ᄫϡ㹿ञϾˈབ“៥ ABC”4ˈᑨ䆹Ў“៥ AB”ˈ䕧ܹ“៥ ABC ∝ DEF”ˈ6ˈᑨ䆹䕧ߎЎ“៥ ABC” 㓪˖㓪ݭϔϾপᄫヺІⱘߑ᭄ˈ䕧ܹЎϔϾᄫヺІᄫ㡖᭄ˈ䕧ߎЎᣝᄫ㡖পⱘᄫヺІDŽ Ԛᰃ㽕 2006/03/24 17:38 DEE Says: String substrex=new String(bt,0,byteNum); System.out.println(substrex); } }else { if(byteNum==1) { if(bt[byteNum]<0) { String substr1=new String(bt,0,++byteNum); System.out.println(substr1); }else { String subStr2=new String(bt,0,byteNum); System.out.println(subStr2); } }else { System.out.println(\“䕧ܹ䫭䇃ʽʽʽ䇋䕧ܹѢ䳊ⱘᭈ᭄˖\“); } } } } public class TestSplitString { public static void main(String args[]) { String str=\“៥ ABC ∝ DEF\“; int num=6; SplitString sptstr = new SplitString(str,num); sptstr.splitIt(); Click to buy NOW! PDF•XC H ANGE w w w . d o c u • t r a c k.com } } Click to buy NOW! PDF•XC H ANGE w w w . d o c u • t r a c k.com