《计算概论》课程 第十九讲 C 程序设计语言应用

Size: px
Start display at page:

Download "《计算概论》课程 第十九讲 C 程序设计语言应用"

Transcription

1 Java 高级技术 课程 Java EE (3) 李戈 北京大学信息科学技术学院软件研究所 2009 年 5 月 30 日

2 Java EE 服务器和容器

3 Enterprise Bean What Is an Enterprise Bean? An enterprise bean is a server-side component that encapsulates the business logic of an application. Characteristic portable extendable simple

4 EJB2.X 定义三种类型 EJB EJB 2.X Session Bean 对应用的业务逻辑的封装 ; Entity Bean 对企业数据访问的封装 ; Message-Driven Bean 进行异步消息通信的封装 ;

5 Session Bean Session Bean 根据在会话过程中是否保存客户端信息 ; Stateful Session Bean 可以保存客户端的状态, 客户端可以在多次访问之间可以共享状态 ; Stateless Session Bean 不保存客户端状态 客户端在调用无状态会话 Bean 时通过参数传递所有需要的信息 ;

6 Message-Driven Bean Message-Driven Bean is an enterprise bean that allows Java EE applications to process messages asynchronously. It normally acts as a JMS message listener, which is similar to an event listener except that it receives JMS messages instead of events. The messages can be sent by any Java EE component; an application client, another enterprise bean, or a web component; or by a JMS application or system that does not use Java EE technology. The most visible difference between message-driven beans and session beans is that clients do not access message-driven beans through interfaces.

7 会话 Bean 的组成 编写一个会话 Bean 需要提供如下文件 : Bean 类 ( 完成所有处理过程 ) 需要实现 javax.ejb.sessionbean 接口 ; 实现 Bean 类中包含的所有业务方法 ; 实现 ejbcreate 方法 ( 创建 Bean 实例时调用 ) 实现 ejbactive,ejbpassivate 等生命周期方法 ; 配置描述器 (ejb-jar.xml 文件 ) 描述 EJB 由哪些文件组成, 对服务器有何要求 ; 与特定服务器相关的信息 weblogic-ejb-jar.xml

8 会话 Bean 的组成 供远程访问的接口 远程客户端通过两个接口访问 EJB 业务接口继承 javax.ejb.ejbobject 接口 home 接口继承 javax.ejb.ejbhome 接口 供本地访问的接口 本地客户端通过两个接口访问 EJB 本地业务接口继承 javax.ejb.ejblocalobject 本地 Home 接口继承 javax.ejb.ejblocalhome

9 消息驱动 Bean 消息驱动 Bean Bean 类 需要实现 javax.ejb.messagedrivenbean 接口 ; 需要实现 javax.jms.messagelistener 接口 ; 实现消息接收方法 onmessage 方法 ; 为什么没有本地 / 远程访问接口 主要是作为消息的监听者, 没有相应客户端

10 对 EJB 的访问 访问 EJB 的客户端 Applet Java Application JSP Servlet EJB EJB 的管理方式 EJB 对象由 home 对象创建 ; home 对象被绑定到 JNDI 树 ; EJB 的访问流程 创建上下文 创建一个从应用程序到 JNDI 树的连接 ; 在上下文环境中查找 home 对象, 并获得其引用 ; 调用 home 对象的 create 方法 创建 EJB 对象并获得 EJB 对象的引用 ; 调用 EJB 对象的业务方法 EJB 对象调用 Bean 实例的方法并将执行结果返回给客户端 ;

11 会话 Bean 的构成 Session Bean Bean 类 Bean 实例 EJBHome home 接口 home 对象 EJBObject remote 接口 EJB 对象 EJBLocalHome local home 接口 local home 对象 EJBLocalObject 服务器提供商提供 local remote 接口 Bean 作者提供 local EJB 对象 EJB 容器实现

