默然说话

一个异想天开的人做着异想天开的梦

默然
默然的公告
如果要联系我,希望能说明来意,谢谢.

点击这里给我发消息

Google

最近评论
peigen:又~~~~为什么是又呢???
dcopperfield:顶下
gaoyunpeng:无意中进入到这个博客,很快就被里面的内容所吸引,感觉很有意思,不知道为什么会有这样的感觉,或许只是一种直觉上的吸引吧,一直在看博客里的文章,觉得很不错,天天等更新,哈哈,终于看到新的文章啦~
我会一直关注的~
mouyong:谢谢你的鼓励,我会更加努力。
了祝愿你实现自己的理想,达成自己的目标
wsspy007:牟老师,我发现你是我见过最好的老师了,为学生考虑最多,一切为学生着想,不知道牟老师还记得我么,张伟(无名小辈肯定你是忘记了),第一期跟杨大宇他们在一个班的,补考两次都没有及格,我现在不在昆明了,在胜利油田,这里一切都很好,一个月的薪金能顶得上昆明3-5个月的薪水,但是我不喜欢这份工作,钱固然多,但是从学校出来步入社会以后才发现,我还是应该走软件开发这条路,现在每天我只睡4-6个小时,工作12……
文章分类
收藏
    相册
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 教案:开发基于JSPServletJavaBean的网上交易系统-第9章 Web服务收藏

    新一篇: SQL注入种类及防范 | 旧一篇: 教案:《开发基于JSPServletJavaBean的网上交易系统》第8章 View层开发:EL和JSTL

     
    授课教师:牟勇
    课时:100分钟
     
    本章技能目标
    n掌握Web服务的基本概念
    n掌握Web服务的工作原理
    n掌握创建和调用Web服务
    本章重点
    nWeb服务的工作原理
    nWeb服务的创建和调用
    本章难点
    nWeb服务的创建和调用
    本章工作任务
    n升级E-Book电子书店系统
    l   整章授课思路
    n本章依次讲解4个问题:软件发展趋势,Web服务的建立与发布,建立客户端程序调用服务,程序的测试。
    n软件发展趋势:在开发程序时,会重复开发一些相同或类似的功能模块,在这种情况下,把不同程序中共有的功能模块单独发布为Web服务,以供其他程序调用。
    nWeb服务的建立与发布:为了实现客户端程序的调用,首先要创建和发布这个Web服务。
    n建立客户程序调用服务:Web服务已经建立与发布,客户端程序通过Web服务提供的描述信息,编写代码以访问该服务。
    n程序的测试:在程序开发的过程中,为了检测所编写的功能或模块是否符合功能,要进行测试。
    EL的基本语法是什么?
    JSTL的核心标签库中包含哪些标签?
    如何使用JSTL的SQL标签进行数据查询和显示?
    为什么要在JSP中使用EL和JSTL?
    什么是Web服务?
    为什么要使用Web服务?
    如何进行Web服务的开发?
    问题1如果想在网页上显示天气预报怎么做?
    问题2:购物网站的电子支付(安付通、支付宝等) ,是如何实现的?
    答案:自己实现不可能,因为天气预报的数据只能通过气象局获得,而气象局不可能照你的程序的要求给你数据,同样,电子支付由银行提供,银行也同样不可能按你的程序来提供数据。
    解决方案:由气象局来实现接口,我的程序来完成对接口的调用,同样的,由银行来实现接口,由我的程序来完成对接口的调用。
    新的问题:气象局或者银行的程序是使用C语言完成的,而你的程序却是使用的Java语言,如何实现Java语言的程序调用C语言的程序呢?
    解决议案:使用一个中间程序,完成数据的转换。这个中间程序之一就是Web服务。
    什么是WEB服务
    Web Service是为了实现“基于Web无缝集成”的全新概念
    实现不同系统间的相互调用(语言无关、平台无关)
    Web Service的定义:
    Web Service是一个应用程序,是能够用编程的方法通过Web调用来实现某个功能的应用程序
    Web Service支持Web协议,如:HTTP,TCP/IP,SMTP等
    Web Service的标准
    XML数据格式
    SOAP (简单对象访问协议)
    WSDL(Web Service描述语言)
    Web服务的建立与发布[30分钟]
    Web Service的开发基本步骤
    建立服务并发布
    建立客户程序,调用服务
    建立服务并发布
    什么是XFire
    XFire是一个免费的开源SOAP框架
    XFire简化了Web Service的开发
    XFire和其它类库
    添加XFire  
    为Web工程添加XFire-all-1.2.6.jar包
    为Web工程添加xalan.jar包
    创建服务接口和实现类

    public class ProcessCreditCard implements IProcessCredit {
    public int creditProcess(String creditCard, double total) {
    int result = 0;
    Connection con = null;
    PreparedStatement pStatement = null;
    try {
    con = ConnectionManager.getConnction();
    String strSql = "update Account "
    + "set balance = balance - ? where creditcard = ?";
    result = pStatement.executeUpdate();
    } catch (SQLException sqlE) {   sqlE.printStackTrace();   } 
    return result;
    }
    }

    Web Service的发布—services.xml的配置

    <beans xmlns="http://xfire.codehaus.org/config/1.0">
    <service>
           <name>CreditCard</name>
           <namespace>www.jbaptech.com.cn/CreditCard</namespace> 
           <serviceClass>
                  y2javaee.sg.ch09.IProcessCredit
           </serviceClass>
           <implementationClass>
                  y2javaee.sg.ch09.ProcessCreditCard
           </implementationClass>
    </service>
    </beans>

    教员应详细说明标记的含义
    web.xml中配置XFire的Servlet及其配置

    <servlet>
            <servlet-name>XFireServlet</servlet-name>
            <servlet-class>
           org.codehaus.xfire.transport.http.XFireConfigurableServlet
            </servlet-class>
     </servlet>
     <servlet-mapping>
            <servlet-name>XFireServlet</servlet-name>
            <url-pattern>/services/*</url-pattern>
     </servlet-mapping>
     <servlet-mapping>
             <servlet-name>XFireServlet</servlet-name>
             <url-pattern>/servlet/XFireServlet/*</url-pattern>
     </servlet-mapping>

    教员应详细说明标记的含义
    服务发布测试
    教员应现场演示服务发布测试。
     
     
    建立客户程序,调用服务
    建立客户端Servlet程序

    Service serviceModel = new ObjectServiceFactory()
                                .create(IProcessCredit.class);
    XFire xfire = XFireFactory.newInstance().getXFire();
    XFireProxyFactory factory = new XFireProxyFactory(xfire);
     
    String serviceUrl = "http://localhost:8080/store/services/CreditCard";
     
    IProcessCredit client = null;
    try {
          client = (IProcessCredit) factory.create(serviceModel, serviceUrl);
    } catch (MalformedURLException e) {        }
    int serviceResponse = 0;
    try {
          serviceResponse = client.creditProcess(creditcard, total);
    } catch (Exception e) {        }

    教员应详细说明以上代码。
    详细说明以上代码之后,教员应演示完整版的E-Book。
    小结:
    说明创建和发布Web服务的步骤 
    写出客户端应用程序访问Web服务的关键代码
    单元测试
    单元测试就是测试程序员依据所设想的方式开发出来的程序是否产生了预期的结果
    测试工具
    JUnit是一个Java测试框架,用于编写和运行可重复的测试
    JUnit的安装
    在项目中导入JUnit4.jar包(教员应演示JUnit包的安装)
    JUnit规范
    测试类必须继承TestCase或其子类
    待测方法名称以testXXX()形式命名
    JUnit测试类

    public class CreditcardServiceTest extends AbstractXFireAegisTest {
           public void testCreditProcess() throws Exception {
               Service serviceModel = new ObjectServiceFactory().create(IProcessCredit.class);
              XFire xfire = XFireFactory.newInstance().getXFire();
              XFireProxyFactory factory = new XFireProxyFactory(xfire);
              String serviceUrl = "http://localhost:8080/store/services/CreditCard";
              IProcessCredit client = null;
             int serviceResponse = 0;
              try {
                   client = (IProcessCredit) factory.create(serviceModel, serviceUrl);
                   serviceResponse = client.creditProcess("12345678901", 200);
            assertEquals("程序运行错误",1,serviceResponse);
                } catch (Exception e) {        }
         }
    }

    教员应说明以上代码的含义,并现场演示。说明JUnit控制台显示的含义。
    监控SOAP信息[20分钟]
    Axis--TCPMonitor工具
    教员说明Axis-TCPMonitor工具的使用,并讲解各显示的含义。
    如何理解Web服务的优势?
    说明使用XFire创建和发布Web服务的步骤
    JUnit工具测试的规范有哪些?
     
     暂无
     暂无
     习题1:221页至222页选择题
     习题2:222页第1,2,3,4题
     习题3:预习在线培训

    发表于 @ 2008年05月27日 14:45:57|评论(loading...)|编辑

    新一篇: SQL注入种类及防范 | 旧一篇: 教案:《开发基于JSPServletJavaBean的网上交易系统》第8章 View层开发:EL和JSTL

    评论:没有评论。

    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © 默然