Java EE(Enterprise Edition)๋Š” ๋‹ค์ค‘ ๊ณ„์ธต, ๋ถ„์‚ฐ ๋ฐ ๊ณ ์„ฑ๋Šฅ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฐœ๋ฐœ, ๋ฐฐํฌ ๋ฐ ๊ด€๋ฆฌ๋ฅผ ๋‹จ์ˆœํ™”ํ•˜๋Š” ๊ฐ•๋ ฅํ•˜๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. Java EE๋Š” ๋Œ€๊ทœ๋ชจ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ง€์›ํ•˜๋„๋ก ํŠน๋ณ„ํžˆ ์„ค๊ณ„๋œ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” Java SE(Java Platform, Standard Edition)์˜ ํ™•์žฅ์ž…๋‹ˆ๋‹ค. Java EE ํ”Œ๋žซํผ์€ ๋‹ค์–‘ํ•œ ํ•˜๋“œ์›จ์–ด ๋ฐ ์†Œํ”„ํŠธ์›จ์–ด ํ™˜๊ฒฝ์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ•๋ ฅํ•˜๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๋ฉฐ ๋ฏธ์…˜ ํฌ๋ฆฌํ‹ฐ์ปฌํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‰ฝ๊ฒŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก ํฌ๊ด„์ ์ธ API ๋ฐ ์„œ๋น„์Šค ์„ธํŠธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์œ ์—ฐ์„ฑ ๋•๋ถ„์— Java EE๋Š” ์ตœ์†Œํ•œ์˜ ์œ„ํ—˜๊ณผ ๋†’์€ ํˆฌ์ž ์ˆ˜์ต์œผ๋กœ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ๊ธ‰ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœ ๋ฐ ๋ฐฐํฌํ•˜๋Š” ์กฐ์ง์— ์ด์ƒ์ ์ธ ์„ ํƒ์ž…๋‹ˆ๋‹ค.

Java EE ํ”Œ๋žซํผ์€ JDBC(Java Database Connectivity), Java Servlet, JSP(JavaServer Pages) ๋ฐ EJB(Enterprise JavaBeans)์™€ ๊ฐ™์€ ์ฃผ์š” ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ํฌํ•จํ•˜์—ฌ ์ž…์ฆ๋œ Java ๊ธฐ์ˆ ์˜ ๊ฒฌ๊ณ ํ•œ ๊ธฐ๋ฐ˜ ์œ„์— ๊ตฌ์ถ•๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ตฌ์„ฑ ์š”์†Œ๋Š” ํ•จ๊ป˜ ์ž‘๋™ํ•˜์—ฌ ๊ฐ•๋ ฅํ•œ ๋‹ค์ค‘ ๊ณ„์ธต ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๊ณ  ๋ฐฐํฌํ•˜๊ธฐ ์œ„ํ•œ ์ผ๊ด€๋˜๊ณ  ํ†ตํ•ฉ๋œ ์ƒํ˜ธ ์šด์šฉ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. Java EE์˜ ๋ชจ๋“ˆ์„ฑ์„ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋Š” ํŠน์ • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์„ฑ ์š”์†Œ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ํ”Œ๋žซํผ์€ ๊ณ ์„ฑ๋Šฅ, ๋ณด์•ˆ ๋ฐ ํ™•์žฅ์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋ณต์žกํ•œ ๊ธฐ๋ณธ ์ธํ”„๋ผ๋ฅผ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

Java EE์—๋Š” Java SE์˜ ๊ธฐ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๋ช‡ ๊ฐ€์ง€ ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜๋Š” Java EE ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ํ˜ธ์ŠคํŠธ, ๊ด€๋ฆฌ ๋ฐ ์‹คํ–‰ํ•˜๋„๋ก ์„ค๊ณ„๋œ ์†Œํ”„ํŠธ์›จ์–ด ํ”Œ๋žซํผ์ธ Java EE ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์„œ๋ฒ„๋Š” ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ฐฐํฌํ•˜๊ณ  ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋ฉฐ ์ผ๋ฐ˜์ ์œผ๋กœ Java SE ์œ„์— ๊ตฌ์ถ•๋ฉ๋‹ˆ๋‹ค. ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ๋ฐ ํด๋Ÿฌ์Šคํ„ฐ๋ง์—์„œ ๋ถ„์‚ฐ ํŠธ๋žœ์žญ์…˜ ์ง€์›, ๋ฉ”์‹œ์ง€ ๊ธฐ๋ฐ˜ ์ฒ˜๋ฆฌ ๋ฐ ์›น ์„œ๋น„์Šค์— ์ด๋ฅด๊ธฐ๊นŒ์ง€ ๊ด‘๋ฒ”์œ„ํ•œ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ถ€ ์ธ๊ธฐ ์žˆ๋Š” Java EE ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„์—๋Š” Oracle WebLogic, IBM WebSphere, Red Hat JBoss, GlassFish ๋ฐ Apache TomEE๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

