快速业务通道

在AIX Version 5.3中使用Java和PHP技术进行开发,第4部分

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-22
ns 中使用的这个方法类似于 getSurveyQuestion 方法,其中您可以遍历 SurveyQuestion 对象的集合,直到找到您所希望的问题,并返回信息。清单 15 显示了从选项列表到字符串数组的转换。

清单 15. 从选项列表到字符串数组的转换

public java.lang.String[] getSurveyQuestionOptions(int questionno)
                   throws java.rmi.RemoteException {
  this.initialize ();
  Integer counter = 0;
  for(Iterator<SurveyQuestion> i = this.survey.iterator();
    i.hasNext(); ) {
    SQWS.SurveyQuestion question = (SQWS.SurveyQuestion) i.next();
    if (counter == questionno) {
       return (String[]) 
      question.question_options.toArray(new String [0]);
    }
  }
  return (String[]) new String[0];
}

在循环中返回合适的信息,而不是结束循环。这意味着,如果您直到循环结束还没有找到 所需的内容,您必须返回一个空字符串。

setSurveyResponse 方法

进行填充所需要的最后 一个函数是将信息写入到数据库的函数。在本系列文章的第 3 部分中,曾经看到过这个特定方法的内容 。这个函数与将问卷调查回答写入到数据库的代码是相同的。这个过程非常简单:打开到数据库的连接, 然后提供参数作为要插入到 survey_response_detail 表中的值。

在这个方面,两个函数是相同 的,只是它们的名称不同。清单 16 显示了所需的代码。

清单 16. setSurveyResponse 方法

public java.lang.String setSurveyResponse(int surveyid,
                      int surveyquestion,
                      java.lang.String surveyvalue)
  throws java.rmi.RemoteException {
   PreparedStatement ps;
  Connection conn = null;
  try {
     Class.forName("com.mysql.jdbc.Driver");
    conn =
DriverManager.getConnection("jdbc:db2://localhost:50000/SURVEY",
                "survey","surveypw");
  } catch (Exception ex) {
    System.out.println("SQLException: " + ex.getMessage());
  }
  try {
    ps = conn.prepareStatement (
         "INSERT INTO survey_response_detail (responseid, question,
responsestring) VALUES(?,?,?) ");
    ps.setString (1,new Integer(surveyid).toString());
     ps.setString (2,new Integer(surveyquestion).toString());
    ps.setString (3,surveyvalue);
    int count = ps.executeUpdate ();
    ps.close ();
  } catch (Exception ex) {
    System.out.println("SQLException (adding question result): " + ex.getMessage());
  }
  return "Completed";
}

要完成支持后端 Web服务的方法,您只需要对代码进行 编译,复制这些类,并且部署该服务以使得 Web服务生效。

编译和部署服务

要编译您所创 建的代码,需要使用javac,并且需要指定包含 Web服务所需的类的Axis 库。让我们假设您已经正确地设 置了CLASSPATH。它应该与清单 17 中所示类似。

清单 17. 设置 CLASSPATH

CLASSPATH=axis.jar:log4j-1.2.8.jar:commons-logging-1.0.4.jar:commons- discovery-0.2.jar
:jaxrpc.jar:wsdl4j-1.5.1.jar:saaj.jar:.

将原始的 Survey*.java 源文件复制到构建目录。现在,您可以编译所有的类,包括原始 Survey类:$ javac *.java。

要进行部署,请将所创建

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号