iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Gradle构建基本的Web项目结构
  • 436
分享到

Gradle构建基本的Web项目结构

2024-04-02 19:04:59 436人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

目录一、环境要求二、创建应用结构三、添加Gradle脚本四、编写Servlet五、添加请求页面和jsP页面六、添加gretty插件,以便于直接运行程序补充、切换Servlet容器及更

一、环境要求

  • 一个好用的IDE编辑工具
  • Java环境(>=8)
  • Gradle构建工具(>=4.10.3)

二、创建应用结构

gradle使用war插件来进行JAVA WEB项目构建,war插件继承了Java 插件并添加了对WEB应用程序的支持。默认情况下,使用src/main/webapp目录作为web的资源目录。

webdemo项目建立如下目录结构

webdemo/
    src/
        main/
            java/
            webapp/
        test
            java/

servlet或其他Java类都将放在src / main / java中,测试代码写在src / test / java,其他Web资源将放在src / main / webapp

三、添加Gradle脚本

在项目根目录下创建一个build.gradle文件,内容如下:

plugins {
    id 'war'  // ①
}
repositories {
    jcenter()
}
dependencies {
    providedCompile 'javax.servlet:javax.servlet-api:3.1.0' // ②
    testCompile 'junit:junit:4.12'
}

① 添加并使用war插件

② 引入servlet依赖包,版本为3.1.0或更高

war插件添加了providerCompile和providerRuntime,类似于常规Java应用程序中的compile和runtime。providerCompile表示本地运行时所需的依赖关系,但打包时不会将其添加到生成的webdemo.war文件中。

再添加war插件时,无需指定版本,war和jar两个插件的版本,gradle已经内置进行管理了。

四、编写Servlet

从3.0版本开始,可以使用注解来开发Servlet,下面就会使用这种方式。在src/main/java下创建包org/gradle/demo,添加servlet文件HelloServlet.java,内容如下:

package org.gradle.demo;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.Http.httpservlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(name = "HelloServlet", urlPatterns = {"/hello"}, loadStartup = 1) // ①
public class HelloServlet extends HttpServlet {
  protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    response.getWriter().print("Hello, World!");  // ②
  }
  protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    String name = request.getParameter("name");
    if (name == null) name = "World";
    request.setAttribute("user", name);
    request.getRequestDispatcher("response.jsp").forward(request, response); // ③
  }
}

① 基于注解的Servlet写法

② GET请求,返回基本字符串

③ POST请求,获取name参数并跳转到JSP页面

五、添加请求页面和JSP页面

首先在src/main/webapp下添加一个index.html文件,方便发送GETPOST请求。

index.html内容如下

<html>
<head>
  <title>Web Demo</title>
</head>
<body>
<p>Say <a href="hello">Hello</a></p> 

<fORM method="post" action="hello">  
  <h2>Name:</h2>
  <input type="text" id="say-hello-text-input" name="name" />
  <input type="submit" id="say-hello-button" value="Say Hello" />
</form>
</body>
</html>

然后在src/main/webapp下添加一个response.jsp文件,也就是当接收到post请求时跳转的页面。response.jsp内容如下

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
    <head>
        <title>Hello Page</title>
    </head>
    <body>
        <h2>Hello, ${user}!</h2>
    </body>
</html>

六、添加gretty插件,以便于直接运行程序

gretty插件是社区支持的杰出插件,可以在Gradle插件存储库中找到。该插件支持在Jetty或Tomcat上运行或测试Web应用程序。

build.gradle脚本的plugins中添加如下

plugins {    id 'war'    id 'org.gretty' version '2.2.0' }

现在可以使用appRun任务运行我们的程序了,默认是使用Jetty容器。运行输出如下

$ gradle appRun
00:32:30 INFO  Jetty 9.2.24.v20180105 started and listening on port 8080
00:32:30 INFO  webdemo runs at:
00:32:30 INFO    http://localhost:8080/webdemo

> Task :appRun
Press any key to stop the server.
<===========--> 87% EXECUTING [10s]
> :appRun

出现http://localhost:8080/webdemo说明已经运行成功了, 访问这个地址出现index.html所呈现的页面,点击一下试试吧。

补充、切换Servlet容器及更多配置

gretty目前支持的容器如下

Jetty

‘jetty7’, ‘jetty8’, ‘jetty9’, ‘jetty93’, ‘jetty94’

Tomcat

‘tomcat7’, ‘tomcat8’

只需要在build.gradle文件中添加如下block即可

gretty {
  httpPort = 8083 // 端口
  contextPath = '/demo'  // 容器路径
  servletContainer = 'tomcat8' // 容器类型
}

以上就是Gradle创建基本的Web项目的详细内容,更多关于Gradle创建基本的Web项目的资料请关注编程网其它相关文章!

--结束END--

本文标题: Gradle构建基本的Web项目结构