Java EE์˜ ๋˜ ๋‹ค๋ฅธ ์ฃผ๋ชฉํ• ๋งŒํ•œ ๊ธฐ๋Šฅ์€ ๋ถ„์‚ฐ ์ปดํ“จํŒ… ๋ฐ ๊ตฌ์„ฑ ์š”์†Œ ๊ธฐ๋ฐ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ ์ง€์›์ž…๋‹ˆ๋‹ค. EJB(Enterprise JavaBeans)๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“ˆ์‹ ์„œ๋ฒ„ ์ธก ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” Java EE์˜ ํ•ต์‹ฌ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. EJB๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ์บก์Аํ™”ํ•˜๊ณ  ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•˜๋ฉฐ ๋ถ„์‚ฐ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ๊ตฌ์„ฑ ์š”์†Œ ๊ฐ„ ํ†ต์‹ ์„ ์šฉ์ดํ•˜๊ฒŒ ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. Java EE๋Š” ๊ธฐ๋ณธ ์•„ํ‚คํ…์ฒ˜๋‚˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์— ๊ด€๊ณ„์—†์ด ๋‹ค์–‘ํ•œ ๋ถ„์‚ฐ ์‹œ์Šคํ…œ ๊ฐ„์˜ ์ƒํ˜ธ ์šด์šฉ์„ฑ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ์›น ์„œ๋น„์Šค๋„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๋ณด์•ˆ์€ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์˜ ์ค‘์š”ํ•œ ์ธก๋ฉด์ด๋ฉฐ Java EE๋Š” JAAS(Java Authentication and Authorization Service) ๋ฐ JSSE(Java Secure Socket Extension)๋ฅผ ํ†ตํ•ด ์ด๋Ÿฌํ•œ ์š”๊ตฌ๋ฅผ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค. JAAS๋Š” Java EE ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์‰ฝ๊ฒŒ ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์—ฐํ•˜๊ณ  ํ”Œ๋Ÿฌ๊ทธ ๊ฐ€๋Šฅํ•œ ์ธ์ฆ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด์— JSSE๋Š” ๋ณด์•ˆ ์†Œ์ผ“๊ณผ SSL/TLS ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ Java ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋‹ค๋ฅธ ์‹œ์Šคํ…œ ๊ฐ„์˜ ๋ณด์•ˆ ํ†ต์‹ ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

Java EE๋Š” ๊ฐ•๋ ฅํ•œ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๋ฐ ์ง€์†์„ฑ์„ ์œ„ํ•œ ๋‚ด์žฅ ์ง€์›๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. JPA(Java Persistence API)๋Š” Java EE์˜ ํ•„์ˆ˜ ๋ถ€๋ถ„์ด๋ฉฐ Java ๊ฐœ์ฒด๋ฅผ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์— ๋งคํ•‘ํ•˜๋Š” ๊ฒƒ์„ ๋‹จ์ˆœํ™”ํ•˜๊ณ  ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ ๋ฐ ์กฐ์ž‘์„ ์œ„ํ•œ ํ‘œ์ค€ ์ฟผ๋ฆฌ ์–ธ์–ด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. Java EE๋Š” ๋˜ํ•œ JTA(Java Transaction API) ๋ฐ JDBC(Java Database Connectivity)์™€ ๊ฐ™์€ ๊ธฐ์ˆ ์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋™์‹œ์„ฑ ์ œ์–ด, ํŠธ๋žœ์žญ์…˜ ๊ด€๋ฆฌ ๋ฐ ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

AppMaster no-code ํ”Œ๋žซํผ ์ปจํ…์ŠคํŠธ์—์„œ Java EE๋Š” ์ž ์žฌ์ ์œผ๋กœ ๊ฐ€์น˜ ์žˆ๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ ๋„๊ตฌ๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Java EE๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ด‘๋ฒ”์œ„ํ•œ ๊ธฐ๋Šฅ์„ ๊ณ ๋ คํ•  ๋•Œ Java EE๋ฅผ ํ”Œ๋žซํผ์— ํ†ตํ•ฉํ•˜๋ฉด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ธฐ๋Šฅ์˜ ๋ฒ”์œ„๊ฐ€ ํ™•์žฅ๋˜์–ด ํ›จ์”ฌ ๋” ๊ฐ•๋ ฅํ•˜๊ณ  ๋‹ค์žฌ๋‹ค๋Šฅํ•ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ AppMaster ์„œ๋ฒ„ ์ธก ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด Go(golang)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฏธ ํšจ์œจ์ ์ด๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ๋ฐฑ์—”๋“œ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ œ๊ณตํ•œ๋‹ค๋Š” ์ ์— ์œ ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด AppMaster ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๊ณ ๋„๋กœ ์ตœ์ ํ™”๋˜๊ณ  ๋ถ€ํ•˜๊ฐ€ ๋†’์€ ๊ฒฝ์šฐ์—๋„ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๋ก ์ ์œผ๋กœ Java EE๋Š” ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ์ค‘์š”ํ•œ ๊ธฐ์ˆ ์ด์ง€๋งŒ ํ”Œ๋žซํผ์ด ์ด๋ฏธ ๋‹ค๋ฅธ ์ตœ์ฒจ๋‹จ ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋›ฐ์–ด๋‚œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ AppMaster ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•œ ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์˜ ๋งฅ๋ฝ์—์„œ Java EE๋ฅผ ์ดํ•ดํ•˜๋ฉด ๊ฐœ๋ฐœ์ž์˜ ์ง€์‹์„ ์‹ฌํ™”ํ•˜๊ณ  ๊ธฐ์ˆ ์„ ํ™•์žฅํ•˜์—ฌ ๊ถ๊ทน์ ์œผ๋กœ AppMaster ํ”Œ๋žซํผ์— ๋Œ€ํ•œ ๊ฒฝํ—˜์„ ํ’๋ถ€ํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.