<?xml version="1.0" encoding="UTF-8"?> <!-- Copyright 2004-2009 the Seasar Foundation and the Others. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <!DOCTYPE components PUBLIC "-//SEASAR2.1//DTD S2Container//EN" "http://www.seasar.org/dtd/components21.dtd"> <components namespace="jdbc"> <include path="jta.dicon"/> <include path="jdbc-extension.dicon"/> <component class="org.seasar.extension.jdbc.impl.BasicResultSetFactory"/> <!-- <component class="org.seasar.extension.jdbc.impl.OracleResultSetFactory"/> --> <component class="org.seasar.extension.jdbc.impl.ConfigurableStatementFactory"> <arg> <component class="org.seasar.extension.jdbc.impl.BasicStatementFactory"/> <!-- <component class="org.seasar.extension.jdbc.impl.BooleanToIntStatementFactory"/> --> </arg> <property name="fetchSize">100</property> <!-- <property name="maxRows">100</property> --> </component> <!-- for HSQLDB --> <!-- <component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "org.hsqldb.jdbcDriver" </property> <property name="URL"> "jdbc:hsqldb:hsql://localhost:9001" </property> <property name="user">"sa"</property> <property name="password">""</property> </component> --> <!-- for H2 --> <!-- <component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "org.h2.Driver" </property> <property name="URL"> "jdbc:h2:tcp://localhost:9092/demo" </property> <property name="user">"sa"</property> <property name="password">""</property> </component> --> <!-- for Derby --> <!-- <component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "org.apache.derby.jdbc.EmbeddedDriver" </property> <property name="URL"> "jdbc:derby:demo" </property> <property name="user">""</property> <property name="password">""</property> </component> --> <!-- for Oracle --> <!-- <component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "oracle.jdbc.driver.OracleDriver" </property> <property name="URL"> "jdbc:oracle:thin:@xxx:1521:xxx" </property> <property name="user">"xxx"</property> <property name="password">"xxx"</property> <initMethod name="addProperty"> <arg>"includeSynonyms"</arg> <arg>"true"</arg> </initMethod> </component> --> <!-- for PostgreSQL --> <!-- <component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "org.postgresql.Driver" </property> <property name="URL"> "jdbc:postgresql://localhost/TEST" </property> <property name="user">"xxxx"</property> <property name="password">"xxxx"</property> </component> --> <!-- MySQL - MySQL4.0以下ã§ãƒžãƒ«ãƒãƒã‚¤ãƒˆæ–‡å—を扱ã†å ´åˆã«ã¯ï¼ŒURL指定ã®å¾Œã«ï¼Œ 以下ã®æŽ¥ç¶šãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿ã‚’è¿½åŠ ã§æŒ‡å®šã—ã¦ãã ã•ã„. useUnicode=true characterEncoding=[MySQLã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã«å¯¾å¿œã—㟠Javaã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°å] 例:"jdbc:mysql://localhost:3306/test?useUnicode=true" + "&characterEncoding=Windows-31J" - MySQL5.0以é™ã§ï¼Œã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ãŒeucjpmsã®åˆ—を扱ã†å ´åˆã«ã¯ï¼Œ URL指定ã®å¾Œã«ï¼Œä»¥ä¸‹ã®æŽ¥ç¶šãƒ‘ãƒ©ãƒ¡ãƒ¼ã‚¿ã‚’è¿½åŠ ã§æŒ‡å®šã—ã¦ãã ã•ã„. characterEncoding=UTF-8ã¾ãŸã¯Windows-31J characterSetResults=UTF-8ã¾ãŸã¯Windows-31J 例:"jdbc:mysql://localhost:3306/test?characterEncoding=UTF-8" + "&characterSetResults=UTF-8" ã“ã®æŒ‡å®šã‚’ã—ãªã„å ´åˆï¼ŒJavaå´ã§UCS-2⇔EUC_JP_Solarisã®å¤‰æ›ãŒ è¡Œãªã‚れるãŸã‚,ユーザー定義外å—ãªã©ã®ä¸€éƒ¨ã®æ–‡å—ãŒåŒ–ã‘ã¾ã™ï¼Ž ã“ã®æŒ‡å®šã‚’ã™ã‚‹ã“ã¨ã§ï¼ŒMySQLå´ã§eucjpms⇔ucs2⇔utf8(cp932)㮠変æ›ãŒè¡Œãªã‚れ,Javaå´ã§UCS-2⇔UTF-8(Windows-31J)ã®å¤‰æ›ãŒ è¡Œãªã‚れるよã†ã«ãªã‚Šã¾ã™ï¼Žã“ã®çµæžœï¼Œæ–‡å—化ã‘を防ã’ã¾ã™ï¼Ž ãªãŠJIS X 0212(補助漢å—)を使用ã™ã‚‹å ´åˆã¯ï¼ŒWindows-31Jã§ã¯ãªã UTF-8を指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ï¼Ž - 上記以外ã®å ´åˆã¯ï¼Œmy.cnfã§default-character-setã®è¨å®šã‚’é©åˆ‡ã« (cp932ã‚„utf8ãªã©ï¼Žãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®latin1ã¯ä¸å¯)è¡Œãªã£ã¦ã„ã‚Œã°ï¼Œ æ–‡å—化ã‘ã¯é˜²ã’ã¾ã™ï¼Ž --> <!-- <component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "com.mysql.jdbc.Driver" </property> <property name="URL"> "jdbc:mysql://localhost:3306/test" </property> <property name="user">"xxx"</property> <property name="password">"xxx"</property> </component> --> <!-- for SQLServer --> <!-- <component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "net.sourceforge.jtds.jdbc.Driver" </property> <property name="URL"> "jdbc:jtds:sqlserver://localhost/TEST;instance=SQLEXPRESS" </property> <property name="user">"xxxx"</property> <property name="password">"xxxx"</property> </component> --> <component name="connectionPool" class="org.seasar.extension.dbcp.impl.ConnectionPoolImpl"> <property name="timeout">600</property> <property name="maxPoolSize">10</property> <property name="allowLocalTx">true</property> <destroyMethod name="close"/> </component> <component name="dataSource" class="org.seasar.extension.dbcp.impl.DataSourceImpl" /> <!-- from JNDI --> <!-- <component name="dataSource" class="javax.sql.DataSource"> @org.seasar.extension.j2ee.JndiResourceLocator@lookup("java:comp/env/jdbc/DataSource") </component> --> <!-- <component name="dataSource" class="org.seasar.extension.datasource.impl.SelectableDataSourceProxy"/> --> </components>