James详细配置(3)

关于 apache james 的入门 可以参考这篇文章  http://pcno1.iteye.com/blog/122524 。这里不多介绍怎么做开始的配置。

      本文介绍的是,怎么将apache james新增的用户查到mysql里面。

      首先你必须安装好mysql和apache james。在确保两个软件都没问题的情况下,先将mysql的驱动,拷贝到 james-2.3.2\lib 目录下。

      第二,启动mysql,在mysql里面新增一个叫mail的数据库。

      第三,修改 james-2.3.2\apps\james\SAR-INF 目录下的config.xml 的配置文件。

//James默认将所增加的用户放在了file://var/users的目录下

把<users-store>下面的

      <repository name="LocalUsers" class="org.apache.james.userrepository.UsersFileRepository">

         <destination URL="file://var/users/"/>

      </repository>

     注释了,并且将

<repository name="LocalUsers" class="org.apache.james.userrepository.JamesUsersJdbcRepository"

destinationURL="db://maildb/users">
         <sqlFile>file://conf/sqlResources.xml</sqlFile>
      </repository>

      的注释去掉。

      因为上面的是存到文件,下面的是存到数据库。

      继续往下看在<database-connections> 里面 找到关于mysql 的链接代码,把注释去掉就行了!

      <data-source name="maildb" class="org.apache.james.util.dbcp.JdbcDataSource">

         <driver>com.mysql.jdbc.Driver</driver>

         <dburl>jdbc:mysql://localhost/mail?autoReconnect=true</dburl>

         <user>root</user>

         <password>root</password>

         <max>20</max>

      </data-source>



保存!重启james就可以插入到数据库。

然后telnet localhost 4555

adduser fengyun 123456

然后就会发现在mail数据库中多了一个user表,多了一条fengyun的记录

        当我们adduser test1 test1 之后发现,密码是加密的。怎么办呢?这个加密时不可逆的,所以我们必须用源文件下面找到它的加密方式,在源文件org.apache.james.userrepository.DefaultUser 有两个方法,一个是

       public boolean setPassword(String newPass) {

         try {

            hashedPassword = DigestUtil.digestString(newPass, algorithm);

            return true;

         } catch (NoSuchAlgorithmException nsae) {

            throw new RuntimeException("Security error: " + nsae);

         }

        }

  这个是保存的时候加密的,然后还有一个是 public boolean verifyPassword(String pass) {} 这个是校正密码的方法,有了它,我们就可以灵活增加james里面的用户了。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值