`
lixw
  • 浏览: 196660 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

什么都要嵌入式

阅读更多

1、Derby数据库

简介:

       Derby是一个纯Java开发的关系型数据库引擎。

使用:

      加载驱动:Class.forName("org.apache.derby.jdbc.EmbeddedDriver ").newInstance();

      获取连接,执行查询、更新,开启、提交、回滚事务等操作完全符合JDBC规范,这里不做赘述。

组件包:

      derby.jar

2、Jetty服务器

简介:

      Jetty是一个开源的Servlet容器。

使用:

      创建Server:Server httpServer = new Server();

      创建连接器:SelectChannelConnector connector = new SelectChannelConnector();

      设置http内部端口:connector.setPort(8008);
                                    //connector.setHost("127.0.0.1");
                                    httpServer.addConnector(connector);

      创建WEB应用程序上下文: WebAppContext context = new WebAppContext();

      加载java Web项目:context.setContextPath("/pms");  

                                      context.setWar("./pms.war");
      //web项目路径

      //context.setResourceBase("./"); //相对路径
      httpServer.setHandler(context);//设置处理器器
      httpServer.setStopAtShutdown(true);// 设置是否同时停止服务器线程,默认为false
      启动服务器:

  try {
   httpServer.start();
   System.out.println("HTTPServer服务启动成功");
  } catch (Exception e) {
   e.printStackTrace();
   System.out.println("HTTPServer服务启动异常:" + e);
   System.exit(-1);
  }
 

上面的硬编码比较繁琐,我们同样可以采用XML来配置。

配置文件格式(jetty.xml):

 

    <?xml version="1.0"?>
    <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
    <Configure id="Server" class="org.mortbay.jetty.Server">
        <Set name="ThreadPool">
          <New class="org.mortbay.thread.BoundedThreadPool">
            <Set name="minThreads">10</Set>
            <Set name="lowThreads">50</Set>
            <Set name="maxThreads">250</Set>
          </New>
        </Set> 
        <Call name="addConnector">
          <Arg>
              <New class="org.mortbay.jetty.nio.SelectChannelConnector">
                <Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set>
                <Set name="maxIdleTime">30000</Set>
                <Set name="Acceptors">2</Set>
                <Set name="confidentialPort">8443</Set>
              </New>
          </Arg>
        </Call>    
        <Call name="setStopAtShutdown">
         <Arg type="boolean">true</Arg>
        </Call>
        <Set name="handler">
          <New id="handlers" class="org.mortbay.jetty.handler.HandlerCollection">
            <Set name="handlers">
             <Array type="org.mortbay.jetty.Handler">
               <Item>
                 <New id="contexts" class="org.mortbay.jetty.handler.ContextHandlerCollection"/>
               </Item>
               <Item>
                 <New id="defaultHandler" class="org.mortbay.jetty.handler.DefaultHandler"/>
               </Item>
               <Item>
                 <New id="requestLog" class="org.mortbay.jetty.handler.RequestLogHandler"/>
               </Item>
             </Array>
            </Set>
          </New>
        </Set>    
        <New id="pms" class="org.mortbay.jetty.webapp.WebAppContext">
          <Arg><Ref id="contexts"/></Arg>
          <Arg>D:\\apache-tomcat-5.5.23\\pms</Arg>
          <Arg>/pms</Arg>
          <Set name="classLoader">
            <New class="org.mortbay.jetty.webapp.TransformingWebAppClassLoader">
              <Arg><Ref id="pms"/></Arg>
            </New>
          </Set>
          <Set name="virtualHosts">
            <Array type="java.lang.String">
              <Item>169.254.11.139</Item>
            </Array>
          </Set>     
          <Get name="SessionHandler">
            <Set name="SessionManager">
              <New class="org.mortbay.jetty.servlet.HashSessionManager">
                <Set name="maxInactiveInterval">600</Set>
              </New>
            </Set>
          </Get>
        </New>
    </Configure>
 

读取XML配置参数,启动服务器:

try{
   Server server = new Server();
   XmlConfiguration configuration = new XmlConfiguration(Main.class.getClassLoader().getResource("jetty.xml")); 

   configuration.configure(server);
   server.start();   
}catch(Exception e){
   e.printStackTrace();
   System.exit(-1);

}
 

组件包:

       jetty-6.0.0.jar

       jettty-util-6.0.0.jar

      servlet-api-2.5-6.0.0.jar

3、虚拟机JRE

      要真正实现嵌入式虚拟机,需要我们的应用程序中同时包含JRE(从SUN官方可以获得,一般比较大,可以进行精简),然后利用批处理或者shell脚本的方式运行,例如在windows上的一个批处理:

jre\bin\java -cp .;lib\ant-1.6.5.jar;lib\commons-logging-1.0.4.jar;lib\core-3.1.1.jar;lib\derby.jar;lib\jetty-6.0.0.jar;lib\jetty-util-6.0.0.jar;lib\jsp-2.1.jar;lib\jsp-api-2.1.jar;lib\jstl-1.1.2.jar;lib\pms.jar;lib\servlet-api-2.5-6.0.0.jar;lib\standard-1.0.6.jar cn.com.Main

分享到:
评论

相关推荐

    嵌入式 项目源码 嵌入式 项目源码

    嵌入式 项目源码嵌入式 项目源码嵌入式 项目源码嵌入式 项目源码嵌入式 项目源码嵌入式 项目源码嵌入式 项目源码嵌入式 项目源码嵌入式 项目源码嵌入式 项目源码嵌入式 项目源码嵌入式 项目源码嵌入式 项目源码...

    嵌入式系统设计 一个嵌入式系统装置一般都由嵌入式计算机系统和执行装置组成,嵌入式计算机系统是整个嵌入式系统的核心

    嵌入式系统设计 一个嵌入式系统装置一般都由嵌入式计算机系统和执行装置组成,嵌入式计算机系统是整个嵌入式系统的核心,由硬件层、中间层、系统软件层和应用软件层组成。执行装置也称为被控对象,它可以接受嵌入式...

    嵌入式c语言编程嵌入式c语言编程

    嵌入式c语言编程嵌入式c语言编程嵌入式c语言编程嵌入式c语言编程嵌入式c语言编程嵌入式c语言编程嵌入式c语言编程嵌入式c语言编程嵌入式c语言编程嵌入式c语言编程嵌入式c语言编程嵌入式c语言编程嵌入式c语言编程...

    嵌入式课件 嵌入式课件 嵌入式课件 嵌入式课件

    嵌入式课件 嵌入式课件 嵌入式课件 嵌入式课件 嵌入式课件 嵌入式课件 嵌入式课件 嵌入式课件 嵌入式课件 嵌入式课件

    嵌入式实验嵌入式实验

    嵌入式实验嵌入式实验嵌入式实验嵌入式实验

    嵌入式系统 嵌入式系统

    嵌入式系统 嵌入式系统 嵌入式系统 嵌入式系统 嵌入式系统 嵌入式系统

    嵌入式知识图谱WiKi

    嵌入式知识图谱WiKi嵌入式知识图谱WiKi嵌入式知识图谱WiKi嵌入式知识图谱WiKi嵌入式知识图谱WiKi嵌入式知识图谱WiKi嵌入式知识图谱WiKi嵌入式知识图谱WiKi嵌入式知识图谱WiKi嵌入式知识图谱WiKi嵌入式知识图谱WiKi...

    嵌入式

    嵌入式

    嵌入式开发 ppt嵌入式开发 ppt嵌入式开发.ppt

    嵌入式开发 ppt嵌入式开发 ppt嵌入式开发 ppt嵌入式开发 ppt嵌入式开发 ppt嵌入式开发 ppt嵌入式开发 ppt嵌入式开发 ppt嵌入式开发 ppt

    嵌入式习题答案 周立功

    为何要使用嵌入式操作系统? 是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实时操作系统提高了系统的可靠性。其次,提高了开发效率,缩短了开发周期。再次,嵌入式实时操作系统充分发挥了 32 位 CPU 的...

    嵌入式开发都需要学习什么

    嵌入式开发都需要学习什么 这是一个初学者常问的问题,也是初学者问嵌入式该如何入门的根源。我感觉有两个方面,偏硬和偏软.我不认为嵌入式开发软件占绝对比重,相反,软硬件都懂,才是嵌入式高手所应该追求的,也是高手的...

    嵌入式系统设计师教程 pdf

    全书共6章,分别对嵌入式系统基础知识、嵌入式微处理器与接口设计、嵌入式软件与操作系统、嵌入式软件程序设计、嵌入式系统设计与维护等知识进行了详细的讲解,最后介绍了一个典型的嵌入式系统设计案例。 本书内容...

    基于Arduino的嵌入式系统入门与实践课件—Arduino嵌入式综合应用系统.pdf

    基于Arduino的嵌入式系统入门与实践课件—Arduino嵌入式综合应用系统.pdf基于Arduino的嵌入式系统入门与实践课件—Arduino嵌入式综合应用系统.pdf基于Arduino的嵌入式系统入门与实践课件—Arduino嵌入式综合应用系统...

    嵌入式Linux操作系统

    linux 嵌入式 ppt os linux 嵌入式 ppt os linux 嵌入式 ppt os linux 嵌入式 ppt os linux 嵌入式 ppt os linux 嵌入式 ppt os linux 嵌入式 ppt os linux 嵌入式 ppt os linux 嵌入式 ppt os linux 嵌入式 ppt os ...

    嵌入式智能避障循迹小车代码

    嵌入式智能避障循迹小车代码嵌入式智能避障循迹小车代码嵌入式智能避障循迹小车代码嵌入式智能避障循迹小车代码嵌入式智能避障循迹小车代码嵌入式智能避障循迹小车代码嵌入式智能避障循迹小车代码嵌入式智能避障循迹...

    嵌入式学习资料嵌入式学习资料

    嵌入式学习资料嵌入式学习资料嵌入式学习资料嵌入式学习资料嵌入式学习资料嵌入式学习资料嵌入式学习资料

    嵌入式软件笔试题合集.zip

    嵌入式软件笔试题合集嵌入式软件笔试题合集嵌入式软件笔试题合集嵌入式软件笔试题合集嵌入式软件笔试题合集嵌入式软件笔试题合集嵌入式软件笔试题合集嵌入式软件笔试题合集嵌入式软件笔试题合集嵌入式软件笔试题合集...

    嵌入式硬件设计嵌入式硬件设计

    嵌入式硬件设计 嵌入式硬件设计 嵌入式硬件设计 内含中文第一版和英文第二版.适合初学者使用.

    嵌入式课设_嵌入式_嵌入式课程设计_

    嵌入式 课程设计

    嵌入式系统论文嵌入式系统论文

    嵌入式系统论文嵌入式系统论文嵌入式系统论文嵌入式系统论文嵌入式系统论文

Global site tag (gtag.js) - Google Analytics