🏛️ HONGIKINGAN CMS хөгжүүлэгчийн гарын авлага

Хувилбар 202506 | Шинэчилсэн 2025-06-12
🌐 Хэл сонгох: 🇰🇷 한국어 🇲🇳 Монгол 🇺🇸 English

3. ⚙️ Хөгжүүлэлтийн орчин тохируулга

3.1 Системийн шаардлага

HONGIKINGAN CMS-ийн хөгжүүлэлтийн орчин нь eGovFrame-ийн хөгжүүлэлтийн орчныг шууд ашигладаг бөгөөд програм хөгжүүлэлт болон ажиллуулахад шаардлагатай бүрдүүлэх хэрэгслийн орчны мэдээлэл дараах байдалтай байна.

3.1.1 Үндсэн шаардлага

💻OS

  • Windows 10, 7 болон түүнээс дээш (Macx86_64/Arch64)
  • Linux 64bit

🔧IDE

  • Eclipse 4.26 (2022-12)

JDK

  • Хөгжүүлэлтийн орчин: JDK 17 болон түүнээс дээш шаардлагатай
  • Ажиллуулах үйл ажиллагааны орчин: JDK 1.8

🌐WAS

  • Apache Tomcat 9

🗄️DBMS

  • Oracle, MySQL(MariaDB), CUBRID, MS-SQL, Tibero, PostgreSQL-ээс сонгох

Лавлах зүйл

Хөгжүүлэлтийн нөхцөл байдлаас хамаарч хөгжүүлэлтийн орчныг өөрчлөх боломжтой боловч энэхүү удирдамжид багтаагүй болно.

3.1.2 Техник хэрэгслийн шаардлага

🖥️

CPU

Хос цөмтэй болон түүнээс дээш зөвлөмжтэй

💾

Санах ой

8GB болон түүнээс дээш зөвлөмжтэй

💿

Диск

10GB болон түүнээс дээш чөлөөт зай зөвлөмжтэй

3.2 Хөгжүүлэлтийн орчин бүрдүүлэх (Windows үндсэн)

🔧3.2.1 Case1 - Шууд бүрдүүлэх

  1. eGovFrame хөгжүүлэлтийн орчин
    • eGovFrameDev-4.2.0-64bit татаж авах
  2. JDK суулгах
    • Windows: JDK 17 болон түүнээс дээш суулгах
    • MacOS, Linux: JDK 17 болон түүнээс дээш суулгах
  3. WAS суулгах
    • Apache Tomcat 9.x татаж авах
  4. DBMS суулгах
    • Oracle / MySQL(MariaDB) / CUBRID / MS-SQL / Tibero
    • Төсөлд ашиглагдах DataBase-г урьдчилан өгөгдсөн CMS DB Scheme + data ашиглан суулгана.
    • DB серверийн бүтээн байгуулалтын тайлбарыг энэхүү гарын авлагад өгөхгүй.
  5. HONGIKINGAN CMS эх код + DB Scheme + DB өгөгдөл

📦3.2.2 Case2 - CMS багцаар бүрдүүлэх (энэхүү гарын авлагад явуулах)

1. HONGIKINGAN CMS хөгжүүлэгчийн багц (H-CMS-2.2.zip) бэлтгэх

H-CMS-2.2.zip файлын бүрдэл:

  • eclipse: eGovFrame хөгжүүлэлтийн орчин, eGovFrameDev-4.2.0-64bit
  • maven: Repository + settings.xml
  • util: Tomcat9 + OpenJDK-1.8, JDK17 (хөгжүүлэлтийн орчин ажиллуулах зориулалт)
  • workspace: HONGIKINGAN CMS эх код
  • DB: Scheme + өгөгдөл
  • DOC: Удирдамжийн баримт бичиг, хүснэгтийн тодорхойлолт, операторын гарын авлага

