百度快照 如何抓取网站,wordpress忘记了用户名,xsxz wordpress,wordpress用户增加插件本节通过一个简单的javaweb项目来体会gradle的使用需求构建一个javaweb项目#xff0c;搭建jspservlet开发环境可以将需求分解为两步#xff1a;使用gradle构建一个java项目为该项目构建web视图层工具gradle4.3ideajdk 1.8实验过程首先在idea中创建一个空的gradle项目创建如下…本节通过一个简单的javaweb项目来体会gradle的使用需求构建一个javaweb项目搭建jspservlet开发环境可以将需求分解为两步使用gradle构建一个java项目为该项目构建web视图层工具gradle4.3ideajdk 1.8实验过程首先在idea中创建一个空的gradle项目创建如下目录-文件结构这里需要特别说明下面的目录结构与文件组织方式是gradle的java插件和war插件对于java和javaweb项目的默认约定结构如果该项目遵守约定则几乎不需要配置源代码文件、web.xml、测试文件等的路径这也是体现gradle汲取了maven的优点约定优于配置。在构建脚本中写入如下内容group com.shyversion 1.0-SNAPSHOTapply plugin:javaapply plugin:warapply from: https://raw.github.com/akhikhl/gretty/master/pluginScripts/gretty.plugin//这里使用了gradle官方提供的Gretty插件来完成传统web容器的功能这个插件提供了各种run、start、debug 的task做实验比较方便//执行jar任务时会在jar文件代码清单中加入Main-Class头jar{//Groovy的闭包委托特性manifest{attributes Main-Class:com.shy.todo.ToDoApp}}repositories{mavenCentral();//对maven central 2仓库访问的快捷方式}dependencies{providedCompile javax.servlet:servlet-api:2.5runtime javax.servlet:jstl:1.2}task wrapper(type:Wrapper ){gradleVersion 4.3}4.web.xml配置如下使用一个ToDoServlet来接受所有的请求xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsdversion2.5ToDoServletcom.shy.todo.web.ToDoServletToDoServlet/5.ToDoServlet负责转发请求public class ToDoServlet extends HttpServlet{private ToDoRepository toDoRepository new InMemoryToDoRepository();Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {String servletPath req.getServletPath();String view processRequest(servletPath,req);RequestDispatcher dispatcher req.getRequestDispatcher(view);dispatcher.forward(req,resp);System.out.println(hello);}private String processRequest(String servletPath,HttpServletRequest request){if(servletPath.equals(/all)){return /jsp/todo-list.jsp;}else {return not-found.jsp;}}}以上便是项目源码可以看出如果遵守gradle的插件对于项目的一系列约定则构建脚本非常简洁实际上构建java项目只需要一行apply plugin:java而构建web项目也仅需要如下脚本声明插件和依赖apply plugin:warrepositories{mavenCentral();//对maven central 2仓库访问的快捷方式}dependencies{providedCompile javax.servlet:servlet-api:2.5runtime javax.servlet:jstl:1.2}实验结果由于使用了Gretty插件则编译打包部署的步骤仅需要执行一个taskgradle appRun然后便可在浏览器中访问默认访问地址为localhost:8080/[项目名],这个请求被servlet拦截到并进行处理。