Java代理Lotus完成邮件解析,业务处理,搜索等大部分功能实现(第二弹df )

2018南京大学计算机夏令营机试 1. Count number of binary strings without consecutive 1’s Given a positive integer n(3≤n≤90), count all possible distinct binary strings of length n such that there are no consecutive 1's . Examples... 阅读详情

接着之前的Java代理Lotus邮件的讲。

在对邮件进行业务处理不多:标记(取消),回复,回复全部,转发,删除,搜索联系人,搜索邮件内容。



标记:

<span style="font-size:14px;">/**
 * 标记
 */
public static void setFollowUp(Document document, String followUpLevel) {

		try {
			if (document.hasItem("FollowUpStatus")) {
				document.replaceItemValue("FollowUpStatus", followUpLevel);
			} else {
				document.appendItemValue("FollowUpStatus", followUpLevel);
			}
			if (!document.hasItem("$Nopurge")) {
				document.appendItemValue("$Nopurge", "");
			}
			if (!document.hasItem("$Alarm")) {
				document.appendItemValue("$Alarm", "");
			}

			/**
			 * 保存
			 */
			if (document.save()) {
				/**
				 * 成功
				 */
			} else {
				/**
				 * 失败
				 */
			}

		} catch (NotesException e) {
			e.printStackTrace();
		} finally {
			/**
			 * 释放资源
			 */
			if (document != null) {
				try {
					document.recycle();
				} catch (NotesException e) {
					e.printStackTrace();
				}
			}
		}

}

	/**
	 * 取消标记
	 */
	public static void cancelFollowUp(Document document) {

		try {
			if (document.hasItem("FollowUpStatus")) {
				document.replaceItemValue("FollowUpStatus", "");
			}

			/**
			 * 保存
			 */
			if (document.save()) {
				/**
				 * 成功
				 */
			} else {
				/**
				 * 失败
				 */
			}

		} catch (NotesException e) {
			e.printStackTrace();
		} finally {
			/**
			 * 释放资源
			 */
			if (document != null) {
				try {
					document.recycle();
				} catch (NotesException e) {
					e.printStackTrace();
				}
			}
		}
	}
</span>
这里代码很少,因为还有一些问题我依旧不是很了解,但是这里也基本解决了取消和标记的功能(好像还有一个时间提醒)。


回复(全部):

<span style="font-size:14px;">// 创建新邮件
			replyDocument = database.createDocument();

			// 修改为回复邮件
			replyDocument.makeResponse(document);

			// 邮件头
			replyDocument.appendItemValue("form",
					MailContent.DOCUMENT_FORM_REPLY);</span>


回复邮件需要创建邮件并使用Reply的邮件类型而不是Memo,而第二个方法makeResponse方法将被回复的邮件作为参数放置进去是为了解决LotusWin端上的功能问题(提供一个回复邮件的点击,跳转至被回复的邮件里)。之后就可以以发送邮件的方式进行处理。


转发:

转发邮件和发送普通邮件差不多,Form为Memo类型。其他的随便怎么写,建议在邮件文本最后谈价邮件转发标识(转发邮件的基本内容,),让收件人知道这是转发的邮件就可以了


删除:

<span style="font-size:14px;">/**
 * 删除
 */
	public static boolean deleteMail(Document document) {
		boolean flag = false;

		try {
			document.remove(true);
		} catch (NotesException e) {
			e.printStackTrace();
		} finally {
			/**
			 * 释放资源
			 */
			if (document != null) {
				try {
					document.recycle();
				} catch (NotesException e) {
					e.printStackTrace();
				}
			}
			flag = true;
		}

		return flag;
	}
</span>


搜索联系人:

搜索联系人的时候选择的不是用户的数据而是names.nsf文件里面的数据

这里有几种方法:search(),ftSearch(),getAllDocumentsByKey()(至今没成功过)。

