基于james3.0 的邮件系统(struts2.3.2 +spring3.0.1+jpa(hibernate3.6.5)实现)b/s模式--java邮件系统

本文主要是介绍基于james3.0 的邮件系统(struts2.3.2 +spring3.0.1+jpa(hibernate3.6.5)实现)b/s模式--java邮件系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

下载地址一

https://code.google.com/p/java-mail-system/downloads/list

下载地址二

 下载

客户端版http://blog.csdn.net/afgasdg/article/details/6359702

有需要的可以加入java邮件系统群162909241

                            java邮件系统群2246547643

源代码SVN地址:http://java-mail-system.googlecode.com/svn/trunk/

一、             环境配置

本系统需要的环境:apache james3.0邮件服务器、tomcat 服务器、Mysql5.1数据库

二、             具体环境配置

Mysql5.1 配置

         使用本系统前请将mysql编码设置成utf-8编码形式,mysql用户名 root,密码root。

另外在mysql数据库中新建一个数据库名称为email的数据库。(不需要建立任何数据表运行时自动生成数据表)

 

James邮件服务器配置:

         1、对于邮件服务器的配置请将,james3.0-conf.zip文件解压之后覆盖james邮件服务器的conf目录。

         2、对于不是联网的用户需要修改james邮件服务器以下配置:(原因:james邮件服务器启动时需要联网加载xml校验文件。)

将activemq-core-5.4.1.jar文件覆盖原来的lib目录下的(activemq-core-5.4.1.jar)文件。

         Tomcat配置

1、  本系统需要javamail1.4.3 jar包。

项目中已经将jar包导入到了构建路径中,但是如果采用的是J2EE5将使用J2EE5中默认的javaMail  jar包。这个我还没有找到解决办法。而J2EE6使用的javamail版本刚好是1.4.3。故请使用J2EE6

三、             系统说明

本系统是使用 struts2.2.3+ spring 3.0.1 + jpa(hibernate3.6.5)+ jquery1.6.2 + jquery uploadify实现的。

请将项目的编码格式设置为utf-8格式的编码(否则可能出现乱码)

将本系运行时请输入 http://localhost:8080/email/

另外强调一点 ,使用前请先注册一个管理员账号。管理员账号 admin 、密码 admin,用于找回密码自动发送邮件时使用。

注意:1、系统可能导入之后有错误,那是因为缺少serverlet、jstl、standard等jar包(注意版本要对应)

           2、运行时如果出现拦截器异常,请将struts2配置文件中的拦截器去掉

           3、在第一次收取邮件时由于“收件箱”没有被初始化,请在发送邮件之前点击收件箱,否则可能发送不成功

外网发送邮件邮件服务器设置:

       1、修改dnsservice.xml(域名解析设置)
             

[html]  view plain copy
  1. <dnsservice>  
  2.     <servers>  
  3.     <server>8.8.8.8</server><!-- 这个是域名解析服务器IP地址,需要修改成自己的域名解析服务器 -->  
  4.     </servers>  
  5.     <autodiscover>false</autodiscover>  
  6.     <authoritative>false</authoritative>  
  7.     <maxcachesize>50000</maxcachesize>  
  8. </dnsservice>  
         2、修改domainlist.xml

         

[html]  view plain copy
  1. <domainlists>  
  2.   <domainlist class="org.apache.james.domainlist.xml.XMLDomainList">  
  3.     <domainnames>  
  4.       <!-- 这个是自己的域名 -->  
  5.       <domainname>domain.cn</domainname>  
  6.     </domainnames>  
  7.     <autodetect>false</autodetect>  
  8.     <autodetectIP>false</autodetectIP>  
  9.   </domainlist>  
  10. </domainlists>  
          3、修改mailserver.xml文件

[html]  view plain copy
  1. <mailserver>  
  2.   <postmaster>Postmaster@domain.cn</postmaster>  
  3.   <enableVirtualHosting> false </enableVirtualHosting>       
  4.   <defaultDomain> domain.cn</defaultDomain>  
  5.   <!-- 服务器域名,如果不设置其他邮箱可能拒收 -->  
  6.   <helloName autodetect="true">domain.cn</helloName>  
  7. </mailserver>  


四、             系统运行效果


图1.1 登录页面

 

图1.2 登录成功页面

 

