JHipster创建Java Web应用(图文)

简介J潮客

J潮客(jHipster)是什么东西? 是谁开始的?其实J潮客是开源技术, 在2013年由法国Java专家 Julien Dubois (朱利安 杜波尔斯)率先倡导,至今仍是J潮客项目主导者。简易直说它是工具集堆综合技术,意思是由多种技术工具配置而成的Java Web开发程式产生器。好处是由Java专家累积的开发经验,配上各类实用的框架技术,去繁取精的运用,全方位的配置,制成出完备的开发应用程式,绝对适用于面向服务的体系结构 (SOA).
J潮客包括最先进的Java 8,特色是多用注解, 不用XML 配置的组态,配备了全方位的工作环境,从开发,测试,监控到制成,以及云部署。能提供最先进的Java 技术如微服务综合技术 (Microservices)。

主要的技术有以下几种,简单介绍

如果想知道更多有关这些资讯,可问百度。

  • Spring Boot: 能建成独立Spring 的应用程式
  • Spring Security: 标准业内的授权和认证
  • AngularJS: JavaScript的MVC框架客户端
  • Bootstrap: 来自Twitter,是目前最受欢迎的前端框架
  • REST APIs: 基于Http协议实现资源操作
  • Liquid Database: 数据库源代码版本控制
  • CSS3 + 动画
  • HTML5: 移动开发主导(Mobil First)
  • Full internationalization support:支持完善的国际化文字
  • Web Socket:允许用户在浏览器中实现双向通信,实现数据的及时推送
  • 嵌入式tomcat ,jetty及undertow

创立项目工具技术选择多

  1. 自动配置依赖资源:Maven 或 Gradle
  2. 验证类型: Cookie type, JWT 和OAuth2
  3. 数据库: SQL 及 NOSQL (MySQL, Postgres, H2)
  4. 高速缓存: EhCache or Hazelcast
  5. 自动化重复任务:实时编辑: GULP 及 Grunt
  6. 各类工具:Yeoman, npm (nodejs), BrowserSync

安装J潮客(jHipster)

一、基础环境

建立J潮客 (jHipster) 的工作环境是必须的,需要配备有:
- Java 8 SDK
- Maven 或 Gradle
- nodeJs
- PhantomJS
- Xcode (ios)
- Mysql 或 Postgres (Mysql Workbench or pgAdmin3)
- Git 版本控制
- STS ide, Eclipse, Intellij IDEA, 其中一个
- 具体详细安装方法,网上多。必须测试好开发环境,各软件工具以最新版本安全运行。

(有关安装开源工具-J潮客,对于菜乌来说,可能是一个挑战,因为它是比较短暂历史,没有具体处理步骤提供,故此本文特别加入十分具体详细安装步骤显示。以便对应是否安装成功。)安装 J潮客有多种,本文只在本地安装Window上安装.

  • Windows 8 和 10: 要用有管理员权益的命令提示符 (cmd)
  • ios 和 Linux 用终端 terminal,用管理员权益安装(sudo)

1、PhantomJS环境配置

(1)下载PhantomJS.zip
(2)解压到固定目录
(3)将phantomjs_home\bin添加到path目录下

2、Nodejs环境配置

nodejs使用安装包正常安装后,node和npm都可以在windows下正常使用。但是,如果不进行必要的配置,通过npm安装的很多包是无法正常在cmd下面使用的。

nodejs安装后需要进行以下配置。、

(1)配置prefix和cache目录

示例目录地址为:C:\Program Files\nodejs

npm config set prefix “C:\Program Files\nodejs\node_global”
npm config set cache  “C:\Program Files\nodejs\node_cache

(2)配置环境变量
右击“计算机”—>”属性”—>”高级系统设置”—>”环境变量”

在”系统变量”中,设置 NODE_PATH
在系统变量里新建 NODE_PATH ,值为C:\Program Files\nodejs\node_global

这个值就是上一步中,通过 “npm config set prefix” 设置的值。可以,用下面命令查看

npm config get prefix

在”用户变量”中,修改path
修改用户变量中的path,添加C:\Program Files\nodejs\node_global。

这个值就是上一步中,通过 “npm config set prefix” 设置的值。

二、前期准备

在node中,安装依赖工具

安装 Yeoman:

npm install -g yo

安装 Bower:

npm install -g bower

安装 Gulp:

npm install -g gulp

安装 JHipster:

npm install -g generator-jhipster

三、创建工程

(一)、新建一个工程目录,本文中示例为JHipster_demo

(二)、打开CMD,进入到JHipster_demo目录,输入命令:

yo jhipster

如下图:

这里写图片描述

看到JHipster的Logo信息,说明启动成功,如下图:

这里写图片描述

(三)、根据自己的需要选择必要的配置,根据界面上的提示回答问题即可。用上下键选择,存在多选的地方,用空格配合上下键选择,回车确认。

1、你想创建什么类型的应用?

你可以选择:

  • 一体化应用:这是一个典型的,通用的应用。它容易使用和开发,是我们默认推荐的。
  • 微服务应用:采用微服务的架构,这是其中一个服务实例。
  • 微服务网关:采用微服务的架构,这里一个为微服务实例提供路由以及安全保障的应用。