2. DBMS суулгах

  • Oracle / MySQL(MariaDB) / CUBRID / MS-SQL / Tibero / PostgreSQL
  • Төсөлд ашиглагдах DataBase-г урьдчилан өгөгдсөн CMS DB Scheme + data ашиглан суулгана.
  • DB серверийн бүтээн байгуулалтын тайлбарыг энэхүү гарын авлагад өгөхгүй.

3. "D:" драйвын волюм байгаа хөгжүүлэгчийн PC бэлтгэх

Суулгах журам:

  1. HONGIKINGAN CMS багцын файлыг D: драйвт задлах
    • Задлах үед CMS-ийн зам нь "D:\H-CMS-2.2" болно.
    • (D:\H-CMS-2.2\H-CMS-2.2 гэх мэт бүтэц болохгүй байхад анхаарна уу)
  2. "D:\H-CMS-2.2\Humanframe.lnk (товчлол)" дүрс дээр дарж CMS-г ажиллуулах
  3. D драйв байхгүй тохиолдолд C драйвт задалсны дараа гол тохиргооны файлын замыг засах

3.3 Хөгжүүлэлтийн орчин бүрдүүлэх дэлгэрэнгүй журам

3.3.1 JDK суулгах (заавал биш - багцад багтсан)

1. JDK татаж авах

2. Орчны хувьсагч тохируулах

3.3.2 Eclipse ажиллуулах

1. Eclipse ажиллуулах

3. Maven тохиргоо

3.3.3 Өгөгдлийн сангийн тохиргоо

1. Өгөгдлийн сан суулгах

2. Схем болон өгөгдөл импорт хийх

3. Өгөгдлийн сангийн холболтын тохиргоо

JNDI тохиргоо:

CMS дотор ашиглаж буй үндсэн JNDI нэр нь "cmsdb" юм. Холбогдох тохиргоог context-datasource.xml-ээс шалгаж, өөрчлөх боломжтой.

Tomcat-ийн context.xml тохиргооны жишээ (CUBRID)
<Resource name="jdbc/cmsdb"
    auth="Container"
    type="javax.sql.DataSource"
    maxTotal="20"
    maxIdle="10"
    maxWaitMillis="-1"
    validationQuery="select 1"
    testOnBorrow="false"
    poolPreparedStatements="true"
    username="cmsuser"
    password="cmspassword"
    driverClassName="cubrid.jdbc.driver.CUBRIDDriver"
    url="jdbc:cubrid:localhost:33000:cmsdb:::?charset=utf-8&zeroDateTimeBehavior=round"/>
            
Tomcat-ийн context.xml тохиргооны жишээ (MySQL)
<Resource name="jdbc/cmsdb"
    auth="Container"
    type="javax.sql.DataSource"
    maxTotal="100"
    maxIdle="30"
    maxWaitMillis="10000"
    username="cmsuser"
    password="cmspassword"
    driverClassName="com.mysql.cj.jdbc.Driver"
    url="jdbc:mysql://localhost:3306/cmsdb?serverTimezone=Asia/Seoul&characterEncoding=UTF-8"/>
Tomcat-ийн context.xml тохиргооны жишээ (Oracle)
<Resource name="jdbc/cmsdb"
    auth="Container"
    type="javax.sql.DataSource"
    maxTotal="100"
    maxIdle="30"
    maxWaitMillis="10000"
    username="cmsuser"
    password="cmspassword"
    driverClassName="oracle.jdbc.driver.OracleDriver"
    url="jdbc:oracle:thin:@localhost:1521:XE"/>

3.3.4 WAS тохиргоо

1. Tomcat тохиргоо

2. Төслийн байршуулалтын тохиргоо

3.4 Гол тохиргооны файлын удирдамж

3.4.1 context-properties.xml

Аппликейшны гол шинж чанарын утгыг тодорхойлох файл юм.

Гол тохиргооны зүйлүүд:

Сонголтын тохиргооны зүйлүүд (худалдан авах эсвэл ашиглах үед):