在此之前有一个注意的地方:官方文档中强调搜索的数据在5000以下,表示数据库上面的数据如果达到了5000则自动取消本次搜索,当然是不使用公式的前提下。在达到5000容量并且不适用公式搜索的话需要对服务器端的Nots.ini文件中添加两个常数来增加该搜索量,TEMP_INDEX_MAX_DOC 和 FT_MAX_SEARCH_RESULTS。

   使用公式则避免了上述的麻烦,搜索联系人首先要进入Database

database = session.getDatabase(session.getServerName(),”names.nsf“, false);
通过database的search方法来搜索所需要的内容,首先要知道公式,和数据库很像

form='person'&@Contains(Owner;'要搜索的名字')


搜索邮件内容:

内容则需要添加更多的可能:

form=‘memo’|form='reply'&@Contains(Subject;'搜索的内容')|.......................



最后还有发送Lotus邮件

手机移动端-纯js浏览器h5调用摄像头扫描识别解析 条形码+二维码 一、场景 h5原生js 浏览器端解决识别二维码条形码功能; 不借助Hbuilder.需要自己打包成APP,比如用Hbuilder打包,浏览器端项目h5无打包成app部署X不采用 不借助微信扫一扫,调用微信js-jdk有多麻烦,还要认证服务号,也不适用其它浏览器打开X不采用 二、思路 1.思路一:input(相机拍照)+条形码或二维码识别js支持库 通过h5-input[camera]调用相机进行拍照成图片,通过条形码等识别库解析出数据; <input @cha... 阅读详情

相关推荐

C++面向对象程序设计大作业:魔兽世界(三):开战

C++面向对象程序设计大作业:魔兽世界(三):开战问题描述问题分析代码 问题描述 问题来自于北京大学郭炜老师的C++慕课的大作业 魔兽世界的西面是红魔军的司令部,东面是蓝魔军的司令部。两个司令部之间是依次排列的若干城市,城市从西向东依次编号为1,2,3 … N ( N <= 20)。红魔军的司令部算作编号为0的城市,蓝魔军的司令部算作编号为N+1的城市。司令部有生命元,用于制造武士。 两军的司令部都会制造武士。武士一共有dragon 、ninja、iceman、lion、wolf 五种。每种武士都有

RedRum_1965的博客 4040

java lotus 表格_从Java中提取Lotus Notes Document的完整ACL

我正在尝试找到一种方法来保存特定Lotus notes文档的完整用户列表访问权限.我知道我可以从catalog.nsf获取数据库级ACL,但不能从文档级访问.此外,文档的作者字段 – 我相信 – 不会列出只读访问用户.有谁知道如何获取特定文档的每个用户的完整ACL?任何帮助表示赞赏,谢谢!编辑:拼写.解决方法:西蒙是对的.这是非平凡的.虽然我会跳过他关于阅读表格的建议,但它仍然是非平凡的.即使根据...

weixin_42172972的博客 228

FPGA编译加速实战:6大可落地的Vivado优化策略

