Gradle之恋(14)-实战spring mvc插件式多项目构建
时间:2022-07-22
本文章向大家介绍Gradle之恋(14)-实战spring mvc插件式多项目构建,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
楔子
本文继上一篇的Gradle多项目构建,来具体创建一个web项目,取名为kweb(king of web),代码托管于github:https://github.com/zhaiqianfeng/kweb.
主要是使用spring mvc+gradle+servlet3.0的web fragment特性来进行web插件式开发,旨在提供一个集成基础功能模块的快速开发半成品web框架.
kweb结构
kweb的结构如下,demo-frament是用于实例插件,demo-web用于实例web,kbase-fragment和kuser-frament分别是基础插件和用户插件
├── build.gradle #Gradle build.gradle
├── buildscript
│ └── gretty.plugin #gretty 插件
├── demo-fragment #demo插件
├── demo-web #demo website,可以把别的插件配置到此web主题
├── gradle #gradle wrapper,把gradle.bin放在此目录,避免了下载缓慢
│ └── wrapper
│ ├── gradle-3.3-bin.zip
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── kbase-fragment #kbase插件 基础插件,比如验证码
├── kuser-fragment #kuser插件 用户管理管理相关
├── kutils #kweb的工具项目
└── settings.gradle #gradle的多项目配置文件
插件的结构,如kuser-frament
kuser-fragment/
└── src
├── main
│ ├── java #java代码
│ └── resources
│ ├── META-INF
│ │ ├── resources
│ │ │ ├── assets #插件的js,css,图片等资源
│ │ │ └── WEB-INF
│ │ │ └── jsp #插件的jsp文件,当然也可以使用其他模板
│ │ │ └── user
│ │ │ └── login.jsp
│ │ └── web-fragment.xml #插件的部署配置文件
│ └── spring
│ └── application-config.xml #插件的spring bean配置文件
└── test
├── java #java单元测试
└── resources #java单元测试资源
├── log4j.properties
├── properties
└── spring
├── application-config.xml
└── dispatcher-servlet.xml
clone代码后,可以进入code执行gradle命令
./gradlew demo-web:appRun
或windows下
gradlew.bat demo-web:appRun
即可根据提示打开 http://localhost:8080/demo-web/ 预览.
贡献
kweb是我计划作为长期维护的一个开源项目,如果你感兴趣可以fork并贡献代码: https://github.com/zhaiqianfeng/kweb, 虽然目前并不完善,但相信开源的力量,相信大众的力量.
- C++实现神经网络之一 | Net类的设计和神经网络的初始化
- Redis源码分析(一)——Redis数据结构-字符串SDS
- 使用RNN预测股票价格系列二
- 微软 WCF的几种寄宿方式,寄宿IIS、寄宿winform、寄宿控制台、寄宿Windows服务
- 深度学习框架之一:Theano | Lasagne简单教程
- 有趣的应用 | 使用RNN预测股票价格系列一
- 通过深度学习实现安全帽佩戴的检测
- python及numpy,pandas易混淆的点
- 深度学习中的损失函数总结以及Center Loss函数笔记
- TF使用例子-LSTM实现序列标注
- 图像学习-验证码识别
- ResNet原理及其在TF-Slim中的实现
- 理工男的文科梦 —— LSTM深度学习写春联
- keras学习笔记-黑白照片自动着色的神经网络-Alpha版
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- CVE-2020-14644 weblogic iiop反序列化漏洞
- Ubuntu 17.10 安装折腾记录
- charles工具使用
- 干货 | 从0到1,搭建一个体系完善的前端React组件库
- LeetCode 01两数之和&02两数相加
- 给GitHub "彩蛋" readme 生成自定义统计信息
- Android |《看完不忘系列》之okhttp
- pt-osc改表过程中的中文乱码问题
- Hive Query生命周期 —— 钩子(Hook)函数篇
- python快速排序
- 扩展 Microsoft.Owin.Security
- Angular 2 版本的 ng-bootstrap 初体验
- 揭开MySQL“锁”的神秘面纱
- 从0到1开发测试平台(九)后端对接口response的封装
- 在 Mac OS X 上安装和配置 Wine