这里写图片描述

2、你应用的名称

如题,输入你应用的名称。

这里写图片描述

3、你的 Java 包名 ?

你的 java 应用程序将使用此作为它的根包。这个值被存储在 Yeoman 在,下次运行生成器,它将成为默认值。当然,你可以通过提供一个新的值来覆盖它。

这里写图片描述

4、你选择哪种身份认证方式?

你可以选择:

  • 基于经典的会话认证机制, 做 java web 都知道(这也是许多人使用 Spring Security 的方式)。你也可以通过用这种方式来使用 Spring Social。Spring Social 可以让你使用社会化登陆(比如 Google,Facebook,Twitter), 这个配置项由 Spring boot 提供。
  • 基于 OAuth 2.0 的认证机制。(JHipster 会提供生成必要的 OAuth2 服务端代码和数据库表)。
  • 采用 JSON Web Token (JWT) 的认证机制。
  • OAuth 2.0 和 JWT 可以让你构建无状态的应用架构(他们不依赖 HTTP Session)。

这里写图片描述

5、你想使用哪种数据库?

你可以选择:

  • SQL 数据库 (H2, MySQL, MariaDB, PostgreSQL, Oracle),默认 使用Spring Data JPA 来访问。
  • MongoDB
  • Cassandra

这里写图片描述

6、你要在生产环境下采用哪种数据库?

这个选项的回答会被写入生产环境下的配置文件。你可以在src/main/resources/config/application-prod.yml文件中配置他。

如果你想使用 Oracle,你需要查看 [install the Oracle JDBC driver manually]

这里写图片描述

7、你要在开发环境下采用哪种数据库?

这个选项的回答会被写入开发环境下的配置文件。

你也可以选择:

  • 在内存中运行的 H2。这种方式很简单使用,但是你的数据会丢失当你重新启动服务器。
  • 数据存储在磁盘上的 H2。目前处在 BETA 测试状态(不支持 Windows),但这将最终是一个比在内存中运行更好的选择,因为你不会失去你的数据后,当应用程序重新启动后。
  • MySQL,和生产环节一样的数据库,这搭建的时候会有点麻烦。但是你最好在编码完成后,在和生产环境一样的数据库上跑一下程序。
    你可以在src/main/resources/config/application-dev.yml文件中配置它。

这里写图片描述

8、你想使用 Hibernate 二级缓存吗?

Hibernate是 JHipster 提供的 JPA 的实现。处于性能考虑,我们强烈建议你是有缓存,你可以根据你的应用来调整它。你可以选择使用ehcache(本地缓存) 或者Hazelcast(分布式缓存,用于集群环境)。

这里写图片描述

9、你想使用 Maven 还是 Gradle ?

你可以通过Maven或者Gradle来构建你的应用。Maven 相对 Gradle 更稳定、更成熟。而 Gradle 更灵活,更容易扩展。

这里写图片描述

10、你会在应用中使用的其它技术

这里写图片描述

11、你想使用 LibSass 来预处理你的 CSS 嘛?

Node-sass 是处理 CSS 的一个很好的方案,你需要运行一个 Gulp 服务来自动配置它。

这里写图片描述

12、你想通过 Angular Translate 来支持多语言嘛?

默认情况下 JHipster 提供l 优秀的国际化的支持,无论是在客户端与Angular Translate和在服务器端。但是国际化增加系统开销,管理起来会有些复杂,所以你可以选择不安装这个功能。

这里写图片描述

选择要支持本地的语言

这里写图片描述

选择要支持的其它语言

这里写图片描述

13、你想使用那个测试框架?

默认情况下 JHipster 提供 java 单元/集成测试(使用Spring JUnit支持)和 JavaScript 单元测试(使用Karma.js)。这也是一个可选项。

  • 使用 Gatling 进行性能测试。
  • 使用 Cucumber 模拟用户行为
  • 使用 Protractor 对 AngularJS 进行集成测试

这里写图片描述

选择完成之后,点击回车,就会开始执行代码的生成工作。完成之后,用你的IDE打开,我用的是Maven,所以执行:

mvn clean install

访问:

http://localhost:8080

就可以看到效果了。

命令选项

你也可以用一些可选的命令来运行 JHipster。这些选项可参考JHipster –help:
以下是可选项:
- –help - 查看生成器的选项和用法 。
- –skip-cache - 不记住你之前的回答 (默认: false)。
- –skip-install - 不自动安装依赖 (默认: false)。
- –skip-client - 不生成客户端代码 (默认: false)。这和运行yo jhipster:server效果一样。
- –skip-server - 不生成服务端代码 (默认: false)。这和运行yo jhipster:client效果一样。
- –skip-user-management - 跳过生成前后端用户管理相关代码 (默认: false)
- –i18n - 禁用或允许客户端 i18n 国际化支持。(默认: true)。
- –with-entities - 重新生成现有的实体如果他们已经存在。(using their configuration in the .jhipster folder) (默认: false)
- –check-install - 检查你的安装是否正确(默认: true)。

参考资料:


[1]:http://lming.leanote.com/post/Creating-an-application
[2]:http://www.zuidaima.com/share/2898005074136064.htm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码匠君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值