Greeting Java Hipster
2015. 10. 16. 17:04ㆍJS&FRONT/AngularJS
회사에서 간단한 웹 사이트를 만들일이 있을 듯 싶다.
새로운 기능으로 만들어 보고 싶은 맘에 JHipster 라는 것을 발견했다.
(YEOMAN + MAVEN + SPRING + ANGULARJS IN ONE HANDY GENERATOR)
Goal
완벽하고 모던 웹앱을 만드는 것이 목표랍니다.
Sample & Source
한번 해보고 나서, 스타를 줄지 말지 고민해보도록 하겠습니다. ㅎ
간단하게 생성한 어플리케이션을 체크 아웃 해보시길 바랍니다. 링크는 위에.
Release note
Release는 2.22.0 까지 되었네요... 계속 정신없이 작업을 하시는 듯 싶어요.
이제부터 JHipster 가 가지고 있는 엄청난 기능들을 나열해 보겠습니다.
위 사이트 가시면 보다 깔끔하게 정리가 되어 있으니 보시면 되겠습니다.
Technology stack
1) Technology stack on the client side.
Single web page application
- Reponsive Web Design
(Great css/javascript framework for responsive web apps)
- Compatible with IE9+ and modern browsers
- Full internationalzation support with Angular Translate (https://github.com/angular-translate/angular-translate)
- Optional WebSocket support with Spring Websocket.
(Yeoman provides application generators)
(Bower is a package manager for your javascript asset)
- Build, optimization and live reload with Grunt(http://gruntjs.com/) or Gulp.js(http://gulpjs.com/)
(Grunt is a Javascript task runner)
- Testing with Karma(http://karma-runner.github.io/0.13/index.html) and PhantomJS(http://phantomjs.org/)
(Karma runs unit tests on your javascript code)
And what if a single Web page application isn't enough for your needs?
- Support for the Thymeleaf template engine, to generate Web pages on the server side.
프론트 앤드단에서 이름있는 것들은 모두 지원을 하고 있네요...대박이네요.
2) Technology stack on the server side
(Spring is the De-Facto standard for java app, De-facto : "사실상")
- Maven(http://maven.apache.org/) or Gradle(http://gradle.org/) configuration for building , testing and running the application.
(Maven is the most popular java build tool)
- "development" and "production" profiles(both for Maven and Gradle) -> https://jhipster.github.io/profiles.html
- Spring MVC REST(http://spring.io/guides/gs/rest-service/) + Jackson(https://github.com/FasterXML/jackson)
- Optional WebSocket support with Spring Websocket
(JPA is the standard orm solution for java, Spring Data JPA is "Adds extra syntaxic sugar on top of JPA)
- Database updates with Liquibase(http://www.liquibase.org/) * 데이터베이스 변경 관리를 체계적으로 해주는 것.(Database updates made easy)
- Elasticsearch(https://github.com/elastic/elasticsearch) support if you want to have search capabilities on top of your database.
- MongoDB(https://www.mongodb.org/ , nosql for scalability) support if you'd rather use a document-oriented NoSQL database instead of JPA
- Cassandra(http://cassandra.apache.org/) support if you'd rather use a column-oriented NoSQL database instread of JPA
Ready to go into production
(ready for production with metrics, Formerly Yammer Metrics, Monitors the JVM, app server,Spring beans,cache and more, JMX or Graphite reporting)
- Caching with ehcache(local cache, http://www.ehcache.org/) or hazelcast(distributed cache,https://hazelcast.com/)
(Caching is king for performance , Enchache is the most widely used solution)
- Optinal HTTP session clustering with hazelcast
- Optimized static resources (gzip filter, HTTP cache headers)
- Connection pooling with HikariCP(https://github.com/brettwooldridge/HikariCP) for optimum performance
- Builds a standard WAR file or an executable JAR file.
* HikariCP는 바로 적용을 해봐도 되겠다...
퍼포먼스 측면이 월등하게 개선된다고 하니... 우헹우헹.
암튼 서버 쪽도 다양한 기술들을 많이 들어 갔네요... 좋아요!
JHipster in 5 screenshots
- 다섯가지의 스크린 샷을 띄워 놨습니다. (Metrics 등등... 나중에 관리자 페이지를 이런식으로 구성하면 되겠다라는 생각이 나는군요... 초 간단하게 빠르게)
The welcome screen , The monitoring screen, One of the generated forms, The log management screen, The generated "Book" entity.
Video tutorial(20 minutes)
- 위에서 진행했던 튜토리얼을 20분 정도의 비디오 강좌도 있습니다.
다른건 필요없어요.. 직접 설치해보고 구동해보시고..
전 별다른 문제 없이 잘 돌아가는 것까지 확인 했으니... 만족...ㅎㅎ
처음에 이야기 한대로, 간단한 웹 사이트 만들때 사용 하려고 점 찍어 두고 있습니다.
냐하하하 :D
'JS&FRONT > AngularJS' 카테고리의 다른 글
SPA의 라우팅 원리(링크) (0) | 2017.05.06 |
---|---|
Learn to Build Modern Web Apps with MEAN (2) | 2015.07.20 |
PhoneCat Tutorial App 10- Event Handlers (0) | 2014.10.01 |
PhoneCat Tutorial App 9- Filters (0) | 2014.09.30 |
PhoneCat Tutorial App 8 - More Templating (0) | 2014.09.30 |
PhoneCat Tutorial App 7 - Routing & Multiple views (0) | 2014.09.30 |
PhoneCat Tutorial App 7 - Templating Links & Images (0) | 2014.09.30 |
PhoneCat Tutorial App 6 - XHRs & Dependency Injection (0) | 2014.09.25 |
PhoneCat Tutorial App 5 - Two-way Data Binding (0) | 2014.09.23 |
PhoneCat Tutorial App 4 - Filtering Repeater (3) | 2014.09.19 |