12 package stateless.sessionbeans.java.ss.pku.edu.cn; import javax.ejb.sessionbean; import javax.ejb.sessioncontext; import javax.ejb.createexception; public class HelloWorldBean implements SessionBean { SessionContext sessioncontext; public void ejbcreate() throws CreateException { public void ejbremove( ) { public void ejbactivate( ) { public void ejbpassivate( ) { public void setsessioncontext(sessioncontext sessioncontext) { this.sessioncontext = sessioncontext; public String helloworld() { return "Hello World!";

13 package stateless.sessionbeans.java.ss.pku.edu.cn; import javax.ejb.ejbobject; import java.rmi.remoteexception; public interface HelloWorld extends EJBObject { public String helloworld() throws RemoteException;

14 package stateless.sessionbeans.java.ss.pku.edu.cn; import javax.ejb.ejbhome; import javax.ejb.createexception; import java.rmi.remoteexception; public interface HelloWorldHome extends EJBHome { public HelloWorld create() throws CreateException, RemoteException;

15 <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" " <ejb-jar> <display-name>hello</display-name> <enterprise-beans> <session> <display-name>helloworld</display-name> <ejb-name>helloworld</ejb-name> <home>stateless.sessionbeans.java.ss.pku.edu.cn.helloworldhome</home> <remote>stateless.sessionbeans.java.ss.pku.edu.cn.helloworld</remote> <ejb-class>stateless.sessionbeans.java.ss.pku.edu.cn.helloworldbean</ejb-class> <session-type>stateless</session-type> <transaction-type>container</transaction-type> </session> </enterprise-beans> <assembly-descriptor> <container-transaction> <method> <ejb-name>helloworld</ejb-name> <method-name>*</method-name> </method> <trans-attribute>required</trans-attribute> </container-transaction> </assembly-descriptor> </ejb-jar>

16 <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE weblogic-ejb-jar PUBLIC "-//BEA Systems, Inc.//DTD WebLogic EJB//EN" " <weblogic-ejb-jar> <weblogic-enterprise-bean> <ejb-name>helloworld</ejb-name> <jndi-name>helloworld</jndi-name> </weblogic-enterprise-bean> </weblogic-ejb-jar>

17 package stateless.sessionbeans.java.ss.pku.edu.cn; import javax.naming.*; import java.util.properties; import javax.rmi.portableremoteobject; import java.util.*; import javax.naming.*; public class HelloWorldTestClient1 extends Object { public static void main(string[] args) { Hashtable ht = new Hashtable(); ht.put(context.initial_context_factory,"weblogic.jndi.wlinitialcontextfac tory"); ht.put(context.provider_url,"t3://localhost:7001"); Context ctx; try {ctx = new InitialContext(ht); // 创建上下文环境 HelloWorldHome Home = (HelloWorldHome) ctx.lookup("helloworld"); // 查找 home 对象, 并得到 home 对象的引用 HelloWorld hello = Home.create(); // 调用 home 对象的 create 方法创建 ejb 对象, 得到 ejb 对象的引用 System.out.println(hello.helloWorld()); // 调用 ejb 对象的方法, 从而调用 Bean 实例的方法 hello.remove(); catch(exception e) {System.out.println(e.toString());

18 Java 语言元注释的使用 EJB3 的新特性 削减开发者需要实现的接口的数量 ; 开发者不再需要提供部署描述符 ; 所有配置信息利用源代码中的元注释表达 ; 例如 : 对于 stateless bean, EJB2.x 中需要实现 javax.ejb.sessionbean, 并在配置描述器中声明这个 Session 的类型是 stateless EJB3 即可

19 EJB3 的新特性 支持 EJB 实现的的默认设置 放弃对共有程序的重复, 使开发者专注于业务逻辑的实现 例如 EJB2.x 中,SessionBean 的 Bean 类不管是否使用生命周期回调方法 ( 如 ejbpassivate, ejbactivate 等 ), 都必须在 Bean 类中定义 ; EJB3 中, 只需要实现特定的业务逻辑 ;

20 简化了对环境资源的访问 EJB3 的新特性 EJB2.x ctx = new InitialContext(ht); HelloWorldHome Home = (HelloWorldHome) ctx.lookup("helloworld"); HelloWorld hello = Home.create(); System.out.println(hello.helloWorld()); hello.remove(); private static PersonalRevenue personalrevenue; personalrevenue.getpersonalrevenue(3000, 1600);

21 EJB3 的新特性 降低了对 SessionBean 的 EJB 接口的要求 EJB2.x 中需要为 Bean 编写专门的 EJBObject 接口或 EJBLocalObject 接口 ;EJB3 则不需要 ; 消除了对 SessioinBean 的 Home 接口的要求 EJB3 不再要求为 Bean 编写 home 和 local home 接口, 代之以元注释解决 ;

22 简化 EJB 的类型 EJB3 的新特性 不再包含 CMP 实体 Bean 与 BMP 实体 Bean 代之以 Java 持久性 API 简化对持久性的开发 EJB2.x 依赖 Entity Bean 封装对数据的访问, 管理对象关系的映射 ; EJB3 利用持久性 API 完成对象关系映射, 实体对象与普通对象基本相同 ; 消除了开发实体所需要的所有接口 ;

23 EJB3 的新特性 简化了实体 Bean 关系的管理 EJB2.x 中, 对象与表的映射关系, 属性与字段的映射, 对象之间的映射都需要在部署描述符中描述 ;EJB3 则采用元注释 ; 增强了 EJB QL 的功能, 使其更接近标准 SQL EJB3 规范与 EJB2 的关联 兼容性要求 互操作要求 客户端通用

24 EJB 的类型 有状态 无状态会话 Bean 消息驱动 Bean Bean 类的开发规则 EJB3 中的 Bean 若 Bean 实现了一个接口, 则认为该接口为业务接口 ; 注释, 则被认为是本地接口 ; 若 Bean 类有多个接口, 则必须使用 Local 或 Remote 标识清楚 ; 同一业务接口不能即是 Bean 本地接口又是 Bean 的远程接口 ;

25 Public class CalculatorBean implements Calculator{ public float add(int a, int b) { return a + b; public float subtract(int a, int b) { return a b; Public interface Calculator{ public float add(int a, int b) public float subtract (int a, int b)

26 Stateless Session Bean 实例 计算个人所得税 State Session Bean 实例 网上书店的购物车 Web Service 实例 EJB3 规范下的 Bean 利用无状态会话 Bean 实现 Web Service

27 业务接口 Stateless Session Bean 实例 业务接口用于定义客户端可以访问的方法 package stateless.sessionbeans.java.ss.pku.edu.cn; import public interface PersonalRevenue { public float getpersonalrevenue(float salary,float start);

28 package stateless.sessionbeans.java.ss.pku.edu.cn; import public class PersonalRevenueBean implements PersonalRevenue { public float getpersonalrevenue(float salary,float start){ float revenue = 0; float revenuesalary; // 应纳税工资 revenuesalary = salary - start; if(revenuesalary<0) revenue = 0; else if(revenuesalary < 500) revenue = revenuesalary * 5 /100; else if(revenuesalary < 2000) revenue = revenuesalary * 10 /100-25; else if(revenuesalary < 5000) revenue = revenuesalary * 15 / ; else if(revenuesalary < 20000) revenue = revenuesalary * 20 / ; else if(revenuesalary < 40000) revenue = revenuesalary * 25 / ; return revenue ; 创建 Bean 类

29 package stateless.sessionbeans.java.ss.pku.edu.cn; import javax.ejb.ejb; public class PersonalRevenueClient private static PersonalRevenue personalrevenue; public PersonalRevenueClient (String[] args) { public static void main(string[] args) { 创建应用客户端 PersonalRevenueClient client = new PersonalRevenueClient (args); client.dogetpersonalrevenue(); public void dogetpersonalrevenue () { try { float revenue = personalrevenue.getpersonalrevenue(3000,1600); System.out.println(" 工资为 :3000 元的人需要缴纳的个人所得税为 :" + revenue+ " 元 "); catch (Exception ex) { System.err.println(" 产生未知异常!"); ex.printstacktrace();

30 page import=" com.neu.javaee.ejb,javax.naming.*"%> // 利用 page 指令导入要用到的类 ; <%! // 声明中 : 查找业务接口并创建 EJB private PersonalRevenue personalrevenue= null; public void jspinit() { try { InitialContext ic = new InitialContext(); personalrevenue = (PersonalRevenue) ic.lookup(personalrevenue.class.getname()); catch (Exception ex) { System.out.println(" 不能创建 personalrevenue bean "+ ex.getmessage()); public void jspdestroy() { personalrevenue = null; %> <html> <head> <title> 个人所得税计算器 </title> 创建 Web 客户端 1

31 <html> <head> <title> 个人所得税计算器 </title> 创建 Web 客户端 2 </head> <body bgcolor="white"> <% 调用业务方法的代码 %> <h1> 计算个人所得税 </h1> <hr> <form method="get"> <p> 请输入应纳税工资 :</p> <input type="text" name="salary" size="8"> <br> <p> 请输入起征点 :</p> <input type="text" name="start" size="8"> <p> <input type="submit" value="submit"> <input type="reset" value="reset"> </form> </body> </html>

32 <% String salary = request.getparameter("salary"); String start = request.getparameter("start"); if ( salary!= null && salary.length() > 0 && start!= null && start.length() > 0) { try{ float fsalary = Float.parseFloat(salary); float fstart = Float.parseFloat(start); float revenue = personalrevenue.getpersonalrevenue(fsalary,fstart); out.println("<p>"); out.println(" 你应缴纳的个人所得税为 :"+revenue); out.println("<p>"); catch(exception ex){ out.println(" 应该输入大于 0 的数字!"); else{ out.println(" 请输入应纳税工资和起征点!"); %> 创建 Web 客户端 3 调用业务方法的代码

33 业务接口 State Session Bean 实例 package stateful.sessionbeans.java.ss.pku.edu.cn; import java.util.list; import public interface Cart { public void initialize(string person) throws BookException; public void initialize(string person, String id)throws BookException; public void addbook(string title); public void removebook(string title) throws BookException; public List<String> getcontents(); public void remove();

34 package stateful.sessionbeans.java.ss.pku.edu.cn; import // 表明这是有状态会话 Bean public class CartBean implements Cart{ public void initialize(string person, String id) throws BookException { if (person == null) { throw new BookException(" 不允许没有用户!"); else { customername = person; IdVerifier idchecker = new IdVerifier(); if (idchecker.validate(id)) { customerid = id; 创建 Bean 类 else { throw new BookException(" 无效的 ID: " + id); contents = new ArrayList<String>( );

35 public void initialize(string person) throws BookException { if (person == null) { throw new BookException(" 不允许没有用户!"); else { customername = person; customerid = "0"; contents = new ArrayList<String>(); public void addbook(string title) { contents.add(title); public void removebook(string title) throws BookException { boolean result = contents.remove(title); if (result == false) { throw new BookException(title + " 不在购物车中 "); public List<String> getcontents() { return // 客户端调用该方法, 则容器强制删除 EJB public void remove() { contents = null; 创建 Bean 类

36 Web Service 实例 package stateless.sessionbeans.java.ss.pku.edu.cn; import javax.ejb.stateless; import javax.jws.webmethod; public class HelloServiceBean { private String hello = " 您好,"; public void HelloServiceBean() public String sayhello(string username) { return hello + username + " ";

37 消息驱动 Bean 消息驱动 Bean 由 Java 消息服务驱动的一种 EJB; JMS 消息 JMS 消息是由消息头字段 消息属性和消息体组成的信息体 ; Java 消息服务 (JMS) 一组 API, 定义了客户端程序如何以一种标准的方式与底层的消息提供者进行交互 ;

38 关于 JMS 消息服务的分类 点对点消息处理处理 (PTP,Point-to-Point) 利用一个消息队列, 消息生产者向队列写入消息, 消费者从队列读取消息 ; 发布 - 订阅消息处理模型 消息被发送给一个主题 (Topic), 消息服务器将消息发布给订阅该主题的订阅者 ;

39 消息的发送 / 接收过程 关于 JMS 获得服务器的一个上下文引用 ; 创建连接工厂, 利用工厂创建一个连接 ; 利用连接创建一个会话 ; 使用会话创建消息的发送 / 接受者 ; 使用连接创建一个消息实例 ; 利用消息发送 / 接受者发送 / 接收消息 ;

40 package jms.sessionbeans.java.ss.pku.edu.cn; import java.util.*; import javax.jms.*; import javax.naming.*; public class MsgQueueSender { private QueueSender sender; private TextMessage msg; public MsgQueueSender (String[] argv) throws NamingException, JMSException { // 初始化上下文环境 String url = "t3://localhost:7001"; Properties p = new Properties(); p.put(context.initial_context_factory, "weblogic.jndi.wlinitialcontextfactory"); p.put(context.provider_url, url); Context ctx = new InitialContext(p); // 创建一个连接工厂 QueueConnectionFactory qconfactory = (QueueConnectionFactory) ctx.lookup("weblogic.jms.connectionfactory"); // 创建一个队列 javax.jms.queue messagequeue = (javax.jms.queue) ctx.lookup("tyyqueue"); // 创建一个链接 QueueConnection qcon = qconfactory.createqueueconnection(); // 创建一个会话 QueueSession session = qcon.createqueuesession( false, /* not a transacted session */ Session.AUTO_ACKNOWLEDGE ); // 创建一个发送者 sender = session.createsender(messagequeue); // 创建一个消息 msg = session.createtextmessage(); 点对点模型下发送消息

41 package jms.sessionbeans.java.ss.pku.edu.cn; import java.util.*; import javax.jms.*; import javax.naming.*; public class MsgQueueSender { private QueueSender sender; private TextMessage msg; public MsgQueueSender (String[] argv) throws NamingException, JMSException { // 初始化上下文环境 String url = "t3://localhost:7001"; Properties p = new Properties(); p.put(context.initial_context_factory, "weblogic.jndi.wlinitialcontextfactory"); p.put(context.provider_url, url); Context ctx = new InitialContext(p); // 创建一个连接工厂 QueueConnectionFactory qconfactory = (QueueConnectionFactory) ctx.lookup("weblogic.jms.connectionfactory"); // 创建一个队列 javax.jms.queue messagequeue = (javax.jms.queue) ctx.lookup("tyyqueue"); // 创建一个链接 QueueConnection qcon = qconfactory.createqueueconnection(); // 创建一个会话 QueueSession session = qcon.createqueuesession( false, /* not a transacted session */ Session.AUTO_ACKNOWLEDGE ); // 创建一个发送者 sender = session.createsender(messagequeue); // 创建一个消息 msg = session.createtextmessage(); 点对点模型下发送消息

42 public void runclient(string str) throws JMSException { msg.settext("hello"); sender.send(msg); msg.settext("welcome to JMS"); sender.send(msg); msg.settext(str); sender.send(msg); public static void main(string[] argv) throws Exception { try { msgqueuesender mqs = new msgqueuesender (argv); mqs.runclient(argv[0]); System.out.print("success"); catch (NamingException ne) { System.err.println(""); System.err.println("** Please ensure that you have setup the" + " JMS Server properly. The JMS Server and the appropriate " + "JMS Destinations must be configured before running the " + "examples."); System.err.println(""); throw ne; 点对点模型下发送消息

43 package jms.sessionbeans.java.ss.pku.edu.cn; import javax.jms.jmsexception; import javax.jms.queue; import javax.jms.queueconnection; import javax.jms.queueconnectionfactory; import javax.jms.queuereceiver; import javax.jms.queuesession; import javax.jms.session; import javax.jms.textmessage; import javax.naming.context; import javax.naming.initialcontext; import javax.naming.namingexception; import java.util.properties; public final class SyncMesConsumer{ private QueueReceiver receiver; private TextMessage msg; 点对点模型下同步接收消息 public SyncMesConsumer() throws JMSException, NamingException {

44 public SyncMesConsumer() throws JMSException, NamingException { // 初始化上下文环境 String url = "t3://localhost:7001"; Properties p = new Properties(); p.put(context.initial_context_factory, "weblogic.jndi.wlinitialcontextfactory"); p.put(context.provider_url, url); Context ctx = new InitialContext(p); // 创建一个连接工厂 消息队列 连接 会话 QueueConnectionFactory qconfactory = (QueueConnectionFactory) ctx.lookup("weblogic.jms.connectionfactory"); Queue messagequeue = (Queue) ctx.lookup("tyyqueue"); QueueConnection qcon = qconfactory.createqueueconnection(); QueueSession session = qcon.createqueuesession( false, /* not a transacted session */ Session.AUTO_ACKNOWLEDGE ); // 创建消息接收者 receiver = session.createreceiver(messagequeue); // 启动消息传递 ( 在此之前禁止 ) qcon.start(); 点对点模型下同步接收消息

45 public void runclient() throws JMSException { // 利用 receive 方法询问是否有新消息 msg = (TextMessage) receiver.receive(); System.err.println("Received: "+msg.gettext()); msg = (TextMessage) receiver.receive(); System.err.println("Received: "+msg.gettext()); msg = (TextMessage) receiver.receive(); System.err.println("Received: "+msg.gettext()); public static void main(string [] argv) throws Exception { syncmesconsumer consumer = new syncmesconsumer(); consumer.runclient(); 点对点模型下同步接收消息

46 发布 / 订阅模式下的发布

47 package jms.sessionbeans.java.ss.pku.edu.cn; import javax.jms.jmsexception; import javax.jms.session; import javax.jms.textmessage; import javax.jms.topic; import javax.jms.topicconnection; import javax.jms.topicconnectionfactory; import javax.jms.topicpublisher; import javax.jms.topicsession; import javax.naming.context; import javax.naming.initialcontext; import javax.naming.namingexception; import java.util.properties; public final class MsgTopicProducer{ private TopicPublisher publisher; private TextMessage msg; 发布 / 订阅模式下的发布 public MsgTopicProducer() throws NamingException, JMSException {

48 public MsgTopicProducer() throws NamingException, JMSException { // 初始化上下文环境 String url="t3://localhost:7001"; Properties p=new Properties(); 发布 / 订阅模式下的发布 p.put(context.initial_context_factory,"weblogic.jndi.wlinitialcon textfactory"); p.put(context.provider_url, url); Context ctx = new InitialContext(p); // 创建一个链接工厂 TopicConnectionFactory tconfactory = (TopicConnectionFactory) ctx.lookup("weblogic.jms.connectionfactory"); // 创建一个主题 Topic messagetopic = (Topic) ctx.lookup("tyytopic"); // 创建一个连接 TopicConnection tcon = tconfactory.createtopicconnection(); // 创建一个会话 TopicSession session = tcon.createtopicsession( false, /* not a transacted session */ Session.AUTO_ACKNOWLEDGE); // 创建主题发布者 publisher = session.createpublisher(messagetopic); // 创建一个需要发送的消息类型的实例 msg = session.createtextmessage();

49 // 设定消息的内容, 并发布消息 public void runclient() throws JMSException { msg.settext("hello"); publisher.publish(msg); msg.settext("welcome to JMS"); publisher.publish(msg); System.out.println("sucess"); public static void main(string [] argv) throws Exception { msgtopicproducer mp = new msgtopicproducer(); mp.runclient(); 发布 / 订阅模式下的发布

50 public AsyncMessageTopicReceiver() throws JMSException, NamingException { package jms.sessionbeans.java.ss.pku.edu.cn; import javax.jms.jmsexception; import javax.jms.message; import javax.jms.messagelistener; import javax.jms.session; import javax.jms.textmessage; import javax.jms.topic; import javax.jms.topicconnection; import javax.jms.topicconnectionfactory; import javax.jms.topicsession; import javax.jms.topicsubscriber; import javax.naming.context; import javax.naming.initialcontext; import javax.naming.namingexception; import java.util.*; public final class AsyncMessageTopicReceiver implements MessageListener { private int EXPECTED_MESSAGE_COUNT = 2; private int messagecount = 0; private TopicSubscriber subscriber; private TextMessage msg; 发布 / 订阅模式下的异步接收

51 public AsyncMessageTopicReceiver() throws JMSException, NamingException { // 初始化上下文环境 Properties p=new Properties(); p.put(context.initial_context_factory, "weblogic.jndi.wlinitialcontextfactory"); p.put(context.provider_url,"t3://localhost:7001"); Context ctx = new InitialContext(p); // 创建一个连接工厂 消息队列 连接 会话 TopicConnectionFactory tconfactory = (TopicConnectionFactory) ctx.lookup("weblogic.jms.connectionfactory"); Topic messagetopic = (Topic) ctx.lookup("tyytopic"); TopicConnection tcon = tconfactory.createtopicconnection(); TopicSession session = tcon.createtopicsession( false, /* not a transacted session */ Session.AUTO_ACKNOWLEDGE ); // 创建一个订阅者 subscriber = session.createsubscriber(messagetopic); // 订阅者是监听者 subscriber.setmessagelistener(this); // 启动消息传递 tcon.start(); 发布 / 订阅模式下的异步接收

52 public boolean expectmoremessages() { return messagecount < EXPECTED_MESSAGE_COUNT; //JMS 服务器用异步方式把消息传递给 onmessage() 方法 public void onmessage(message m) { System.out.println("onMessage"); try { TextMessage msg = (TextMessage) m; System.err.println("Received: "+msg.gettext()); catch (JMSException e) { System.out.println(" 真的错了!"); e.printstacktrace(); messagecount++; 发布 / 订阅模式下的异步接收

53 public static void main(string [] argv) throws Exception { int MAX_TRIES = 30; int trycount = 0; AsyncMessageTopicReceiver consumer = new AsyncMessageTopicReceiver(); while (consumer.expectmoremessages() && (trycount < MAX_TRIES)) { try { System.out.println(tryCount); Thread.sleep(1000); catch (InterruptedException ignore) { trycount++; 发布 / 订阅模式下的异步接收

54 package mdbean.sessionbeans.java.ss.pku.edu.cn; import javax.annotation.resource; import javax.ejb.activationconfigproperty; import javax.ejb.messagedriven; import javax.ejb.messagedrivencontext; import javax.jms.message; import javax.jms.messagelistener; import javax.jms.textmessage; import javax.jms.jmsexception; // 设定 MessageDriven 元注释的值 ( 参考 MessageDriven 元注释文档 = "jms/simplemessagebean", activationconfig = = "acknowledgemode", propertyvalue = = "destinationtype", propertyvalue = "javax.jms.queue") ) public class SimpleMessageBean implements MessageListener { 发布 / 订阅模式下的异步接收

55 public class SimpleMessageBean implements MessageListener private MessageDrivenContext mdc; public SimpleMessageBean() { public void onmessage(message inmessage) { TextMessage msg = null; try { if (inmessage instanceof TextMessage) { msg = (TextMessage) inmessage; System.out.print(" 消息驱动 Bean: 接收到的消息 " + msg.gettext()); else { System.out.println(" 消息的类型不正确 : " + inmessage.getclass().getname()); catch (JMSException e) { e.printstacktrace(); mdc.setrollbackonly(); catch (Throwable te) { te.printstacktrace(); 发布 / 订阅模式下的异步接收

56 消息驱动 Bean package mdbean.sessionbeans.java.ss.pku.edu.cn; import java.util.*; import javax.jms.*; import = jms/connectionfactory ) Private static ConnectionFactory = jms/queue ) Private static Queue queue; connection = connectionfactory.createconnection(); session = connection.createsession(false, Session.AUTO_ACKNOWLEDGE); messageproducer = session.createproducer(queue); message = session.createtextmessage() for(int I =0;i<NUM_MSGS;i++) message.settext( 这是第 +(i+1)+ 个消息 ); Sytem.out.println( 发送消息 : +message.gettext()); messageproducer.send(message);..

57 好好想想, 有没有问题? 谢谢!

EJB-Programming-4-cn.doc

EJB-Programming-4-cn.doc EJB (4) : (Entity Bean Value Object ) JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Session Bean J2EE Session Façade Design Pattern Session Bean Session

More information

EJB-Programming-3.PDF

EJB-Programming-3.PDF :, JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Value Object Design Pattern J2EE Design Patterns Value Object Value Object Factory J2EE EJB Test Client

More information

拦截器(Interceptor)的学习

拦截器(Interceptor)的学习 二 拦截器 (Interceptor) 的学习 拦截器可以监听程序的一个或所有方法 拦截器对方法调用流提供了细粒度控制 可以在无状态会话 bean 有状态会话 bean 和消息驱动 bean 上使用它们 拦截器可以是同一 bean 类中的方法或是一个外部类 下面介绍如何在 Session Bean 类中使用外部拦截器类 @Interceptors 注释指定一个或多个在外部类中定义的拦截器 下面拦截器

More information

Stateless Session Beans(无状态bean)的学习

Stateless Session Beans(无状态bean)的学习 一 Stateless Session Beans( 无状态 bean) 的学习 第一步 : 要定义一个会话 Bean, 首先需要定义一个包含他所有业务方法的接口 这个接口不需要任何注释, 就像普通的 java 接口那样定义 调用 EJB 的客户端通过使用这个接口引用从 EJB 容器得到的会话 Bean 对象 stub 接口的定义如下: HelloWorld.java package com.foshanshop.ejb3;

More information

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit Tomcat Web JUnit Cactus JUnit Java Cactus JUnit 26.1 JUnit Java JUnit JUnit Java JSP Servlet JUnit Java Erich Gamma Kent Beck xunit JUnit boolean JUnit Java JUnit Java JUnit Java 26.1.1 JUnit JUnit How

More information

会话Bean与实体Bean(CMP)使用

会话Bean与实体Bean(CMP)使用 会话 Bean 与实体 Bean(CMP) 使用 一 准备工作 : 在 DB2 数据库中创建好一 testdb 的数据库, 用户名密码均为 test 创建表 :study create table study(id int not null primary key,name varchar(15),password varchar(15)) ; 打开 WSAD 开发工具 : 建立 :SessionAccessCMPProject

More information

<!-- import outer proper

<!-- import outer proper 概述 基于 Spring 支持的客户端编程, 包括发送方客户端 接收方客户端 发送方客户端代码 :jms-producer 接收方客户端代码 :jms-consumer 发送方客户端 这里基于 demo 进行说明 这个 demo 将往 example.queue 和 example.topic 各发一条信息 文件目录结构 1. src/main/resources/ 2. ---- jndi.properties

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Java application Java main applet Web applet Runnable Thread CPU Thread 1 Thread 2 Thread 3 CUP Thread 1 Thread 2 Thread 3 ,,. (new) Thread (runnable) start( ) CPU (running) run ( ) blocked CPU sleep(

More information

优迈科技教学大纲2009版本

优迈科技教学大纲2009版本 java 软 件 工 程 师 培 训 教 学 大 纲 1 JAVA 软 件 工 程 师 培 训 教 学 大 纲 深 圳 软 件 园 人 才 实 训 基 地 2009 年 3 月 目 录 java 软 件 工 程 师 培 训 教 学 大 纲 2 教 学 阶 段...3 第 一 章 JAVA 起 步...3 第 二 章 面 向 对 象 的 编 程...4 第 三 章 数 据 结 构 IO 线 程 网 络...5

More information

Microsoft Word - 01.DOC

Microsoft Word - 01.DOC 第 1 章 JavaScript 简 介 JavaScript 是 NetScape 公 司 为 Navigator 浏 览 器 开 发 的, 是 写 在 HTML 文 件 中 的 一 种 脚 本 语 言, 能 实 现 网 页 内 容 的 交 互 显 示 当 用 户 在 客 户 端 显 示 该 网 页 时, 浏 览 器 就 会 执 行 JavaScript 程 序, 用 户 通 过 交 互 式 的

More information

untitled

untitled 4.1AOP AOP Aspect-oriented programming AOP 來說 AOP 令 理 Cross-cutting concerns Aspect Weave 理 Spring AOP 來 AOP 念 4.1.1 理 AOP AOP 見 例 來 例 錄 Logging 錄 便 來 例 行 留 錄 import java.util.logging.*; public class HelloSpeaker

More information

weblogic

weblogic Weblogic Allen Long allen@huihoo.com http://www.huihoo.com 2004-04 1 WebLogic, WLS WLS Domain 2 Weblogic6.1 Weblogic6.1 J2EE1.2,J2EE1.3 HTTP 1.1 J2EE Connector Architecture 1.0 J2EE EJB 2.0 J2EE JDBC 2.0

More information

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0, http://debut.cis.nctu.edu.tw/~chi Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0, : POSITIVE_INFINITY NEGATIVE_INFINITY

More information

chp6.ppt

chp6.ppt Java 软 件 设 计 基 础 6. 异 常 处 理 编 程 时 会 遇 到 如 下 三 种 错 误 : 语 法 错 误 (syntax error) 没 有 遵 循 语 言 的 规 则, 出 现 语 法 格 式 上 的 错 误, 可 被 编 译 器 发 现 并 易 于 纠 正 ; 逻 辑 错 误 (logic error) 即 我 们 常 说 的 bug, 意 指 编 写 的 代 码 在 执 行

More information

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6 www.brainysoft.net 1.JasperReport ireport...4 1.1 JasperReport...4 1.2 ireport...4 2....4 2.1 JDK...4 2.1.1 JDK...4 2.1.2 JDK...5 2.1.3 JDK...5 2.2 ant...6 2.2.1 ant...6 2.2.2 ant...6 2.3 JasperReport...7

More information

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

KillTest 质量更高 服务更好 学习资料   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 310-055Big5 Title : Sun Certified Programmer for the Java 2 Platform.SE 5.0 Version : Demo 1 / 22 1. 11. public static void parse(string str)

More information

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 odps-sdk 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基 开放数据处理服务 ODPS SDK SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基础功能的主体接口, 搜索关键词 "odpssdk-core" 一些

More information

untitled

untitled JavaEE+Android - 6 1.5-2 JavaEE web MIS OA ERP BOSS Android Android Google Map office HTML CSS,java Android + SQL Sever JavaWeb JavaScript/AJAX jquery Java Oracle SSH SSH EJB+JBOSS Android + 1. 2. IDE

More information

基于CDIO一体化理念的课程教学大纲设计

基于CDIO一体化理念的课程教学大纲设计 Java 语 言 程 序 设 计 课 程 教 学 大 纲 Java 语 言 程 序 设 计 课 程 教 学 大 纲 一 课 程 基 本 信 息 1. 课 程 代 码 :52001CC022 2. 课 程 名 称 :Java 语 言 程 序 设 计 3. 课 程 英 文 名 称 :Java Programming 4. 课 程 类 别 : 理 论 课 ( 含 实 验 上 机 或 实 践 ) 5. 授

More information

IoC容器和Dependency Injection模式.doc

IoC容器和Dependency Injection模式.doc IoC Dependency Injection /Martin Fowler / Java Inversion of Control IoC Dependency Injection Service Locator Java J2EE open source J2EE J2EE web PicoContainer Spring Java Java OO.NET service component

More information

untitled

untitled 1 行 行 行 行.NET 行 行 類 來 行 行 Thread 類 行 System.Threading 來 類 Thread 類 (1) public Thread(ThreadStart start ); Name 行 IsAlive 行 行狀 Start 行 行 Suspend 行 Resume 行 行 Thread 類 (2) Sleep 行 CurrentThread 行 ThreadStart

More information

epub83-1

epub83-1 C++Builder 1 C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r 1.1 1.1.1 1-1 1. 1-1 1 2. 1-1 2 A c c e s s P a r a d o x Visual FoxPro 3. / C / S 2 C + + B u i l d e r / C

More information

1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10

1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10 Java V1.0.1 2007 4 10 1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10 6.2.10 6.3..10 6.4 11 7.12 7.1

More information

Java 1 Java String Date

Java 1 Java String Date JAVA SCJP Java 1 Java String Date 1Java 01 Java Java 1995 Java Java 21 Java Java 5 1-1 Java Java 1990 12 Patrick Naughton C++ C (Application Programming Interface API Library) Patrick Naughton NeXT Stealth

More information

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6:

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6: Chapter 15. Suppressed Exception CH14 Finally Block Java SE 7 try-with-resources JVM cleanup try-with-resources JVM cleanup cleanup Java SE 7 Throwable getsuppressed Throwable[] getsuppressed() Suppressed

More information

1

1 PRIMETON TECHNOLOGIES, LTD. EOS EOS Manager No part of this document may be reproduced, stored in any electronic retrieval system, or transmitted in any form or by any means, mechanical, photocopying,

More information

RunPCPB8 new feature.PDF

RunPCPB8 new feature.PDF Client/Server Web N-Tier PowerBuilder 8.0 PowerBuilder 8.0 IDE Client/Server Web PowerBuilder / Web-based IT IDE PowerBuilder PowerBuilder 8.0 PowerBuilder 8.0 PowerBuilder 8.0 PowerBuilder Sybase PowerBuilder

More information

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入 100 年 特 種 考 試 地 方 政 府 公 務 人 員 考 試 試 題 等 別 : 三 等 考 試 類 科 : 資 訊 處 理 科 目 : 系 統 分 析 與 設 計 一 請 參 考 下 列 旅 館 管 理 系 統 的 使 用 案 例 圖 (Use Case Diagram) 撰 寫 預 約 房 間 的 使 用 案 例 規 格 書 (Use Case Specification), 繪 出 入

More information

<4D6963726F736F667420576F7264202D2031313939204A617661B7C3CECA53514C536572766572BEDDBFE2B5C4C9E8BCC6D3EBCAB5CFD62E646F63>

<4D6963726F736F667420576F7264202D2031313939204A617661B7C3CECA53514C536572766572BEDDBFE2B5C4C9E8BCC6D3EBCAB5CFD62E646F63> Java 访 问 SQL Server 数 据 库 的 设 计 与 实 现 Zhuojun Zhao 数 据 库 连 接 是 软 件 项 目 开 发 中 很 重 要 的 一 个 环 节, 但 是 很 多 Java 初 学 者 在 学 习 连 接 数 据 库 的 过 程 中 感 到 非 常 头 疼, 总 是 出 现 一 系 列 的 问 题, 不 是 连 接 错 误 报 异 常, 就 是 无 法 显 示

More information

第一章 章标题-F2 上空24,下空24

第一章 章标题-F2 上空24,下空24 Web 9 XML.NET Web Web Service Web Service Web Service Web Service Web Service ASP.NET Session Application SOAP Web Service 9.1 Web Web.NET Web Service Web SOAP Simple Object Access Protocol 9.1.1 Web Web

More information

untitled

untitled PowerBuilder Tips 利 PB11 Web Service 年度 2 PB Tips PB9 EAServer 5 web service PB9 EAServer 5 了 便 web service 來說 PB9 web service 力 9 PB11 release PB11 web service 力更 令.NET web service PB NVO 論 不 PB 來說 說

More information

untitled

untitled 1 Outline 數 料 數 數 列 亂數 練 數 數 數 來 數 數 來 數 料 利 料 來 數 A-Z a-z _ () 不 數 0-9 數 不 數 SCHOOL School school 數 讀 school_name schoolname 易 不 C# my name 7_eleven B&Q new C# (1) public protected private params override

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Fortran Algol Pascal Modula-2 BCPL C Simula SmallTalk C++ Ada Java C# C Fortran 5.1 message A B 5.2 1 class Vehicle subclass Car object mycar public class Vehicle extends Object{ public int WheelNum

More information

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double

More information

本章学习目标 小风 Java 实战系列教程 SpringMVC 简介 SpringMVC 的入门案例 SpringMVC 流程分析 配置注解映射器和适配器 注解的使用 使用不同方式的跳转页面 1. SpringMVC 简介 Spring web mvc

本章学习目标 小风 Java 实战系列教程 SpringMVC 简介 SpringMVC 的入门案例 SpringMVC 流程分析 配置注解映射器和适配器 注解的使用 使用不同方式的跳转页面 1. SpringMVC 简介 Spring web mvc 本章学习目标 SpringMVC 简介 SpringMVC 的入门案例 SpringMVC 流程分析 配置注解映射器和适配器 配置视图解析器 @RequestMapping 注解的使用 使用不同方式的跳转页面 1. SpringMVC 简介 Spring web mvc 和 Struts2 都属于表现层的框架, 它是 Spring 框架的一部分, 我们可 以从 Spring 的整体结构中看得出来 :

More information

JBuilder Weblogic

JBuilder Weblogic JUnit ( bliu76@yeah.net) < >6 JUnit Java Erich Gamma Kent Beck JUnit JUnit 1 JUnit 1.1 JUnit JUnit java XUnit JUnit 1.2 JUnit JUnit Erich Gamma Kent Beck Erich Gamma Kent Beck XP Extreme Programming CRC

More information

untitled

untitled 1 Outline 料 類 說 Tang, Shih-Hsuan 2006/07/26 ~ 2006/09/02 六 PM 7:00 ~ 9:30 聯 ives.net@gmail.com www.csie.ntu.edu.tw/~r93057/aspnet134 度 C# 力 度 C# Web SQL 料 DataGrid DataList 參 ASP.NET 1.0 C# 例 ASP.NET 立

More information

FileMaker 16 ODBC 和 JDBC 指南

FileMaker 16 ODBC 和 JDBC 指南 FileMaker 16 ODBC JDBC 2004-2017 FileMaker, Inc. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker FileMaker Go FileMaker, Inc. FileMaker WebDirect FileMaker Cloud FileMaker,

More information

在 ongodb 中实现强事务

在 ongodb 中实现强事务 在 ongodb 中实现强事务 600+ employees 2,000+ customers 13 offices worldwide 15,000,000+ Downloads RANK DBMS MODEL SCORE GROWTH (20 MO) 1. Oracle Rela+onal DBMS 1,442-5% 2. MySQL Rela+onal DBMS 1,294 2% 3.

More information

《大话设计模式》第一章

《大话设计模式》第一章 第 1 章 代 码 无 错 就 是 优? 简 单 工 厂 模 式 1.1 面 试 受 挫 小 菜 今 年 计 算 机 专 业 大 四 了, 学 了 不 少 软 件 开 发 方 面 的 东 西, 也 学 着 编 了 些 小 程 序, 踌 躇 满 志, 一 心 要 找 一 个 好 单 位 当 投 递 了 无 数 份 简 历 后, 终 于 收 到 了 一 个 单 位 的 面 试 通 知, 小 菜 欣 喜

More information

untitled

untitled ArcGIS Server Web services Web services Application Web services Web Catalog ArcGIS Server Web services 6-2 Web services? Internet (SOAP) :, : Credit card authentication, shopping carts GIS:, locator services,

More information

基于ECO的UML模型驱动的数据库应用开发1.doc

基于ECO的UML模型驱动的数据库应用开发1.doc ECO UML () Object RDBMS Mapping.Net Framework Java C# RAD DataSetOleDbConnection DataGrod RAD Client/Server RAD RAD DataReader["Spell"].ToString() AObj.XXX bug sql UML OR Mapping RAD Lazy load round trip

More information

雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO

雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO CHAPTER 使用 Hadoop 打造自己的雲 8 8.3 測試 Hadoop 雲端系統 4 Nodes Hadoop Map Reduce Hadoop WordCount 4 Nodes Hadoop Map/Reduce $HADOOP_HOME /home/ hadoop/hadoop-0.20.2 wordcount echo $ mkdir wordcount $ cd wordcount

More information

输入 project name 选择完成

输入 project name 选择完成 JAVA 程序访问 HighGo DB 的环境准备 山东瀚高科技有限公司版权所有仅允许不作任何修改的转载和转发 Hibernate 的配置 MyEclipse 中创建新项目 : 选择菜单栏 file---new---project 选择 web project 进行下一步 输入 project name 选择完成 4. 单击 " 添加 JAR/ 文件夹 ", 会如下图出现 JDBC 下载 Hibernate

More information

RUN_PC連載_10_.doc

RUN_PC連載_10_.doc PowerBuilder 8 (10) Jaguar CTS ASP Jaguar CTS PowerDynamo Jaguar CTS Microsoft ASP (Active Server Pages) ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar Server ASP

More information

untitled

untitled 1 Outline ArrayList 類 列類 串類 類 類 例 理 MSDN Library MSDN Library 量 例 參 列 [ 說 ] [] [ 索 ] [] 來 MSDN Library 了 類 類 利 F1 http://msdn.microsoft.com/library/ http://msdn.microsoft.com/library/cht/ Object object

More information

使用MapReduce读取XML文件

使用MapReduce读取XML文件 使用 MapReduce 读取 XML 文件 XML( 可扩展标记语言, 英语 :extensible Markup Language, 简称 : XML) 是一种标记语言, 也是行业标准数据交换交换格式, 它很适合在系统之间进行数据存储和交换 ( 话说 Hadoop H ive 等的配置文件就是 XML 格式的 ) 本文将介绍如何使用 MapReduce 来读取 XML 文件 但是 Had oop

More information

Mac Java import com.apple.mrj.*;... public class MyFirstApp extends JFrame implements ActionListener, MRJAboutHandler, MRJQuitHandler {... public MyFirstApp() {... MRJApplicationUtils.registerAboutHandler(this);

More information

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 -> 目录 1 大概思路... 1 2 创建 WebAPI... 1 3 创建 CrossMainController 并编写... 1 4 Nuget 安装 microsoft.aspnet.webapi.cors... 4 5 跨域设置路由... 4 6 编写 Jquery EasyUI 界面... 5 7 运行效果... 7 8 总结... 7 1 1 大概思路 创建 WebAPI 创建 CrossMainController

More information

Swing-02.pdf

Swing-02.pdf 2 J B u t t o n J T e x t F i e l d J L i s t B u t t o n T e x t F i e l d L i s t J F r a m e 21 2 2 Swing C a n v a s C o m p o n e n t J B u t t o n AWT // ToolbarFrame1.java // java.awt.button //

More information

javaexample-02.pdf

javaexample-02.pdf n e w. s t a t i c s t a t i c 3 1 3 2 p u b l i c p r i v a t e p r o t e c t e d j a v a. l a n g. O b j e c t O b j e c t Rect R e c t x 1 y 1 x 2 y 2 R e c t t o S t r i n g ( ) j a v a. l a n g. O

More information

2 Java 语 言 程 序 设 计 教 程 1.2.1 简 单 性 Java 语 言 的 语 法 与 C 语 言 和 C++ 语 言 很 接 近, 使 得 大 多 数 程 序 员 很 容 易 学 习 和 使 用 Java 另 一 方 面,Java 丢 弃 了 C++ 中 很 少 使 用 的 很 难

2 Java 语 言 程 序 设 计 教 程 1.2.1 简 单 性 Java 语 言 的 语 法 与 C 语 言 和 C++ 语 言 很 接 近, 使 得 大 多 数 程 序 员 很 容 易 学 习 和 使 用 Java 另 一 方 面,Java 丢 弃 了 C++ 中 很 少 使 用 的 很 难 第 1 章 Java 概 述 Java 的 诞 生 Java 的 特 点 Java 开 发 环 境 安 装 与 配 置 创 建 并 运 行 一 个 简 单 的 Java 程 序 Java 语 言 是 当 今 计 算 机 软 件 行 业 中 最 热 门 的 网 络 编 程 语 言, 以 Java 为 核 心 的 芯 片 技 术 编 译 技 术 数 据 库 连 接 技 术, 以 及 基 于 企 业 级

More information

没 有 多 余 的 Contruol 或 Action 了 原 来 Domain 层 被 服 务 层 Service layer 遮 挡, 在 右 边 图 中, 则 Domain 层 直 接 暴 露 给 前 台 了, 没 有 被 遮 挡, 裸 露 了 这 样 一 步 到 位 实 现 领 域 模 型

没 有 多 余 的 Contruol 或 Action 了 原 来 Domain 层 被 服 务 层 Service layer 遮 挡, 在 右 边 图 中, 则 Domain 层 直 接 暴 露 给 前 台 了, 没 有 被 遮 挡, 裸 露 了 这 样 一 步 到 位 实 现 领 域 模 型 文 章 编 号 :1007-757X(2012)1-0036-04 领 域 驱 动 模 型 的 WEB 软 件 系 统 设 计 研 究 摘 要 : J2EE 3 JDK1.7 Tomcat WEB 关 键 词 : 中 图 分 类 号 :TP311 文 献 标 志 码 :A 0 引 言 Web 软 件 系 统 的 分 层 结 构 典 型 的 J2EE 软 件 系 统 开 发 方 法 分 为 三 层 结

More information

Learning Java

Learning Java Java Introduction to Java Programming (Third Edition) Prentice-Hall,Inc. Y.Daniel Liang 2001 Java 2002.2 Java2 2001.10 Java2 Philip Heller & Simon Roberts 1999.4 Java2 2001.3 Java2 21 2002.4 Java UML 2002.10

More information

untitled

untitled 1 MSDN Library MSDN Library 量 例 參 列 [ 說 ] [] [ 索 ] [] 來 MSDN Library 了 類 類 利 F1 http://msdn.microsoft.com/library/ http://msdn.microsoft.com/library/cht/ Object object 參 類 都 object 參 object Boxing 參 boxing

More information

计算机软件技术专业教学计划

计算机软件技术专业教学计划 计 算 机 软 件 技 术 专 业 人 才 培 养 方 案 ( 服 务 外 包 方 向 ) 专 业 大 类 名 称 ( 代 码 ):++(++) 专 业 类 名 称 ( 代 码 ):++++++(++++) 专 业 名 称 ( 代 码 ):+++++++(++++++) 修 业 年 限 : 三 年, 全 日 制 招 生 对 象 : 三 年 制 普 通 高 中 及 对 口 中 职 专 业 毕 业 生

More information

使用Cassandra和Spark 2.0实现Rest API服务

使用Cassandra和Spark 2.0实现Rest API服务 使用 Cassandra 和 Spark 2.0 实现 Rest API 服务 在这篇文章中, 我将介绍如何在 Spark 中使用 Akkahttp 并结合 Cassandra 实现 REST 服务, 在这个系统中 Cassandra 用于数据的存储 我们已经见识到 Spark 的威力, 如果和 Cassandra 正确地结合可以实现更强大的系统 我们先创建一个 build.sbt 文件, 内容如下

More information

Microsoft Word - Hibernate与Struts2和Spring组合指导.doc

Microsoft Word - Hibernate与Struts2和Spring组合指导.doc 1.1 组合 Hibernate 与 Spring 1. 在 Eclipse 中, 新建一个 Web project 2. 给该项目增加 Hibernate 开发能力, 增加 Hibernate 相关类库到当前项目的 Build Path, 同时也提供了 hibernate.cfg.xml 这个配置文件 3. 给该项目增加 Spring 开发能力, 增加 spring 相关类库到当前项目的 Build

More information

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF Chapter 2 WF 2.1 WF 2.2 2. XAML 2. 2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF WF WF WF WF EDI API WF Visual Studio Designer 1 2.1 WF Windows Workflow Foundation 2 WF 1 WF Domain-Specific

More information

JavaIO.PDF

JavaIO.PDF O u t p u t S t ream j a v a. i o. O u t p u t S t r e a m w r i t e () f l u s h () c l o s e () public abstract void write(int b) throws IOException public void write(byte[] data) throws IOException

More information

内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌

内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌 语 言 程 序 设 计 郑 莉 胡 家 威 编 著 清 华 大 学 逸 夫 图 书 馆 北 京 内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌 握 语

More information

59 1 CSpace 2 CSpace CSpace URL CSpace 1 CSpace URL 2 Lucene 3 ID 4 ID Web 1. 2 CSpace LireSolr 3 LireSolr 3 Web LireSolr ID

59 1 CSpace 2 CSpace CSpace URL CSpace 1 CSpace URL 2 Lucene 3 ID 4 ID Web 1. 2 CSpace LireSolr 3 LireSolr 3 Web LireSolr ID 58 2016. 14 * LireSolr LireSolr CEDD Ajax CSpace LireSolr CEDD Abstract In order to offer better image support services it is necessary to extend the image retrieval function of our institutional repository.

More information

使用 XFire 与 Spring 开发 Web Service 2 实现功能与特点 基于 J2EE 平台的 Web Service 服务 开发方便, 配置简单 设计接口 实现服务 配置暴露接口 XFire 将自动生成对应的 wsdl 支持高级详细配置 与 Spring 无缝集成 运行环境 JDK

使用 XFire 与 Spring 开发 Web Service 2 实现功能与特点 基于 J2EE 平台的 Web Service 服务 开发方便, 配置简单 设计接口 实现服务 配置暴露接口 XFire 将自动生成对应的 wsdl 支持高级详细配置 与 Spring 无缝集成 运行环境 JDK 使用 XFire 与 Spring 开发 Web Service 1 使用 XFire 与 Spring 开发 Web Service 王啸宇信易诚 wangxiao1@mail.yuchengtech.com 目录 实现功能与特点... 2 运行环境... 2 开发平台... 2 实施步骤... 2 概述... 2 新建 Java Project... 3 新建 WTP 动态 WEB 工程...

More information

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj Message Transition 5-1 5-2 DataInputStream Class 5-3 DataOutputStream Class 5-4 PrintStream Class 5-5 (Message Transition) (Exercises) Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream

More information

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d

More information

4.1 AMI MQSeries API AMI MQI AMI / / AMI JavaC C++ AMI / AMI AMI - / /

4.1 AMI MQSeries API AMI MQI AMI / / AMI JavaC C++ AMI / AMI AMI - / / 4 AMI AMI AMI SC345604 89 4.1 AMI MQSeries API AMI MQI AMI / / AMI JavaC C++ AMI / AMI AMI - / / 91 41-90 41 AMI - AMI - - API MQI MQSeries MQI AMI IBM 91 MQSeries REPOSITORY AMI AMI AMI XML Windows AMI

More information

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款 JAVA 程 序 设 计 ( 肆 ) 徐 东 / 数 学 系 使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款 使 用 Java class 代 表 保 险 箱 public class SaveBox 类 名 类 类 体 实 现 封 装 性 使 用 class SaveBox 代 表 保

More information

Microsoft Word - 200612-582.doc

Microsoft Word - 200612-582.doc Drools 规 则 引 擎 在 实 现 业 务 逻 辑 中 的 应 用 刘 际 赵 广 利 大 连 海 事 大 学, 大 连 (116026) E-mail:henterji@gmail.com 摘 要 : 现 今, 企 业 级 java 应 用 中 的 业 务 逻 辑 越 来 越 复 杂, 而 这 些 复 杂 的 业 务 逻 辑 又 广 泛 的 分 布 在 应 用 程 序 中 无 论 是 软 件

More information

2. AOP 底层技术实现 小风 Java 实战系列教程 关键词 : 代理模式 代理模型分为两种 : 1) 接口代理 (JDK 动态代理 ) 2) 子类代理 (Cglib 子类代理 ) 需求 :CustomerService 业务类, 有 save,update 方法, 希望在 save,updat

2. AOP 底层技术实现 小风 Java 实战系列教程 关键词 : 代理模式 代理模型分为两种 : 1) 接口代理 (JDK 动态代理 ) 2) 子类代理 (Cglib 子类代理 ) 需求 :CustomerService 业务类, 有 save,update 方法, 希望在 save,updat 本章学习目标 小风 Java 实战系列教程 AOP 思想概述 AOP 底层技术实现 AOP 术语介绍 SpringAOP 的 XML 方式 HelloWorld SpringAOP 的 XML 方式配置细节 SpringAOP 的注解方式 SpringAOP 的零配置方式 1. AOP 思想概述 1.1. AOP 思想简介 1.2. AOP 的作用 2. AOP 底层技术实现 小风 Java 实战系列教程

More information

RunPC2_.doc

RunPC2_.doc PowerBuilder 8 (5) PowerBuilder Client/Server Jaguar Server Jaguar Server Connection Cache Thin Client Internet Connection Pooling EAServer Connection Cache Connection Cache Connection Cache Connection

More information

FileMaker 15 ODBC 和 JDBC 指南

FileMaker 15 ODBC 和 JDBC 指南 FileMaker 15 ODBC JDBC 2004-2016 FileMaker, Inc. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker FileMaker Go FileMaker, Inc. / FileMaker WebDirect FileMaker, Inc. FileMaker

More information

Microsoft PowerPoint - 09Future

Microsoft PowerPoint - 09Future Web 应用基础 Apache Struts http://jakarta.apache.org/struts Spring http://www.springframework.org/ HelloWorld public class HelloWorld { public static void main(string[] args) { System.out.println("Hello World!");

More information

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题 2009 年 3 月 全 国 计 算 机 等 级 考 试 笔 试 试 卷 二 级 Java 语 言 程 序 设 计 ( 考 试 时 间 90 分 钟, 满 分 100 分 ) 一 选 择 题 ( 每 题 2 分, 共 70 分 ) 下 列 各 题 A) B) C) D) 四 个 选 项 中, 只 有 一 个 选 项 是 正 确 的 请 将 正 确 选 项 填 涂 在 答 题 卡 相 应 位 置 上,

More information

IP505SM_manual_cn.doc

IP505SM_manual_cn.doc IP505SM 1 Introduction 1...4...4...4...5 LAN...5...5...6...6...7 LED...7...7 2...9...9...9 3...11...11...12...12...12...14...18 LAN...19 DHCP...20...21 4 PC...22...22 Windows...22 TCP/IP -...22 TCP/IP

More information

(Microsoft Word - \272\364\263q\245|\244A_49636107_\304\254\253\330\336\263__\272\353\302\262\263\370\247i.doc)

(Microsoft Word - \272\364\263q\245|\244A_49636107_\304\254\253\330\336\263__\272\353\302\262\263\370\247i.doc) SCJP (Oracle Certified Professional, Java SE5/6 Programmer) 學 制 / 班 級 : 四 年 制 / 網 通 四 乙 指 導 老 師 : 方 信 普 老 師 學 生 學 號 / 姓 名 : 49636107 蘇 建 瑋 繳 交 年 份 : 100 年 6 月 一 SCJP 介 紹 SCJP 是 Sun Certified Java Programmer

More information

RUN_PC連載_8_.doc

RUN_PC連載_8_.doc PowerBuilder 8 (8) Web DataWindow ( ) DataWindow Web DataWindow Web DataWindow Web DataWindow PowerDynamo Web DataWindow / Web DataWindow Web DataWindow Wizard Web DataWindow Web DataWindow DataWindow

More information

epub 61-2

epub 61-2 2 Web Dreamweaver UltraDev Dreamweaver 3 We b We b We Dreamweaver UltraDev We b Dreamweaver UltraDev We b We b 2.1 Web We b We b D r e a m w e a v e r J a v a S c r i p t We b We b 2.1.1 Web We b C C +

More information

Microsoft Word - Broker.doc

Microsoft Word - Broker.doc Broker 模式 采用 broker 模式对分布式计算进行简单模拟 系统在一个进程内模拟分布式环境, 因此不涉及网络编程和进程间通信,Broker 通过本地函数调用的方式实现 request 和 response 的转发 采用 broker 模式对分布式计算进行简单的模拟, 要求如下 : 设计四个 server, 一个 server 接收两个整数, 求和并返回结果, 一个 server 接收两个整数,

More information

XXXXXXXX http://cdls.nstl.gov.cn 2 26

XXXXXXXX http://cdls.nstl.gov.cn 2 26 [ ] [ ] 2003-7-18 1 26 XXXXXXXX http://cdls.nstl.gov.cn 2 26 (2003-7-18) 1...5 1.1...5 1.2...5 1.3...5 2...6 2.1...6 2.2...6 2.3...6 3...7 3.1...7 3.1.1...7 3.1.2...7 3.1.2.1...7 3.1.2.1.1...8 3.1.2.1.2...10

More information

目 录 1. 业 务 流 程 系 统 开 发 面 临 的 挑 战 与 机 遇... 3 1.1 业 务 流 程 管 理... 4 2. 新 一 代 开 源 业 务 流 程 开 发 平 台 BPMX3... 5 2.1 BPMX3 是 什 么... 5 2.2 为 什 么 要 优 先 采 用 BPMX

目 录 1. 业 务 流 程 系 统 开 发 面 临 的 挑 战 与 机 遇... 3 1.1 业 务 流 程 管 理... 4 2. 新 一 代 开 源 业 务 流 程 开 发 平 台 BPMX3... 5 2.1 BPMX3 是 什 么... 5 2.2 为 什 么 要 优 先 采 用 BPMX BPMX3 技 术 白 皮 书 业 务 流 程 开 发 平 台 介 绍 目 录 1. 业 务 流 程 系 统 开 发 面 临 的 挑 战 与 机 遇... 3 1.1 业 务 流 程 管 理... 4 2. 新 一 代 开 源 业 务 流 程 开 发 平 台 BPMX3... 5 2.1 BPMX3 是 什 么... 5 2.2 为 什 么 要 优 先 采 用 BPMX3... 5 2.2.1 BPMX3

More information

1. 2. Flex Adobe 3.

1. 2. Flex Adobe 3. 1. 2. Flex Adobe 3. Flex Adobe Flex Flex Web Flex Flex Flex Adobe Flash Player 9 /rich Internet applications/ria Flex 1. 2. 3. 4. 5. 6. SWF Flash Player Flex 1. Flex framework Adobe Flex 2 framework RIA

More information

软 件 工 程 专 业 习 指 南 目 录 一 软 件 工 程 专 业 设 置 背 景 与 发 展 前 景... 3 二 软 件 工 程 专 业 实 践 教 条 件... 4 三 软 件 工 程 专 业 课 程 类 型 及 核 方 式... 6 1. 软 件 工 程 专 业 课 程 类 型...7

软 件 工 程 专 业 习 指 南 目 录 一 软 件 工 程 专 业 设 置 背 景 与 发 展 前 景... 3 二 软 件 工 程 专 业 实 践 教 条 件... 4 三 软 件 工 程 专 业 课 程 类 型 及 核 方 式... 6 1. 软 件 工 程 专 业 课 程 类 型...7 计 算 机 系 软 件 工 程 专 业 习 指 南 广 东 科 技 院 计 算 机 系 2015-9-1 软 件 工 程 专 业 习 指 南 目 录 一 软 件 工 程 专 业 设 置 背 景 与 发 展 前 景... 3 二 软 件 工 程 专 业 实 践 教 条 件... 4 三 软 件 工 程 专 业 课 程 类 型 及 核 方 式... 6 1. 软 件 工 程 专 业 课 程 类 型...7

More information

Microsoft Word - J2EE笔试题目.doc

Microsoft Word - J2EE笔试题目.doc . 简答题 : a) 在你心中,J2EE 是什么样的? 请用三句话描述清楚 答 :1. J2EE 是一个开发和运行大型的 多层次的 分布式的企业级 Web 应用的标准, 它提供了一个多层次的分布式应用模型和一系列开发技术规范 2. J2EE 平台由一整套服务 (Services) 应用程序接口(APIs) 和协议构成,APIs 涵盖了 EJB Servlet JSP JDBC JTA JNDI RMI

More information

untitled

untitled 1 .NET sln csproj dll cs aspx 說 料 料 利 來 料 ( 來 ) 利 [] [] 來 說 切 切 理 [] [ ] 來 說 拉 類 類 [] [ ] 列 連 Web 行流 來 了 不 不 不 流 立 行 Page 類 Load 理 Click 滑 料 Response 列 料 Response HttpResponse 類 Write 料 Redirect URL Response.Write("!!

More information

Microsoft Word - ch04三校.doc

Microsoft Word - ch04三校.doc 4-1 4-1-1 (Object) (State) (Behavior) ( ) ( ) ( method) ( properties) ( functions) 4-2 4-1-2 (Message) ( ) ( ) ( ) A B A ( ) ( ) ( YourCar) ( changegear) ( lowergear) 4-1-3 (Class) (Blueprint) 4-3 changegear

More information

untitled

untitled -JAVA 1. Java IDC 20 20% 5 2005 42.5 JAVA IDC JAVA 60% 70% JAVA 3 5 10 JAVA JAVA JAVA J2EE J2SE J2ME 70% JAVA JAVA 20 1 51 2. JAVA SUN JAVA J2EE J2EE 3. 1. CSTP CSTP 2 51 2. 3. CSTP IT CSTP IT IT CSTP

More information

Microsoft Word - PHP7Ch01.docx

Microsoft Word - PHP7Ch01.docx PHP 01 1-6 PHP PHP HTML HTML PHP CSSJavaScript PHP PHP 1-6-1 PHP HTML PHP HTML 1. Notepad++ \ch01\hello.php 01: 02: 03: 04: 05: PHP 06:

More information

附录J:Eclipse教程

附录J:Eclipse教程 附 录 J:Eclipse 教 程 By Y.Daniel Liang 该 帮 助 文 档 包 括 以 下 内 容 : Eclipse 入 门 选 择 透 视 图 创 建 项 目 创 建 Java 程 序 编 译 和 运 行 Java 程 序 从 命 令 行 运 行 Java Application 在 Eclipse 中 调 试 提 示 : 在 学 习 完 第 一 章 后 使 用 本 教 程 第

More information

ebook

ebook 26 JBuilder RMI Java Remote Method Invocation R M I J a v a - - J a v a J a v J a v a J a v a J a v a R M I R M I ( m a r s h a l ) ( u n m a r c h a l ) C a ff e i n e J a v a j a v a 2 i i o p J a v

More information

ebook140-8

ebook140-8 8 Microsoft VPN Windows NT 4 V P N Windows 98 Client 7 Vintage Air V P N 7 Wi n d o w s NT V P N 7 VPN ( ) 7 Novell NetWare VPN 8.1 PPTP NT4 VPN Q 154091 M i c r o s o f t Windows NT RAS [ ] Windows NT4

More information

ebook140-9

ebook140-9 9 VPN VPN Novell BorderManager Windows NT PPTP V P N L A V P N V N P I n t e r n e t V P N 9.1 V P N Windows 98 Windows PPTP VPN Novell BorderManager T M I P s e c Wi n d o w s I n t e r n e t I S P I

More information

<4D6963726F736F667420576F7264202D20BBF9D3DA416E64726F6964C6BDCCA8B5C4B5E7D7D3C5C4C2F4CFB5CDB32E646F63>

<4D6963726F736F667420576F7264202D20BBF9D3DA416E64726F6964C6BDCCA8B5C4B5E7D7D3C5C4C2F4CFB5CDB32E646F63> 基 于 Android 平 台 的 电 子 拍 卖 系 统 摘 要 本 电 子 拍 卖 系 统 其 实 就 是 一 个 电 子 商 务 平 台, 只 要 将 该 系 统 部 署 到 互 联 网 上, 客 户 都 可 以 在 该 系 统 上 发 布 想 出 售 的 商 品, 也 可 以 对 拍 卖 中 的 商 品 参 与 竞 价 整 个 过 程 无 须 人 工 干 预, 由 系 统 自 动 完 成 本

More information

3.1 num = 3 ch = 'C' 2

3.1 num = 3 ch = 'C' 2 Java 1 3.1 num = 3 ch = 'C' 2 final 3.1 final : final final double PI=3.1415926; 3 3.2 4 int 3.2 (long int) (int) (short int) (byte) short sum; // sum 5 3.2 Java int long num=32967359818l; C:\java\app3_2.java:6:

More information

1. 访 问 最 新 发 行 公 告 信 息 jconnect for JDBC 7.0 1. 访 问 最 新 发 行 公 告 信 息 最 新 版 本 的 发 行 公 告 可 以 从 网 上 获 得 若 要 查 找 在 本 产 品 发 布 后 增 加 的 重 要 产 品 或 文 档 信 息, 请 访

1. 访 问 最 新 发 行 公 告 信 息 jconnect for JDBC 7.0 1. 访 问 最 新 发 行 公 告 信 息 最 新 版 本 的 发 行 公 告 可 以 从 网 上 获 得 若 要 查 找 在 本 产 品 发 布 后 增 加 的 重 要 产 品 或 文 档 信 息, 请 访 发 行 公 告 jconnect for JDBC 7.0 文 档 ID:DC74874-01-0700-01 最 后 修 订 日 期 :2010 年 3 月 2 日 主 题 页 码 1. 访 问 最 新 发 行 公 告 信 息 2 2. 产 品 摘 要 2 3. 特 殊 安 装 说 明 2 3.1 查 看 您 的 jconnect 版 本 3 4. 特 殊 升 级 指 导 3 4.1 迁 移 3

More information

untitled

untitled 1 .NET 利 [] [] 來 說 切 切 理 [] [ ] 來 說 拉 類 類 [] [ ] 列 連 Web 行流 來 了 不 不 不 流 立 行 Page 類 Load 理 Response 類 Write 料 Redirect URL Response.Write("!! ives!!"); Response.Redirect("WebForm2.aspx"); (1) (2) Web Form

More information

无类继承.key

无类继承.key 无类继承 JavaScript 面向对象的根基 周爱 民 / aimingoo aiming@gmail.com https://aimingoo.github.io https://github.com/aimingoo rand = new Person("Rand McKinnon",... https://docs.oracle.com/cd/e19957-01/816-6408-10/object.htm#1193255

More information

2 Requirements Documentation Doc Name Doc No. 1.0 Version No. Total Page Generated By V6.0.0 Generated Date 2011/10/21 Checked By Checked Date 2011/10

2 Requirements Documentation Doc Name Doc No. 1.0 Version No. Total Page Generated By V6.0.0 Generated Date 2011/10/21 Checked By Checked Date 2011/10 1 2 Requirements Documentation Doc Name Doc No. 1.0 Version No. Total Page Generated By V6.0.0 Generated Date 2011/10/21 Checked By Checked Date 2011/10/26 Approved By Approved Date Version Modification

More information

jsp

jsp JSP Allen Long Email: allen@huihoo.com http://www.huihoo.com 2004-04 Huihoo - Enterprise Open Source http://www.huihoo.com 1 JSP JSP JSP JSP MVC Huihoo - Enterprise Open Source http://www.huihoo.com 2

More information

软件工程文档编制

软件工程文档编制 实训抽象类 一 实训目标 掌握抽象类的定义 使用 掌握运行时多态 二 知识点 抽象类的语法格式如下 : public abstract class ClassName abstract void 方法名称 ( 参数 ); // 非抽象方法的实现代码 在使用抽象类时需要注意如下几点 : 1 抽象类不能被实例化, 实例化的工作应该交由它的子类来完成 2 抽象方法必须由子类来进行重写 3 只要包含一个抽象方法的抽象类,

More information