context-properties.xml бодит тохиргооны жишээ
<!-- [бодит код] humanframe/spring/context-properties.xml -->
<beans profile="local">
   <bean name="propertiesService" class="org.egovframe.rte.fdl.property.impl.EgovPropertyServiceImpl" destroy-method="destroy">
      <property name="properties">
         <map>
            <!-- global set -->
            <entry key="GLOBAL_SITE_DOMAIN"     value="https://developers.yooncoms.com" />
            <entry key="WEB_DIR"                value="D:/H-CMS-2.2/workspace/humanframe/humanframe.web/src/main/webapp" />
            <entry key="FILE_UPLOAD_DIR"        value="/data" />
            <entry key="THEME_PATH" 	 		value="D:/H-CMS-2.2/workspace/humanframe/humanframe.web/src/main/webapp/WEB-INF/jsp/theme" />
            <entry key="SESSION_ADMIN"          value="HUMAN_ADMIN" />
            <entry key="SESSION_MEMBER"         value="HUMAN_MEMBER" />
            <entry key="EDITOR"                 value="SMART" />  <!-- SMART, EDITORPLUS -->
            <entry key="GLOBAL_FILEPREVIEW_AT"  value="Y" />
            <entry key="DAUM_API_KEY"			value="Какао API түлхүүр - JavaScript хувилбар" />
            <entry key="GOOGLE_API_KEY"      	value="Google API түлхүүр - JavaScript хувилбар"/>
            <entry key="RECAPTCHA_SITE_KEY"		value="Google сайтын түлхүүр" />
            <entry key="RECAPTCHA_SECRET_KEY"	value="Google нууц түлхүүр" />
         </map>
      </property>
   </bean>
</beans>
            

3.4.2 context-datasource.xml

Өгөгдлийн сангийн холболтын тохиргоог агуулсан файл юм.

context-datasource.xml гол тохиргооны зүйлүүд
<!-- [бодит код] humanframe/spring/context-datasource.xml -->
<beans profile="local">
   <bean id="cmsDataSource" class="net.sf.log4jdbc.Log4jdbcProxyDataSource">
      <constructor-arg ref="cmsDataSourceSpied" />
      <property name="logFormatter">
         <bean class="net.sf.log4jdbc.tools.Log4JdbcCustomFormatter">
            <property name="loggingType" value="MULTI_LINE" />
            <property name="sqlPrefix" value="### SQL : 		" />
         </bean>
      </property>
   </bean>
   <jee:jndi-lookup id="cmsDataSourceSpied" jndi-name="java:comp/env/jdbc/cmsdb" expected-type="javax.sql.DataSource" resource-ref="true" />
   <jdbc:initialize-database data-source="cmsDataSource" enabled="false">
      <jdbc:script location="classpath:database/schema.sql" encoding="utf-8" />
   </jdbc:initialize-database>
   <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
      <property name="dataSource" ref="cmsDataSource"/>
   </bean>
   <tx:annotation-driven transaction-manager="transactionManager"/>
</beans>
            

3.4.3 Бусад гол тохиргооны файлууд

human-resource.xml тохиргооны жишээ
<!-- [бодит код] humanframe/spring/human-resource.xml -->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd" >
<!-- humanframe системтэй холбоотой тохиргооны файл -->
<properties>
    <entry key="humanframe.dbType">cubrid</entry><!-- DB Type : altibase, cubrid, mysql, oracle, tibero -->
    <entry key="humanframe.admin.path">humanmst</entry>
</properties>
            

3.5 Профайлын тохиргоо (хөгжүүлэлт/тест/үйл ажиллагаа)

HONGIKINGAN CMS нь Spring профайлыг ашиглан хөгжүүлэлт, тест, үйл ажиллагааны орчинд тохирсон өөр өөр тохиргоог хэрэглэх боломжтой.

Гол профайлууд:

Spring профайл local тохиргоо хэрэглэх

  1. Eclipse серверийн зүйлүүдээс WEB серверийг давхар товшино.
  2. Open launch configuration зүйлийг товшино.
  3. Arguments таб товшино.
  4. VM arguments цонхонд -Dspring.profiles.active=local сонголтыг шалгана. Байхгүй бол нэмнэ.
  5. D драйв байхгүй тохиолдолд C драйвт зам тохируулсны дараа "Гол тохиргоо шалгах" зүйлийг лавлан замыг шууд засна.

3.6 Вэб эдиторын тохиргоо

HONGIKINGAN CMS нь вэб эдитороор SMART, EDITORPLUS-г дэмждэг бөгөөд үндсэндээ SMART ашигладаг. Дараах байдлаар тохируулж болно.

context-properties.xml эдиторын тохиргоо
<!-- [бодит код] humanframe/spring/context-properties.xml -->
<entry key="EDITOR">SMART</entry>  <!-- SMART , EDITORPLUS -->

<!--editor path -->
<entry key="UPLOAD_WEBEDITOR_DIR">C:/dev/workspace/humanframe/humanframe/humanframe.web/src/main/webapp/humanframe/global/kukudocs</entry>
<entry key="UPLOAD_WEBEDITOR_PATH">/humanframe/global/kukudocs</entry>
            
(сонголт) EDITORPLUS ашиглах үед ImagePath.jsp тохиргоо

webeditorplus ашиглах тохиолдолд ImagePath.jsp файлын замын тохиргоог шалгах шаардлагатай.
imagePhysicalPath хувьсагч нь бодит локал фолдерын замтай тохирч байгаа эсэхийг шалгаж, шаардлагатай бол засна. Ялангуяа байршуулагдах бодит серверийн үнэмлэхүй замыг шалгасны дараа тохиргоо хийх шаардлагатай.

<!-- [бодит код] humanframe.web/src/main/webapp/webeditorplus/websource/jsp/ImagePath.jsp -->
<%
String imagePhysicalPath = "";
String activeProfiles = System.getProperty("spring.profiles.active");
if("local".equalsIgnoreCase(activeProfiles) || "dev".equalsIgnoreCase(activeProfiles)) {
    imagePhysicalPath = "D:/H-CMS-2.2/workspace/humanframe";
} else {
    imagePhysicalPath = "/home/tomcat/webapps/humanframe";
}
%>
            

3.7 Хөгжүүлэлтийн орчин тохируулах үед анхаарах зүйлүүд

  1. JDK хувилбарын нийцтэй байдал
    • Хөгжүүлэх үед JDK 11 болон түүнээс дээш (Windows) эсвэл JDK 17 болон түүнээс дээш (MacOS, Linux) ашиглах
    • Ажиллуулах орчин нь JDK 1.8 үндсэн хөгжүүлэлт
  2. Өгөгдлийн сангийн тохиргоо
    • human-resource.xml файлын humanframe.dbType шинж чанарыг шалгах
    • Ашиглаж буй өгөгдлийн санд тохируулан тохируулах (cubrid, oracle, mysql, mssql, tibero, postgresql)
  3. Тэмдэгт кодлол
    • Төслийн кодлол: UTF-8
    • JSP файлын кодлол: UTF-8
    • Өгөгдлийн сантай холбогдох үед кодлол: UTF-8
  4. Санах ойн тохиргоо
    • Хөгжүүлэлтийн орчноос хамааран JVM санах ойн тохиргоог тохируулах
    • Үндсэн зөвлөмж: -Xms512m -Xmx1024m

3.8 Төслийг ажиллуулах болон анхны холболт

3.8.1 Төслийг ажиллуулах

1. Төслийг бүтээх

2. Сервер эхлүүлэх

3. Холболт шалгах

3.8.2 Удирдлагын нэвтрэх

🔑

Удирдлагын анхны дансны мэдээлэл

ID: cmsadmin / Нууц үг: 1111