图1.3 注册页面

 

图1.4注册数据校验页面

 

图1.5 注册数据正确页面

 

图 1.6 注册页面填写详细信息

 

图1.7 注册成功页面

 

图1.8 找回密码第一步

 

图1.9 找回密码第二步

 


 

图2.1 写信页面

 

图2.2 收信页面

 

图2.3 通讯录页面

 

图2.4 新建联系人分组页面

 

图2.5 新建联系人页面

 

图2.6 联系人列表页面

 

图2.7 修改个人信息列表

 

 

图2.8 修改个人信息页面

 

图2.9 修改密码

 


 

图3.1 低级搜索列表


图3.1 高级搜索页面

 

图3.2附件批量上传

 

图3.3 附件批量上传情况


有需要的可以加入java邮件系统群:62909241

 下载

这篇关于基于james3.0 的邮件系统(struts2.3.2 +spring3.0.1+jpa(hibernate3.6.5)实现)b/s模式--java邮件系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/993507

相关文章

Java反射实现多属性去重与分组功能

《Java反射实现多属性去重与分组功能》在Java开发中,​​List是一种非常常用的数据结构,通常我们会遇到这样的问题:如何处理​​List​​​中的相同字段?无论是去重还是分组,合理的操作可以提高... 目录一、开发环境与基础组件准备1.环境配置:2. 代码结构说明:二、基础反射工具:BeanUtils

使用Python实现base64字符串与图片互转的详细步骤

《使用Python实现base64字符串与图片互转的详细步骤》要将一个Base64编码的字符串转换为图片文件并保存下来,可以使用Python的base64模块来实现,这一过程包括解码Base64字符串... 目录1. 图片编码为 Base64 字符串2. Base64 字符串解码为图片文件3. 示例使用注意

使用Python实现获取屏幕像素颜色值

《使用Python实现获取屏幕像素颜色值》这篇文章主要为大家详细介绍了如何使用Python实现获取屏幕像素颜色值,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、一个小工具,按住F10键,颜色值会跟着显示。完整代码import tkinter as tkimport pyau

在Java中将XLS转换为XLSX的实现方案

《在Java中将XLS转换为XLSX的实现方案》在本文中,我们将探讨传统ExcelXLS格式与现代XLSX格式的结构差异,并为Java开发者提供转换方案,通过了解底层原理、性能优势及实用工具,您将掌握... 目录为什么升级XLS到XLSX值得投入?实际转换过程解析推荐技术方案对比Apache POI实现编程

Java调用C#动态库的三种方法详解

《Java调用C#动态库的三种方法详解》在这个多语言编程的时代,Java和C#就像两位才华横溢的舞者,各自在不同的舞台上展现着独特的魅力,然而,当它们携手合作时,又会碰撞出怎样绚丽的火花呢?今天,我们... 目录方法1:C++/CLI搭建桥梁——Java ↔ C# 的“翻译官”步骤1:创建C#类库(.NET

Java中JSON格式反序列化为Map且保证存取顺序一致的问题

《Java中JSON格式反序列化为Map且保证存取顺序一致的问题》:本文主要介绍Java中JSON格式反序列化为Map且保证存取顺序一致的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未... 目录背景问题解决方法总结背景做项目涉及两个微服务之间传数据时,需要提供方将Map类型的数据序列化为co

Java Lambda表达式的使用详解

《JavaLambda表达式的使用详解》:本文主要介绍JavaLambda表达式的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、前言二、Lambda表达式概述1. 什么是Lambda表达式?三、Lambda表达式的语法规则1. 无参数的Lambda表

java中Optional的核心用法和最佳实践

《java中Optional的核心用法和最佳实践》Java8中Optional用于处理可能为null的值,减少空指针异常,:本文主要介绍java中Optional核心用法和最佳实践的相关资料,文中... 目录前言1. 创建 Optional 对象1.1 常规创建方式2. 访问 Optional 中的值2.1

Spring Boot 整合 Apache Flink 的详细过程

《SpringBoot整合ApacheFlink的详细过程》ApacheFlink是一个高性能的分布式流处理框架,而SpringBoot提供了快速构建企业级应用的能力,下面给大家介绍Spri... 目录Spring Boot 整合 Apache Flink 教程一、背景与目标二、环境准备三、创建项目 & 添

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解