发表于: 2025-04-28 21:04:56

0 96


今天完成的事情:配置jetty。


Jetty是一个开源、基于标准、全功能实现的JAVA服务器。它在Apache2.0协议下发布,因此可以自由的用于商业用途和发行。首创于1995年,Jetty受益于一个广大的用户社区,有一个稳定的核心开发者来持续专著的开发。有很多正在运行的使用Jetty的例子,这也不过是千分之十的Jetty实例。 虽然Jetty的目标很低调, 无数的站点和产品使用Jetty,但是Jetty无处不见!
Jetty可以用来:
◆一个传统的web 服务器来处理静态和动态网页;
◆最为一个专用HTTP服务器的后台来处理动态网页,就像Apache使用mod_proxy;
◆作为一个JAVA应用程序的内嵌组件。
这种灵活性意味着Jetty可以用在多种场合:
◆随产品做外盒使用,例如Tapestry, Liferay;
◆随书光盘里,用来运行例子;
◆合并到程序里提供HTTP传输,例如JXTA, MX4J;
◆集成到JavaEE服务器作为web容器,例如JOnAS, Geronimo, JBoss, JFox;
◆作为一个应用程序的组件,例如Continuum, FishEye, Maven
Jetty的特点:
简单
Jetty的指导原则是“简单不复杂“。Jetty容易理解和使用:
◆通过API或者XML文件配置;
◆XML文件语法直接了当地在POJOs上影射API操作;
◆默认的配置文件可以使Jetty作为外盒(out-of-the-box);
◆只需少量的行数就可以嵌入一个Jetty实例。

可扩展性
在异步的WEB2.0类型的应用程序使用的技术,例如AJAX,连接停留时间要比处理一个静态页长,线程和内存需求可能急剧增长。
底层必须优雅地处理这些问题,一个低速的数据库连接可能造成站点瘫痪,因为线程被占满了。使用Jetty...

◆在高强度服务压力性能损失少;
◆在现有的web规范的框架下,能处理大用户负载,保证长时间会话的连续性;
◆整合现有聚类,例如WADI和Terracotta

高效
大量的努力用来优化代码,精炼的代码以至于漏洞尽可能少:
◆相关性尽可能少;
◆核心保持最小,附加函数放在可选包中;
◆可扩展性是一个关键问题;
◆高强度下性能衰减平缓。

嵌入性
Jetty是一个非常好的组件。这意味着很容易嵌入到一个应用程序中,而不需要应用程序去适应它:
◆使用依赖注射和反转的控制模式

插入性
Jetty被建构的适合
Jetty内建插入性。所有Jetty核心组件的实现允许不同的选择,至少一个或者更多,组件的实现总是会提供的。如果这些仍然不能满足你的要求,你可以自由的编写底层接口和抽象类最为基础。这意味着Jetty能够容易地用在一个特别的应用环境中。当Jetty在一个 JavaEE服务器中作为web容器时,这是相当有用的,Jetty的插入性保证了它和主机容器的一个紧密的集成。

实际操作:

在pom.xml文件中添加依赖。

<build>

    <plugins>

        <plugin>

            <groupId>org.eclipse.jetty</groupId>

            <artifactId>jetty-maven-plugin</artifactId>

            <version>11.0.15</version>

            <configuration>

                <webApp>

                    <contextPath>/</contextPath>

                </webApp>

            </configuration>

        </plugin>

    </plugins>

</build>


遇到的问题:使用的jetty版本太高,修改为9版本的。


添加完成后,运行控制器。

<html>

<head>
    <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1" />
    <title>Error 406 Not Acceptable</title>
</head>

<body>
    <h2>HTTP ERROR 406 Not Acceptable</h2>
    <table>
        <tr>
            <th>URI:</th>
            <td>/api/students/all</td>
        </tr>
        <tr>
            <th>STATUS:</th>
            <td>406</td>
        </tr>
        <tr>
            <th>MESSAGE:</th>
            <td>Not Acceptable</td>
        </tr>
        <tr>
            <th>SERVLET:</th>
            <td>dispatcherServlet</td>
        </tr>
    </table>
    <hr /><a href="https://eclipse.org/jetty">Powered by Jetty:// 9.4.51.v20230217</a>
    <hr />

</body>

</html>

运行后各种报错。。。。。

遇到的问题:在maven项目中运行run老是报错。

明天的计划:把run跑通。使前端请求可以返回值。


返回列表 返回列表
评论

    分享到