代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
Java
】
l?o?t?u?s?数?据?用?j?a?v?a?程?序?导?入?导?出
作者:
entry
/ 发布于
2014/7/25
/
821
public void run(String servername, String username, String password, String dbname, String viewname) { try { // 取得配置文件取得临时中专的文件目录.提交的数据到服务的名称 ,端口 ResourceBundle localizationResources = ResourceBundle .getBundle("ip"); // 临时目录 String temppath = localizationResources.getString("temppath"); // 端口 String port = localizationResources.getString("port"); // 应用名称 String webapp = localizationResources.getString("webapp"); // 文档数量 int rundocnum = 0; // 附件的文件数量 int filenum = 0; // 应用的域名 String dominoHost = servername;// "dev1"; // 数据操作的session Session session; // 通过 http 获取 IOR String strIOR = null; URL url = new URL("http://" + dominoHost + "/diiop_ior.txt"); InputStream in = url.openStream(); BufferedReader br = new BufferedReader(new InputStreamReader(in)); for (boolean bExit = false; !bExit;) { String line = br.readLine(); if (line == null) { bExit = true; } else { if (strIOR == null) strIOR = line; else strIOR = strIOR + line; if (strIOR.startsWith("IOR:")) bExit = true; } } br.close(); // System.out.println("strIOR - " + strIOR); session = NotesFactory.createSessionWithIOR(strIOR, username, password); // System.out.println("session" + session); // 如果这一行打印出来了,表示连接成功 // Database db = session.getDatabase(null, "zboa/gkxx.nsf"); // Database db = session.getDatabase(null, "zboa/scjyxx.nsf"); Database db = session.getDatabase(null, dbname); // String p = session.getPlatform(); // System.out.println("run Platform = " + p); // 开始执行的时间 long a = System.currentTimeMillis(); System.out.print("开始计时 "); /* * Vector vss= (Vector)db.getViews(); List vs=new ArrayList(); * for(int i=0;i<vss.size();i++){ // * vs.add(((View)vss.get(i)).getName()) ; System.out.println(((View) * vss.get(i)).getName()); } * * vss.clear(); System.out.print("getViews"+db.getViews().size()); * for(int i=0;i<2;i++){ * System.out.print("用时:"+(System.currentTimeMillis()-a)); View v = * (View) db.getView(vs.get(i).toString().trim()); */ View v = (View) db.getView(viewname);// 直接使用某个视图 // 当前视图的文档数量 int count = v.getAllEntries().getCount(); System.out.println("视图名称:" + v.getName()); System.out.print("别名:" + v.getAliases()); ViewNavigator nav = v.createViewNav(); ViewEntry entry = nav.getFirstDocument(); /** * 对视图包括的文档的循环查询并处理 */ for (int j = 0; j < count; j++) { rundocnum++; String title = ""; String user = ""; String body = ""; String key = ""; List filelist = new ArrayList(); System.out.print((j + 1) + "..."); System.out.println("标题" + entry.getDocument().getItemValueString("title")); title = entry.getDocument().getItemValueString("title"); String oldname = entry.getDocument().getAuthors().toString() .trim(); String newname = oldname.substring(oldname.indexOf("cn=") + 5, oldname.indexOf("/OU")); user = com.mdcl.bjcnc.information.util.UserInfoUtil .findUIDbyName(entry.getDocument().getAuthors() .toString().trim()); System.out.println("作者:" + user); body = entry.getDocument().getItemValueString("body"); System.out.println("正文:" + body); Enumeration items = entry.getDocument().getItems().elements(); // 删除上一个文档附件文件在本地的副本 if (!entry.getDocument().getItems().isEmpty()) { File f1 = new File(temppath); if (f1.isDirectory()) { for (int m = 0; m < f1.listFiles().length; m++) { System.out.print("删除文件" + f1.listFiles()[m].getAbsoluteFile() .getPath()); f1.listFiles()[m].getAbsoluteFile().delete(); } } // 对当前文档的附件生成副本并上传到服务器 while (items.hasMoreElements()) { Item item = (Item) items.nextElement(); if (item.getType() != Item.ATTACHMENT) { } else { filenum++; System.out.println("附件:" + entry.getDocument().getAttachment( item.getValueString()).getName()); EmbeddedObject EObjAttachment = entry.getDocument() .getAttachment(item.getValueString()); InputStream is = EObjAttachment.getInputStream(); long fileSize = is.available(); if (fileSize > 0) { byte[] buf = new byte[(int) fileSize]; is.read(buf); File f = new File(temppath + "/" + EObjAttachment.getSource()); FileOutputStream fos = new FileOutputStream(f); fos.write(buf); fos.flush(); fos.close(); System.out.print("创建文件" + f.getAbsolutePath()); filelist.add(f); } } } // 提交数据到数据库 // 调用增加数据到数据库的方法1 返回一个key key = "0";// 此处增加数据到数据库 // 调用http post 的方式提交数据 if (filelist.size() > 0) { InetAddress addr = InetAddress.getLocalHost(); String sAddr = addr.toString(); // localhost/127.0.0.1 String sIP = sAddr.substring(sAddr.indexOf('/') + 1); if (!webapp.equals("")) { webapp = webapp + "/"; } PostMethod filePost = new PostMethod("http://" + sIP + ":" + port + webapp + "servlet/upload?key=" + key); System.out.println("http://" + sIP + ":" + port + webapp + "servlet/upload?key=" + key); try { Part[] parts = new Part[filelist.size()]; for (int i = 0; i < filelist.size(); i++) { parts[i] = new FilePart("hello" + i, new File( filelist.get(i).toString())); } filePost .setRequestEntity(new MultipartRequestEntity( parts, filePost.getParams())); HttpClient client = new HttpClient(); client.getHttpConnectionManager().getParams() .setConnectionTimeout(5000); int status = client.executeMethod(filePost); } catch (Exception e) { e.printStackTrace(); } } // 提交完成 // 每当处理完当前文档,必须把指针指向下一个文档地址 entry = nav.getNextDocument(); } } System.out.println("用时:" + (System.currentTimeMillis() - a)); System.out.println("doc num:" + rundocnum); System.out.println("file num:" + filenum); } catch (NotesException e) { e.printStackTrace(); } catch (Exception e1) { e1.printStackTrace(); } }
试试其它关键字
导?入?导?出
同语言下
.
List 切割成几份 工具类
.
一行一行读取txt的内容
.
Java PDF转换成图片并输出给前台展示
.
java 多线程框架
.
double类型如果小数点后为零则显示整数否则保留两位小
.
将图片转换为Base64字符串公共类抽取
.
sqlParser 处理SQL(增删改查) 替换schema 用于多租户
.
JAVA 月份中的第几周处理 1-7属于第一周 依次类推 29-
.
java计算两个经纬度之间的距离
.
输入时间参数计算年龄
可能有用的
.
C#实现的html内容截取
.
List 切割成几份 工具类
.
SQL查询 多列合并成一行用逗号隔开
.
一行一行读取txt的内容
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
Java PDF转换成图片并输出给前台展示
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
entry
贡献的其它代码
(
10
)
.
生成WEB页面报表
.
Lotus中导出到EXCEL
.
l?o?t?u?s?数?据?用?j?a?v?a?程?序?导?入?导?出
.
通过web界面注册domino新用户
.
在linux下用脚本自动备份domino
.
notes数据导出到excel
.
把数字转化成中文大写
.
使用lotusscript发送mime格式邮件
.
lotus notes 数据库中附件的批量导出
.
C/S模式下导出当前VIEW的数据到EXCEL
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3