Spring Framework กับการใช้งาน config file ด้วย PropertyPlaceholderConfigurer

บทความเกี่ยวกับ : Spring Framework กับการใช้งาน config file ด้วย PropertyPlaceholderConfigurer


บางงานผมจำเป็นต้องมีการเก็บค่าบางอย่างลงใน Properties file เพื่อเป็น Configuration ไว้ใช้งานในระบบ วิธีการของผมคือ ผมจะวางไฟล์ นี้ไว้ใน Class Path หรือ หัอง SRC จากนั้นทำกาน Load file นี้ขึ้นมาใช้ได้ด้วย PropertyPlaceholderConfigurer  ตามตัวอย่าง

    <!-- Spring properties file config -->
    <bean name="propertyPlaceholder"
        class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <list>
                <value>classpath*:db.properties</value>
            </list>
        </property>
    </bean>

จากตัวอย่าง ผมมีไฟล์ชื่อว่า db.properties วางไว้ใน class path สาเหตุที่วางไว้ในนี้เพราะจะได้ไม่ต้องระบุ Path ให้ยุ่งยากจากนั้นเวลาใช้ก็แค่เรียกใช้งานตาม tag ดังนี้

    <bean id="dataSource"
          class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close" > 
        <property name="driverClassName" value="${db.driverClassName}"/>
        <property name="url" value="${db.url}"/>
        <property name="username" value="${db.username}"/>
        <property name="password" value="${db.password}"/>
    </bean>

เห็นแบบนี้แล้วอาจสงสัยว่าในเมื่อใช้ Spring มันก็ config ใน XML อยู่แล้วทำไมจะต้องมาแยก config อีก จริงๆ มันก็ไม่จำเป็นหรอกครับแต่หลังจากที่ได้ทำงานมามันจะมีค่าบางค่าเท่านั้นที่เราชอบมาเปลี่ยนอยู่บ่อยๆ แต่ต้องมาควานหาใน XML Config มหาศาล ผมเลยแยกมันออกมาไว้ต่างหากเวลาจะแก้ก็เข้ามาแก้ง่ายๆ

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

Oracle date format จัด format date ให้แสดง พศ และ เดือน ภาษาไทยหรือตามภาษาที่เราเลือก

java -Xms , java -Xmx กำหมด memory ให้ JVM เพื่อป้องกันปัญหา Out of Memory

Java this กับ super การใช้งานคำสั่ง this กับ super ใน ภาษา Java