本文链接: https://www.lsjlt.com/news/143505.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Gradle构建基本的Web项目结构
    目录一、环境要求二、创建应用结构三、添加Gradle脚本四、编写Servlet五、添加请求页面和JSP页面六、添加gretty插件,以便于直接运行程序补充、切换Servlet容器及更...
    99+
    2024-04-02
  • Gradle构建基本原理
    Gradle是一个基于Groovy的构建工具,它的构建基本原理主要包括以下几个方面:1. 构建脚本:Gradle使用Groovy语言...
    99+
    2023-09-21
    Gradle
  • java项目构建Gradle怎么用
    这篇文章给大家分享的是有关java项目构建Gradle怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、相关介绍Gradle是一个好用的构建工具 ,使用它的原因是:配置相关依赖代码量少,不会像maven一样...
    99+
    2023-06-29
  • java项目构建Gradle的使用教程
    目录一、相关介绍二、安装三、IED中的使用1、IDEA2、Eclipse四、问题说明一、相关介绍 Gradle是一个好用的构建工具 ,使用它的原因是: 配置相关依赖代码量少,不会像m...
    99+
    2024-04-02
  • idea如何构建web项目
    本篇内容介绍了“idea如何构建web项目”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、idea构建web项目idea构建web项目的超...
    99+
    2023-07-05
  • cocos构建 Android 项目Android studio gradle 8.0 报错
    记录一下踩坑 今天用cocos构建 了一个Android 项目 然后用Android studio 打开 TestProject_Helloworld\build\android\proj 项目, 由于我的Android studio 用的...
    99+
    2023-08-16
    android android studio gradle
  • vue-cli创建项目及项目结构解析
    目录1.进入一个目录,创建项目2.选择你需要的配置项2.1 选择vue版本2.2 选择选择是否使用history router2.3 选择css 预处理器2.4 选择Eslint代码...
    99+
    2024-04-02
  • Android使用Gradle kotlin dsl 优雅配置构建项目
    目录 概述1.Gradle Kotlin-DSL配置1.1 在根目录下建立一个buildSrc目录,1.2.新建build.gradle.kts文件并添加Kotlin dsl相关配置 2....
    99+
    2023-10-11
    android kotlin 开发语言 kotlin dsl Android构建 gradle
  • 如何理解Angular项目构建中的组织结构
    如何理解Angular项目构建中的组织结构,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。前几天刚刚把项目的组织结构进行了一次重构,这是前端项目...
    99+
    2024-04-02
  • 教你快速构建一个基于nginx的web集群项目
    目录一 ·项目环境二· 项目描述三· 项目步骤1.安装2.配置3.实现负载均衡4.搭建服务器5.压力测试6.监控7.高可用8.域名解析9.提升性能10.使用ansible编写play...
    99+
    2024-04-02
  • idea构建web项目-超详细教程
    1、idea构建web项目 idea构建web项目的超级详细教程,一步一步来,完全没问题! 新建一个空项目 新建java模块,名为webDemo1 3、选择webDemo1右键,选择Add...
    99+
    2023-09-02
    intellij-idea servlet java
  • 【Android Gradle 插件】Android Studio 工程 Gradle 构建流程 ② ( settings.gradle 构建脚本分析 | 根目录下 build.gradle 分析 )
    文章目录 一、settings.gradle 构建脚本分析1、Maven 远程仓库配置2、目录配置3、完整代码示例 二、根目录下 build.gradle 构建脚本分析 一、settings.gradle 构建脚本分...
    99+
    2023-08-16
    android android studio gradle settings.gradle build.gradle
  • 使用SpringBoot中web项目推荐目录结构的问题
    目录下面是我创建的目录结构项目结构静态资源的目录结构完整项目结构SpingBoot 365计划开始更新了,计划手敲365个dSpringBoot案例回顾总结形成知识体系。目前已经输出...
    99+
    2024-04-02
  • 2-1. Maven 三层项目结构搭建
    前言 通过上文:1-3. 开发环境安装(全),我们完成了开发环境的安装! 本文开始第二章:二、项目结构搭建 正所谓:万丈高楼平地起,打好地基是关键! 主要内容:创建Maven项目、三层架构说...
    99+
    2023-09-01
    spring boot java maven 项目结构
  • Python项目通用的目录结构总结
    一个好的项目结构会让我们在开发中更加得心应手。 对于Web项目,我们通常采用Flask或Django等框架,会有一套适合这种项目的工程目录。 对于爬虫项目,通常有Scrapy等开源框架,也会提供一套适合这种项目的工程目录。 对...
    99+
    2023-01-31
    结构 目录 项目
  • FastApi怎么快速构建一个web项目
    这篇文章主要介绍“FastApi怎么快速构建一个web项目”,在日常操作中,相信很多人在FastApi怎么快速构建一个web项目问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”FastApi怎么快速构建一个we...
    99+
    2023-07-05
  • 如何以新的方式构建 Golang 模块和项目结构
    哈喽!今天心血来潮给大家带来了《如何以新的方式构建 Golang 模块和项目结构》,想必大家应该对Golang都不陌生吧,那么阅读本文就都不会很困难,以下内容主要涉及到,若是你正在学习Golang,...
    99+
    2024-04-05
  • Java项目的目录结构详解
    一个java web项目 目录分为两个部分 ① Web应用的根目录下子目录WEB-INF,里面内容不能被客户端访问的,包括专用Web应用程序软件,包括Servlet类文件、部署描述符...
    99+
    2024-04-02
  • 段落标签解析:HTML 中构建文本结构的基础
    开始和结束标签 段落标签成对使用,由开始标签 () 和结束标签 () 组成。开始标签指示段落的开始,而结束标签标记段落的结束。 创建视觉分隔 段落标签在视觉上分隔文本块,使内容更易于阅读和理解。通过将文本划分为逻辑段落,读者可以轻松地识别...
    99+
    2024-04-02
  • gomodule构建项目的实现
    目录module介绍激活go module创建go module项目go 工程构建在go 1.11版本中引入了Go Module内置的包管理模块,是GOPATH的替代品,集成了版本控...
    99+
    2023-03-01
    go module构建项目 go module构建
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作