jetty服务器原理与maven集成
jetty服务器原理+MyEclipse下与Maven集成
Jetty 是一个开源的servlet容器,它为基于Java的web容器,例如JSP和servlet提供运行环境。Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布。开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立运行(stand-alone)的Java应用提供网络和web连接。
相对Tomcat而言,Jetty更轻量级
由于Tomcat除了遵循Java Servlet规范之外,自身还扩展了大量JEE特性以满足企业级应用的需求,所以Tomcat是较重量级的,而且配置较Jetty亦复杂许多。但对于大量普通互联网应用而言,并不需要用到Tomcat其他高级特性,所以在这种情况下,使用Tomcat是很浪费资源的。这种劣势放在分布式环境下,更是明显。换成Jetty,每个应用服务器省下那几兆内存,对于大的分布式环境则是节省大量资源。而且,Jetty的轻量级也使其在处理高并发细粒度请求的场景下显得更快速高效。
jetty的 基本架构
Jetty 中还有一些可有可无的组件,我们可以在它上做扩展。如 JMX,我们可以定义一些 Mbean 把它加到 Server 中,当 Server 启动的时候,这些 Bean 就会一起工作。
jetty架构的细节 请参见:
https://www.ibm.com/developerworks/cn/java/j-lo-jetty/
MyEclipse下与Maven集成
环境:
jdk1.8 、Myeclipse2017、maven3.5、servlet 3.0 、jetty 6.0
相关版本要求
Jetty 7 必须 Jdk 1.5+,Servlet 2.5,性能类似于 Tomcat 6
Jetty 8 必须 Jdk 1.6+,Servlet 3.0,性能类似于 Tomcat 7
Jetty 9 必须 Jdk 1.7+,Servlet 3.0+,性能类似于 Tomcat 8
接下来开始配置:
1.首先在maevn项目的pom.xml配置文件中引入插件
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.2.6.v20141205</version>
<configuration>
jetty性能的专门配置文件
<webDefaultXml>src/main/resources/jetty/webdefault.xml</webDefaultXml>
<webAppSourceDirectory>src/main/webapp</webAppSourceDirectory>
<contextPath>/</contextPath>
<connectors>
访问端口
<port>8888</port>
</connector>
</connectors>
</configuration>
</plugin>
2.运行maven命令 mvn jetty:run 或者在构建配置中配置参数
3.在启动成功后,会显示访问端口号 即8888
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Python-面向对象(组合、封装与多态)
一、组合 什么是组合? 就是一个类的属性 的类型 是另一个自定义类的 类型,也可以说是某一个对象拥有一个属性,该属性的值是另一个类的对象。 通过为某一个对象添加属性(这里的属性是另一个类的对象)的方式,间接将两个类关联整合,从而减少类与类之间的代码冗余 class A: pass class B: pass b = B() b.a=A() 借用之前的代码进行改进: class OldboyPeople: school = 'Oldboy' def __init__(self,name,age,sex): self.name = name self.age = age self.sex = sex class OldboyStudent(OldboyPeople): def __init__(self,name,age,sex,score=0): OldboyPeople.__init__(self,name,age,sex) self.score = score self.courses=[] def choose(self): print('%s choosing course' %...
- 下一篇
记维护旧项目遇到的问题
在一个发展一段时间的公司,里面或多或少有些早期的项目,今天再往一个早先的项目里面加东西,觉得效率好低,而且还一直遇到问题,耽误不少时间。 记录一下,省的那些时间白白浪费掉。 问题 项目启动慢是最大的问题,项目里面不知道引入了什么包,每次运行的时候都会新启动另外一个java的图标,而且重启的时候,项目都不会响应停止,要点击两次停止,项目才有反应。 项目里面用了很多的redis连接...,配置了很多的redisTemplate Bean。迷惑人 JPA的问题 JPA持久化的对象,主键ID手动分配报错。 ids for this class must be manually assigned before calling save() 不能实例化Repository对象,因为要持久化的对象有些熟悉没找到,JPA的规则比较多 使用@Query注解进行更新删除操作的时候,Can not issue data manipulation statements with executeQuery(). 要加上@Modifing注解 更新和删除操作的时候,还要加上事务的注解,nested excepti...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2整合Redis,开启缓存,提高访问速度
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8编译安装MySQL8.0.19
- CentOS8安装Docker,最新的服务器搭配容器使用