1. 程式人生 > >apache james-2.3.2整合mysql5

apache james-2.3.2整合mysql5

預設情況下james-2.3.2的資料儲存在C:/james-2.3.2/apps/james/var中,使用起來可能相當的不便。不過james-2.3.2提供了多種使用者資訊儲存方案,如資料庫儲存,LDAP儲存等。

下面我們以儲存到mysql為例:

預設下使用者資訊儲存到C:/james-2.3.2/apps/james/var/users,通過修改配置檔案/apps/james/SAR-INF/config.xml,可以把使用者資訊儲存到資料庫中,配置方法如下:

1、下載mysql-connector-java-5.1.14.jar,拷貝到C:/james-2.3.2/lib中。

2、在mysql中建立資料庫mail,使用者名稱:root,密碼:root。

3、用編輯器開啟/apps/james/SAR-INF/config.xml,找到<users-store>,

(1)、註釋預設的文字儲存配置:

<repository name="LocalUsers" class="org.apache.james.userrepository.UsersFileRepository">
 <destination URL="file://var/users/"/>
 </repository>

(2)、開啟資料庫儲存配置:
<repository name="LocalUsers" class="org.apache.james.userrepository.JamesUsersJdbcRepository" destinationURL="db://maildb/users">
 <sqlFile>file://conf/sqlResources.xml</sqlFile>
 </repository>

(3)、配置資料庫連線資訊:
<data-source name="maildb" class="org.apache.james.util.dbcp.JdbcDataSource">
 <driver>org.gjt.mm.mysql.Driver</driver>
 <dburl>jdbc:mysql://127.0.0.1/mail?autoReconnect=true</dburl>
 <user>root</user>
 <password>root</password>
 <max>20</max>
 </data-source>

(4)、郵件內容儲存配置

註釋以下程式碼:

<inboxRepository>
 <repository destinationURL="file://var/mail/inboxes/" type="MAIL"/>
 </inboxRepository>

開啟以下程式碼:
<inboxRepository>
 <repository destinationURL="db://maildb/inbox/" type="MAIL"/>
 </inboxRepository>

(5)、配置spool:

註釋以下程式碼:

<spoolrepository destinationURL="file://var/mail/spool/" type="SPOOL"/>
開啟以下程式碼:
<spoolrepository destinationURL="db://maildb/spool/spool" type="SPOOL"/>

4、配置完成後啟動james,如果啟動正常,說明配置成功,如果不能正常啟動,回頭細細檢查以上步驟。

啟動成功後,資料庫裡多了三個表:inbox–郵件資訊,users–使用者資訊,spool–暫不清楚


5、傳送郵件,新增使用者併發送郵件,你的使用者資訊和郵件資訊將會儲存在資料庫中,具體操作請參照《apache james-2.3.2郵件伺服器的安裝