Giới thiệu về JHipster
Người dịch : Nguyễn Xuân Trường - Học viên lớp Java08
Email liên hệ: [email protected]ài ghi chép gốc: https://www.baeldung.com/jhipster
1. Giới thiệu
Bài ghi chép này tiếp tục hỗ trợ cho mình tầm nhìn tổng quan tiền về JHipster, chỉ dẫn các bạn cơ hội tạo ra một phần mềm vẹn toàn khối giản dị và đơn giản và những thực thể tùy chỉnh bằng phương pháp dùng những dụng cụ loại mệnh lệnh.
Chúng tao cũng tiếp tục đánh giá mã được tạo ra trong những bước và cũng bao hàm những mệnh lệnh xây cất và đánh giá tự động hóa.
Bạn đang xem: jhipster la gi
2. JHipster là gì
Nói tóm , JHipster là một trình tạo ra mã cấp cho cao được xây cất dựa vào một list đa dạng và phong phú những dụng cụ và nền tảng cải tiến và phát triển tiên tiến.
Các bộ phận chủ yếu của dụng cụ là:
- Yeoman, một dụng cụ giàn giáo phía trước
- Old Good Spring Boot
- AngularJS, framework Javascript nổi trội. JHipster cũng thao tác làm việc với AngularJS 2
JHipster tạo nên, chỉ với cùng 1 vài ba mệnh lệnh shell, một dự án công trình trang web Java đầu tiên với skin người tiêu dùng thân mật thiện, thỏa mãn nhu cầu, REST API được lập trở thành văn phiên bản, phạm vi đánh giá toàn vẹn, bảo mật thông tin cơ phiên bản và tích hợp ý hạ tầng dữ liệu! Mã thành quả được trao xét chất lượng và tuân theo gót những cách thức hoặc nhất của ngành.
Các technology chủ yếu không giống được nó tận dụng tối đa là:
- Swagger, mang lại tư liệu API
- Maven, Npm, Yarn, Gulp và Bower với tư cơ hội là quản lý và vận hành dependency và xây cất công cụ
- Jasmine, Protractor, Cucumber và Gatling thực hiện khuông demo nghiệm
- Liquibase nhằm lập phiên phiên bản hạ tầng dữ liệu
Chúng tao ko sẽ phải dùng toàn bộ những mục này bên trên phần mềm vẫn tạo ra của tất cả chúng ta. Các mục tùy tuyển chọn được lựa chọn vô quy trình tạo ra dự án công trình.
Một phần mềm rất đẹp tự JHipster tạo ra. Đây là thành quả của việc làm tuy nhiên công ty chúng tôi tiếp tục tiến hành vô trong cả nội dung bài viết này
3. Cài đặt
Để setup JHipster, trước tiên tất cả chúng ta cần thiết setup toàn bộ những dependency của nó:
- Java - khuyến khích dùng phiên bản Java 8 Oracle website
- Git - khối hệ thống trấn áp phiên bản
- NodeJS Node.js website
- Yeoman: npm install -g yo
- Yarn
Đó là đầy đủ những dependency nếu khách hàng đưa ra quyết định dùng AngularJS 2. Tuy nhiên, nếu như mình thích dùng AngularJS 1 thay cho thế, các bạn cũng tiếp tục cần thiết setup Bower và Gulp.
Bây giờ, nhằm đoạn, tất cả chúng ta chỉ việc setup chủ yếu JHipster. Đó là phần dễ dàng nhất. Vì JHipster là 1 trong trình tạo ra Yeoman, tức là 1 trong gói Javascript, việc setup cũng giản dị và đơn giản như chạy một mệnh lệnh shell đơn giản:
yarn global add generator-jhipster
Chúng tao vẫn dùng trình quản lý và vận hành gói Yarn nhằm setup trình tạo ra JHipster.
4. Tạo mới nhất một Project
Để tạo ra một dự án công trình JHipster về cơ phiên bản là xây cất một dự án công trình Yeoman. Mọi loại chính thức với mệnh lệnh yo:
mkdir end-course-proj && cd end-course-proj
yo jhipster
Thao tác này sẽ tạo nên folder dự án công trình của tất cả chúng ta, mang tên là end-course-proj và phát động skin loại mệnh lệnh của Yeoman tiếp tục chỉ dẫn công ty chúng tôi tạo ra dự án công trình.
Quy trình bao hàm 15 bước. Tôi khuyến nghị các bạn tìm hiểu những tùy lựa chọn đã có sẵn bên trên từng bước. Trong phạm vi của nội dung bài viết này, công ty chúng tôi sẽ tạo nên một phần mềm. Đơn vẹn toàn, giản dị và đơn giản, ko sai chếch rất nhiều đối với những tùy lựa chọn đem ấn định.
Dưới đó là quá trình sở hữu tương quan nhất cho tới nội dung bài viết này:
- Type of application - Chọn Monolithic application (recommended for simple projects)
- Installation of other generators from the JHipster Marketplace - Chọn N. Trong đoạn này, công ty chúng tôi hoàn toàn có thể mong muốn setup những tiện nghi bổ sung cập nhật thú vị. Một số cơ hội phổ cập là truy thuế kiểm toán đơn vị chức năng được cho phép truy thăm dò dữ liệu; bootstrap-material-design, dùng những Material Design components và angular-
- Maven hoặc Gradle - Chọn Maven
- Other technologies - Không lựa chọn ngẫu nhiên tùy lựa chọn nào là, chỉ việc nhấn Enter nhằm gửi sang trọng bước tiếp sau. Tại phía trên tất cả chúng ta hoàn toàn có thể lựa chọn cắm Đăng nhập social với Google, Facebook, Twitter, đó là một chức năng đặc biệt hoặc.
- Client framework - Chọn Angular.
- Enable internationalization - Y, tiếp sau đó lựa chọn English thực hiện ngữ điệu u đẻ. Chúng tôi hoàn toàn có thể lựa chọn từng nào ngữ điệu tùy quí như ngữ điệu loại nhì.
- Test frameworks - Chọn Gatling và Protractor.
JHipster sẽ tạo nên những tệp dự án công trình và tiếp sau đó tiếp tục chính thức setup những phần dựa vào. Thông báo sau sẽ tiến hành hiển thị vô đầu ra:
Xem thêm: rau muong xao toi tieng anh la gi
I'm all done. Running npm install for you lớn install the required
dependencies. If this fails, try running the command yourself.
Quá trình setup dựa vào hoàn toàn có thể mất mặt một ít thời hạn. Sau Khi triển khai xong, nó sẽ bị hiển thị:
Server application generated successfully.
Run your Spring Boot application:
./mvnw
Client application generated successfully.
Start your Webpack development server with:
npm start
Dự án của công ty chúng tôi hiện nay đã và đang được tạo ra. Chúng tao hoàn toàn có thể chạy những mệnh lệnh chủ yếu bên trên folder gốc của dự án:
./mvnw #starts Spring Boot, on port 8080
./mvnw clean test #runs the application's tests
yarn test #runs the client tests
JHipster tạo ra một README, được bịa đặt tức thì vô folder gốc của dự án công trình của bọn chúng ta. Tệp cơ chứa chấp những chỉ dẫn nhằm chạy nhiều mệnh lệnh hữu ích không giống tương quan cho tới dự án công trình của bọn chúng .
5. Tổng quan tiền về mã vẫn tạo
Hãy coi những tệp được tạo ra tự động hóa. Quý Khách tiếp tục nhận biết rằng dự án công trình nom khá giống như một dự án công trình Java / Spring chi tiêu chuẩn chỉnh, tuy nhiên sở hữu thật nhiều chức năng bổ sung cập nhật.
Vì JHipster cũng đảm nhiệm việc tạo ra mã skin người tiêu dùng nên các bạn sẽ nhìn thấy tệp package.json, folder webpack và một vài nội dung tương quan cho tới trang web không giống.
Hãy nhanh gọn tìm hiểu một vài tệp cần thiết.
5.1. Back-end Files
- Như mong ngóng, mã Java được chứa chấp vô folder src/main/java
- Thư mục src/main/resources sở hữu một vài nội dung tĩnh được dùng vày mã Java. Tại phía trên, công ty chúng tôi sẽ
tìm thấy những tệp nhiều ngữ điệu (trong folder i18n), những khuôn mẫu gmail và một vài tệp thông số kỹ thuật. - Bài đánh giá đơn vị chức năng và tích hợp ý ở trong folder src / test / java.
- Test hiệu suất - Performance test (Gatling) ở trong src/test/gatling. Tuy nhiên, bên trên thời điểm đó,
sẽ không tồn tại nhiều nội
dung vô folder này. Khi công ty chúng tôi vẫn tạo ra một vài thực thể, những bài bác đánh giá hiệu suất cho những đối
tượng cơ sẽ tiến hành bịa đặt bên trên phía trên.
5.2. Front-end
- Thư mục skin người tiêu dùng gốc là src/main/webapp
- Thư mục app chứa đựng nhiều mô-đun AngularJS
- i18n chứa chấp những tệp nhiều ngữ điệu mang lại phần skin người dùng
- Bài đánh giá đơn vị chức năng - Unit tests (Karma) ở trong folder src/test/javascript/spec
- Kiểm tra đầu cuối - End-to-end tests (Protractor) ở trong folder src/test/javascript/e2e
6. Tạo những entity tùy chỉnh
Các entity là những khối xây cất của phần mềm JHipster của công ty chúng tôi. Chúng thay mặt cho những đối tượng người sử dụng marketing, như User, Task, Blog, Comment, v.v.
Tạo những entity với JHipster cơ là 1 trong quy trình ko khó khăn. Chúng tao hoàn toàn có thể tạo ra một đối tượng người sử dụng bằng phương pháp dùng những dụng cụ loại mệnh lệnh, tương tự động như cơ hội tất cả chúng ta vẫn tạo ra chủ yếu dự án công trình hoặc trải qua JDL-Studio, một dụng cụ trực tuyến tạo nên màn biểu diễn JSON của những entity tuy nhiên về sau hoàn toàn có thể được nhập vô dự án công trình của tất cả chúng ta.
Trong nội dung bài viết này, tất cả chúng ta hãy dùng những dụng cụ loại mệnh lệnh sẽ tạo nhì thực thể: Post và Comment.
Post cần sở hữu title, nội dung văn phiên bản và ngày tạo ra. Nó cũng cần tương quan cho tới , người tạo nên Post. Một User hoàn toàn có thể có tương đối nhiều Posts được links với chúng ta.
Một bài bác Post cũng hoàn toàn có thể không tồn tại hoặc nhiều Comments. Mỗi Comment sở hữu một văn phiên bản và ngày tạo ra.
Để kích hoạt quy trình tạo ra thực thể Post của tất cả chúng ta, hãy gửi cho tới folder gốc của dự án công trình của tất cả chúng ta và nhập:
Bây giờ hãy tuân theo quá trình được trình diễn vày skin.
- Thêm ngôi trường title mang tên title của type String và thêm thắt một vài quy tắc xác thực vô ngôi trường (Required, Minimum length và Maximum length).
- Thêm một ngôi trường không giống được gọi là nội dung content của type String và thực hiện mang lại nó equired.
- Thêm ngôi trường loại tía mang tên là createDate, nằm trong type LocalDate.
- Bây giờ hãy thêm thắt quan hệ với User. Lưu ý rằng entity User vẫn tồn bên trên. Nó được tạo nên vô quy trình tạo hình dự án công trình. Tên của entity không giống là user, thương hiệu quan hệ là creator và loại là nhiều-một many-to-one, ngôi trường hiển thị là name và chất lượng rộng lớn nên được đặt quan hệ là cần required.
- Không lựa chọn dùng DTO, thay cho vô cơ hãy dùng thẳng entity.
- Chọn để mang repository thẳng vô service class. Lưu ý rằng, vô một phần mềm trái đất thực, có lẽ rằng tiếp tục phải chăng rộng lớn nếu như tách REST controllers ngoài service class.
- Để kết đôn đốc, hãy lựa chọn cuộn vô hạn thực hiện loại phân trang.
- Cấp quyền mang lại JHipster nhằm ghi đè lên trên những tệp hiện nay sở hữu nếu như được đòi hỏi.
Lặp lại tiến độ bên trên sẽ tạo một entity mang tên Comment, với nhì ngôi trường, văn bảntext nằm trong loại String và Ngày tạo ra createdDate nằm trong loại LocalDate. Comment cũng cần sở hữu quan hệ nhiều-một many -to-one cần với Post.
Chính nó! Có nhiều bước nhằm tiến hành tiến độ, tuy nhiên các bạn sẽ thấy rằng ko mất quá nhiều thời hạn nhằm triển khai xong bọn chúng.
Bạn tiếp tục nhận biết rằng JHipster tạo ra hàng loạt những tệp mới nhất và sửa thay đổi một vài tệp không giống, như một trong những phần của quy trình tạo ra những entity: - Thư mục .jhipster được tạo ra, chứa chấp tệp JSON cho từng đối tượng người sử dụng. Các tệp cơ tế bào miêu tả cấu hình của những entity.
- Các lớp được chú quí @Entity thực tiễn ở trong domain package.
- Repository được tạo ra vô package repository.
- REST controllers bịa đặt vô package trang web.rest.
- Các thay cho thay đổi của Liquibase cho từng đợt tạo ra bảng ở trong folder resources / config / liquibase / changelog.
- Trong phần front-end, một folder cho từng thực thể được tạo ra vô folder entities.
- Các tệp quốc tế hóa được thiết lập vô folder i18n (vui lòng sửa thay đổi bọn chúng nếu khách hàng muốn).
- Một số test, front-end và back-end được tạo ra vô folder src / test.
Đó là tương đối nhiều ! Vui lòng chạy những bài bác test và đánh giá kỹ coi toàn bộ đều băng qua.
Bây giờ tất cả chúng ta cũng hoàn toàn có thể chạy những bài bác hiệu suất với Gatling, bằng phương pháp dùng mệnh lệnh (ứng dụng cần chạy nhằm những bài bác đánh giá này vượt lên trên qua):
Nếu mình thích đánh giá skin người tiêu dùng đang được hoạt động và sinh hoạt, hãy phát động phần mềm vày ./mvnw, điều nhắm đến http: // localhost: 8080 và singin với tư cơ hội người tiêu dùng admin (mật khẩu là admin).
Chọn Post bên trên thực đơn bên trên nằm trong, vô mục thực đơn Entities. Quý Khách sẽ tiến hành hiển thị một list trống trải, về sau tiếp tục chứa chấp toàn bộ những bài bác đăng. Nhấp vô nútCreate a new post nhằm hiển thị biểu khuôn mẫu bao gồm:
Lưu ý rằng, JHipster cẩn trọng thế nào so với những bộ phận biểu khuôn mẫu và thông tin xác thực. Tất nhiên, tất cả chúng ta hoàn toàn có thể sửa thay đổi skin người tiêu dùng nhiều như tất cả chúng ta mong muốn, tuy nhiên biểu khuôn mẫu được xây cất rất hay.
Xem thêm: xe ban tai gia 200 trieu
7. Hỗ trợ tích hợp ý liên tục
JHipster hoàn toàn có thể tự động hóa tạo ra tệp thông số kỹ thuật cho những dụng cụ, Tích hợp ý liên tiếp (Continuous Integration tools) được dùng tối đa. Chỉ cần thiết chạy mệnh lệnh này:
Và vấn đáp những thắc mắc. Tại phía trên, công ty chúng tôi hoàn toàn có thể lựa chọn dụng cụ CI nào là công ty chúng tôi mong muốn tạo ra tệp thông số kỹ thuật, mặc dù công ty chúng tôi mong muốn dùng Docker, Sonar và thậm chí là xây dựng cho tới Heroku như một trong những phần của quy trình xây cất hay là không.
Lệnh CI-CD hoàn toàn có thể tạo ra tệp thông số kỹ thuật cho những dụng cụ CI sau:
- Jenkins: tệp là JenkinsFile
- Travis CI: tệp là .travis.yml
- Circle CI: tệp là circle.yml
- GitLab: tệp là .gitlab-ci.yml
8. Tổng hợp
Bài ghi chép này vẫn trình làng một ít về kỹ năng của JHipster. Tất nhiên còn nhiều điều rộng lớn tất cả chúng ta hoàn toàn có thể trình diễn ở phía trên, nên là hãy chắc chắn rằng nối tiếp tìm hiểu trang web đầu tiên của JHipster.
Bình luận