FPGA编译本质上是NP-hard约束满足问题求解,而非传统软件编译;Vivado作为时序驱动的硬件实现工具链,其耗时瓶颈集中在Implementation阶段的布局布线(PnR)与逻辑优化。理解这一原理,才能跳出‘加线程’‘升版本’等表面优化,转向精准时序约束、增量编译、物理锚点控制、IP配置精简等工程级干预。这些技术手段直接作用于Vivado的Tcl执行流与底层求解空间,显著压缩搜索范围、减少无效迭代——尤其适用于Zynq/UltraScale等中大型项目(LUT > 80K、多时钟域、DDR/PCIe

weixin_34226182的博客 414

java 发送notes_关于Java程序调用Lotus Notes邮件服务发送邮件的实现(三补充)

关于Java程序调用Lotus Notes邮件服务发送邮件的实现(三补充)程序运行前,还需要注册用户,建立配置文件等操作:1注册用户1. 注册notes 系统用户(假设用户登录名称为:kk/jhh),并使其拥有发送邮件的权限。2. 获取是服务器上 Domino Directory 中该用户KK的 Person 文档BASIC选项卡中的用户名(kk/jhh,也是KK用户的Notes客户端登录名)3....

weixin_33478634的博客 446

基于ABCDRez的激光谐振腔设计与热透镜效应仿真实践

本文详细介绍了如何利用ABCDRez代码包进行激光谐振腔设计与热透镜效应仿真。通过ABCD矩阵理论和高斯光束q参数,该工具能有效模拟热透镜动态变化对腔稳定性的影响,指导腔型优化与热补偿设计,是固体激光器预研与调试的高效辅助手段。

weixin_29093017的博客 290

HyperMesh二次开发实战:自动化Comp与材料属性批量绑定

本文详细介绍了HyperMesh二次开发中自动化Comp与材料属性批量绑定的实战技巧。通过TCL脚本实现批量创建属性卡、智能材料分配和异常处理,大幅提升前处理效率,适用于汽车、航空航天等领域的复杂模型处理。

weixin_29214691的博客 693

综合使用JavaScript、LotusScript Agent和Formula的技巧1

综合使用JavaScript、LotusScript Agent和Formula的技巧一 概述在使用 Designer开发B/S模式的应用时,JavaScript、LotusScript和Formula是我们主要用到的三种开发语言。它们在各自的位置都有着很强劲的优势。1. JavaScript因为只能取得浏览器端的数据,不能访问Notes DOM;所以,主要用在浏览器端的数据验证、信息提示

春天来了的专栏 5576

TCP Reno/CUBIC 拥塞控制算法对比:从 Tahoe 到 BBR 的 4 种核心策略演进

本文深入解析了TCP拥塞控制算法的演进历程,从经典的Tahoe、Reno到现代的CUBIC和BBR,详细对比了4种核心策略的实现机制与性能差异。通过分析拥塞窗口、流量控制等关键技术,揭示了不同算法在高带宽延迟网络中的优化方向,为网络协议栈优化提供理论依据和实践指导。

weixin_33725239的博客 442

lotus notes java_Lotus Notes邮件开发——JAVA(2) | 学步园

利用Notes的JAVA api发送邮件(代码片段)最近要编写一个利用Notes自动发送邮件的程序,研究一天终于OK了``在这里跟大家分享代码import lotus.domino.AgentBase;import lotus.domino.NotesException;import lotus.domino.NotesFactory;import lotus.domino.Session;pub...

weixin_34790159的博客 451

【导航理论&实战篇】四足机器人弹簧倒立摆(SLIP)动力学模型

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!本文先对四足机器人动力学模型-VMC、SLIP和浮动机体模型做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章四足机器人弹簧加载倒立摆(SLIP)动力学模型是一种用于描述和分析四足机器人在运动过程中动态特性的理论模型。这种模型将四足机器人的腿部简化为弹簧,而机器人的身体则被视为一个倒立摆,这样的抽象使得研究者能够更容易地分析和控制机器人的运动。提示:以下是本篇文章正文内容。

qq_35635374的博客 806

深入浅出:大型语言模型(LLM)的全面解读

在当今的数字化时代,人工智能技术已经成为各行各业的核心驱动力之一。而在人工智能的领域中,大型语言模型(LLM)作为一种引人瞩目的技术,正在以其强大的语言理解和生成能力引领着一场革命。本文旨在深入浅出地解读大型语言模型,探讨其背后的原理、技术突破、应用场景以及未来发展趋势。

fudaihb的博客 10万+

lotus 基本开发功能总结(三)

///////怎样使用公式取得视图中符合条件的列server:=@Subset(@DbName,1)database:=@Subset(@DbName,-1)@DbColumn( class : cache ; server : database ; view ; columnNumber )  ///返回指定的列@DbLookup( class : cache ; server : da

RodJohnsonDoctor的专栏 1754

到底什么是指令集?什么是微架构?他们是什么关系?

指令集、处理器架构、芯片厂商、ARM、x86,其间关系还在迷糊吗?一文迅速理清!!

车载系统攻城狮 7814

在 IBM Lotus Domino Designer 中使用 Java 构建应用程序

转自http://www.ibm.com/developerworks/cn/lotus/d-ls-javaapps/ 简介 对于 IBM Lotus Notes 应用程序开发人员来说,LotusScript. 和 Lotu...

cuinaozun7188的博客 854

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Java代理Lotus完成邮件解析,业务处理,搜索等大部分功能实现

将近半个月的时间研究,终于完成了如题所示的功能,从无到有的整个过程让我惊心动魄!!! 源代码: 由于代码众多,所以......我也无能为力。 使用Java代理来接受Lotus数据所有的数据都是以XML文件来传递,所以数据量会很大。并且有些功能需要添加自定义节点来完成(如已读邮件或未读邮件)。 首先要获得邮件就需要连通Domino服务器,两个方法:使用IOR地址,去该地址

羊羊的学习旅程 2388

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Lotus Domino Java代理邮件最终

这是之前Lotus邮箱做Java代理最后一帖了,因为这方面确实研究的不是很透彻。 在研究Lotus邮件结构时发现其内部有很多东西,附件,图片,表格等等。因为这些就意味着程序员们需要解析这些东西。邮件最核心的位置大概就是富文本域了,邮件体就在这个位置,但是在解析时却不是这么简单的,在IBM给的API接口中需要多个类共同操作富文本域,对其进行解析。 这里有篇帖子讲得很详细:http://w

羊羊的学习旅程 930

有关search及ftsearch的一点总结

searchFormula$ = {Form = "formname" & starttime>"开始时间" & endtime<"结束时间"}Set collection = db.Search(searchFormula$, dateTime,0)Set doc=collection.getfirstdocumentWhile Not(doc ...

weixin_30472035的博客 421

NotesView.GetAllDocumentsbyKey 与 NotesView.GetAllEntriesbyKey的区别

原来NotesView.GetAllEntriesbyKey得到的NotesviewEntryCollection是可以按View的设计排序的。而NotesView.GetAllDocumentsbyKey 得到的NotesDocumentCollection是没有排序的。但是不明白的是为什么NotesDocumentCollection类还包括了IsSort属性?作用是??

jane007123的专栏 1918

配置Lotus Domino集群视频详解

 IBM Lotus Domino Server 有个最重要的高可用特新就是集群,它对于任何使用 Domino 服务器的组织,让用户能够持续访问它们的数据库,保证业务不间断运行。下面通过两个视频来学习如何设置集群.        ...

weixin_33901843的博客 246

Lotus类和函数

Notes类 Notes 定义的 LotusScript 类允许您在两个级别上访问 Notes 的结构: 数据库(后端)类允许您访问命名的数据库、视图、文档和其他 Notes 对象。工作站和服务器的用户都可以运行访问数据库对象的 Script。 UI(前端)类允许您访问用户当前正在使用的对象。只有工作站用户才能运行访问 UI 对象的 Script 。 下列表格概述 Notes 中定义的 L

820

答复文档的判断和创建

Sub Initialize()  On Error GoTo a  '判断当前数据库库中的一条文档是否有答复文档,如果没有则创建一条。  Dim session As New NotesSession  Dim db As NotesDatabase  Set db = session.Currentdatabase  Dim doc As NotesDocument  Set d

614

Java拆离Lotus Notes Document的附件

RichTextItem body = (RichTextItem) doc.getFirstItem("Body"); if (body != null) { Vector v = body.getEmbeddedObjects(); if (v != null) { logger.debug("附件个数: " + v.size

helloworld的专栏 4499

lotus邮件检索得解决方案

lotus自带检索优缺点:优点: 1 自定义检索界面      2 可定义得搜索条件缺点:1 不能对附件内容索引  等该方案应用最新得java技术,对lotus邮件进行全新得索引处理,对邮件内容 附件内容等索引并在加亮显示,目前正在开发中

叮叮咚咚 1406
上一篇: Java代理Lotus完成邮件解析,业务处理,搜索等大部分功能实现
下一篇: Android自定义控件的刷新方法选择
羊羊爱代码
博客等级 码龄11年 8粉丝 28原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值