仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1563|回复: 20
打印 上一主题 下一主题

[学习教程] JAVA网页编程之定制Jetty8体例启动web使用仓酷云

[复制链接]
第二个灵魂 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:29:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
不得不提一下的是:.net网页编程是看到java红,而开发出来的工具。1:Jetty的4种web使用部署体例(不包含嵌进启动):

1:间接修正${JETTY_HOME}/etc/jetty.xml的设置来部署使用;
2:把war包扔到${JETTY_HOME}/webapps目次中,主动被WebAppDeployer发明往部署;
3:在${JETTY_HOME}/contents中增添一个设置文件(仿照test.xml的设置),由ContextDeployer主动发明往部署;
4:定制部署启动设置文件;
后面3中部署体例在Jetty7的部署体例中报告的较为分明。
2:定制化启动Jetty:

因为我们每一个使用必要分歧端口启动,如许在中断A使用的情形下,B使用不会遭到影响。同时,我们但愿在每台服务器上只要一份jetty,每一个使用的设置文件应当是自力的。
2.1:jetty容器设置文件
在start.ini中设置了etc/jetty.xml,etc/jetty-webapps.xml(WebAppDeployer),etc/jetty-contexts.xml(ContextDeployer)三个文件,代表在默许情形下启动jetty,web使用3种部署都是撑持的。WebAppDeployer则是会扫描${JETTY_HOME}/webapps目次,寻觅war包并部署;ContextDeployer会扫描${JETTY_HOME}/contents目次,找到能够部署的context设置文件并部署。
以是定制jetty之前,我们必要在start.ini中把这3行正文失落。
2.2:web使用设置
复制${JETTY_HOME}/etc/jetty.xml文件到bin目次上面,修正port和confidentialPort为本人使用的端标语。在<Arraytype="org.eclipse.jetty.server.Handler">中增加必要部署的war包得Item,以下注重(contextPath和war值):
<Item>
<Newclass="org.eclipse.jetty.webapp.WebAppContext">
<Setname="contextPath">/aaa</Set>
<Setname="war">/opt/longtask/aaa/webapps/aaa.war</Set>
<Setname="defaultsDescriptor"><SystemPropertyname="jetty.home"default="."/>/etc/webdefault.xml</Set>
<Setname="extractWAR">true</Set>
<Setname="copyWebDir">false</Set>
<Callname="addServlet">
<Arg>org.eclipse.jetty.servlet.DefaultServlet</Arg>
<Arg>/</Arg>
</Call>
</New>
</Item>
2.3:启动使用(省略相干sh剧本)
JETTY_CONFIG="${PWD}/jetty-${APP_NAME}.xml${PWD}/jetty-logging.xml"
JETTY_OPTS="-jar${JETTY_HOME}/start.jar&ndash;pre=${JETTY_CONFIG}"
java-server$JDK_OPTS$JETTY_OPTS>/dev/null2>&1&
2.4:OPTIONS的申明
在jetty8中经由过程java-jarstart.jar&ndash;version命令能够检察到默许启动的OPTIONS:
ActiveOptions:[Server,annotations,ext,jdbc,jmx,jsp,jta,plus,resources,websocket]
假如要启动其他OPTIONS,必要本人增加。

3:FAQ:

3.1:没法启动,报端口毛病:
Causedby:java.net.BindException:Addressalreadyinuse
atsun.nio.ch.Net.bind(NativeMethod)
atsun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:126)
atsun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
atorg.eclipse.jetty.server.nio.SelectChannelConnector.open(SelectChannelConnector.java:172)
atorg.eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.java:300)
atorg.eclipse.jetty.server.nio.SelectChannelConnector.doStart(SelectChannelConnector.java:250)
atorg.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
atorg.eclipse.jetty.server.Server.doStart(Server.java:273)
atorg.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
atorg.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1203)
atjava.security.AccessController.doPrivileged(NativeMethod)
atorg.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1126)
经由过程lsof-i:port来检察端口是不是被占用,假如被占用,必要修正jetty设置文件中的port来启动
3.2:在往失落start.ini中正文失落jetty.xml后,制订本人的jetty.xml后报错。
成绩:
java.io.FileNotFoundException:UnabletofindXMLConfig:etc/jetty.xml
atorg.eclipse.jetty.start.Main.resolveXmlConfig(Main.java:671)
atorg.eclipse.jetty.start.Main.resolveXmlConfigs(Main.java:888)
atorg.eclipse.jetty.start.Main.start(Main.java:508)
atorg.eclipse.jetty.start.Main.parseCommandLine(Main.java:265)
atorg.eclipse.jetty.start.Main.main(Main.java:79)
必要在&ndash;pre中增加启动项,不是在-jarstart.jar前面增加
3.3:网上说war包必要解紧缩,是毛病的,jetty8不必要解压的。
4:参考文档:



  • ServingWebappAOnlyfromPortAandWebappBOnlyfromPortB
  • RunningJetty-7.0.x
  • Jetty/Reference/jetty.xmlsyntax

唉!都是钱闹的1.Swing和.net网页编程开发比较------从市场份额看.net网页编程开发主要占据大部分的中小型和中型的的桌面开发,原因是它封装了很多工具
深爱那片海 该用户已被删除
沙发
发表于 2015-1-21 07:52:19 来自手机 | 只看该作者
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
变相怪杰 该用户已被删除
板凳
发表于 2015-1-30 12:29:32 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
若相依 该用户已被删除
地板
发表于 2015-2-2 13:00:47 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
小女巫 该用户已被删除
5#
发表于 2015-2-7 20:02:37 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
蒙在股里 该用户已被删除
6#
发表于 2015-2-20 18:38:10 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
精灵巫婆 该用户已被删除
7#
发表于 2015-2-27 00:52:08 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
小妖女 该用户已被删除
8#
发表于 2015-3-7 11:45:31 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
兰色精灵 该用户已被删除
9#
发表于 2015-3-9 09:12:12 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
若天明 该用户已被删除
10#
发表于 2015-3-11 13:10:26 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
第二个灵魂 该用户已被删除
11#
 楼主| 发表于 2015-3-18 11:58:30 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
分手快乐 该用户已被删除
12#
发表于 2015-3-20 21:18:57 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
因胸联盟 该用户已被删除
13#
发表于 2015-3-24 16:44:42 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
14#
发表于 2015-3-25 18:53:28 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
金色的骷髅 该用户已被删除
15#
发表于 2015-3-27 06:08:31 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
简单生活 该用户已被删除
16#
发表于 2015-3-28 09:08:23 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
海妖 该用户已被删除
17#
发表于 2015-4-3 05:13:11 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
爱飞 该用户已被删除
18#
发表于 2015-4-4 18:07:10 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
灵魂腐蚀 该用户已被删除
19#
发表于 2015-4-8 15:41:52 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
乐观 该用户已被删除
20#
发表于 2015-4-14 16:11:53 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 21:41

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表