All Projects → pravusid → springboot-vue.js-bbs

pravusid / springboot-vue.js-bbs

Licence: Apache-2.0 license
Spring Boot, Vue.js

Programming Languages

java
68154 projects - #9 most used programming language
Vue
7211 projects
HTML
75241 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language
TSQL
950 projects

Projects that are alternatives of or similar to springboot-vue.js-bbs

Spring Boot Blog
Simple blog web app made using Spring Boot + Thymeleaf
Stars: ✭ 121 (+181.4%)
Mutual labels:  thymeleaf, spring-security, spring-data-jpa
Spring Boot Enterprise Application Development
Spring Boot Enterprise Application Development.《Spring Boot 企业级应用开发实战》
Stars: ✭ 261 (+506.98%)
Mutual labels:  thymeleaf, spring-security, spring-data-jpa
Spring-Boot-2
Spring Boot 2.x examples
Stars: ✭ 33 (-23.26%)
Mutual labels:  thymeleaf, spring-security, spring-data-jpa
BusinessInfrastructurePlatformGroupVersion
A java web project based on Spring Boot using MySQL, Spring MVC, Hibernate, Spring Data JPA, Query DSL, Lombok, Logback, etc.
Stars: ✭ 90 (+109.3%)
Mutual labels:  thymeleaf, spring-security, spring-data-jpa
Spring Boot Shopping Cart
Simple shopping cart web app made using Spring Boot + Thymeleaf
Stars: ✭ 85 (+97.67%)
Mutual labels:  thymeleaf, spring-security, spring-data-jpa
Diber-backend
Delivery Service - Spring Boot / Spring Data Jpa / Hibernate / PostgreSQL / OAuth2 Application
Stars: ✭ 22 (-48.84%)
Mutual labels:  spring-security, spring-data-jpa, spring-security-oauth2
spring-boot-shop-sample
My first web application using Spring Boot framework.
Stars: ✭ 66 (+53.49%)
Mutual labels:  thymeleaf, spring-security, spring-data-jpa
spring-boot-login-example
Spring Boot Login and Registration example with MySQL, JWT, Rest Api - Spring Boot Spring Security Login example
Stars: ✭ 50 (+16.28%)
Mutual labels:  spring-security, spring-data-jpa
Favorites Web
云收藏 Spring Boot 2.X 开源项目
Stars: ✭ 4,485 (+10330.23%)
Mutual labels:  thymeleaf, spring-data-jpa
Spring Boot Examples
about learning Spring Boot via examples. Spring Boot 教程、技术栈示例代码,快速简单上手教程。
Stars: ✭ 26,812 (+62253.49%)
Mutual labels:  thymeleaf, spring-data-jpa
Eshop Soa
EShop基于Dubbo实现SOA服务化拆分,并基于RocketMQ解决了分布式事务(新版SpringBootSOASkeleton)
Stars: ✭ 65 (+51.16%)
Mutual labels:  thymeleaf, spring-security
Admin
基于Spring Boot/Spring Security/thymeleaf的通用后台管理系统
Stars: ✭ 411 (+855.81%)
Mutual labels:  thymeleaf, spring-security
TODO-List-Tech-Module
TODO List (in C#, Java, JS and PHP) - Exam Preparation for the Tech Module @ SoftUni (August 2017)
Stars: ✭ 13 (-69.77%)
Mutual labels:  thymeleaf, spring-data-jpa
Spring Mvc Thymeleaf Crud
Spring MVC CRUD Application with Thymeleaf, HTML5, CSS3 and Bootstrap
Stars: ✭ 14 (-67.44%)
Mutual labels:  thymeleaf, spring-data-jpa
Blog
一款简洁响应式博客系统
Stars: ✭ 72 (+67.44%)
Mutual labels:  thymeleaf, spring-security
OnlineStore
REST api for an online store using microservices architecture.
Stars: ✭ 27 (-37.21%)
Mutual labels:  spring-security, spring-data-jpa
Oauth2-Stateless-Authentication-with-Spring-and-JWT-Token
Oauth2 Stateless Authentication with Spring and JWT Token
Stars: ✭ 108 (+151.16%)
Mutual labels:  spring-security, spring-security-oauth2
spring-tiles-sample-app
Spring MVC - Apache Tile - AdminLTE Bootstrap template - Sample Application
Stars: ✭ 33 (-23.26%)
Mutual labels:  spring-security, spring-data-jpa
Spring-Boot-Application-Template
Spring Boot Web App, Flyway, MySQL, H2DB, Bootstrap, Thymeleaf, JWT, Swagger, API Rate Limiting, Docker, RBAC, i18n
Stars: ✭ 90 (+109.3%)
Mutual labels:  thymeleaf, spring-security
Mybatis Spring Boot Jpetstore
A sample web application built on MyBatis 3, Spring Boot and Thymeleaf 3.
Stars: ✭ 75 (+74.42%)
Mutual labels:  thymeleaf, spring-security

Build Status

Toy Project: Spring Boot + SSR / CSR

  1. Spring Boot + Thymeleaf
  2. Spring Boot + Vue.js 2

목표

  1. Spring Boot, Spring data JPA로 서버를 구성한다.
  2. 템플릿 엔진으로 Thymeleaf를 사용한다.
  3. 2번까지의 과정이 끝나면 동일 서버에 HTTP API(REST)를 추가한다.
  4. 템플릿 엔진으로 구현한 클라이언트단과 동일한 기능을 Vue.js를 활용하여 제작한다.
  5. 동일한 두 웹 어플리케이션을 제작하는 것이 최종 목표이다.

주제

무한계층 댓글 기능의 회원제 게시판을 구현한다.

구현

서버

Server 사용기술

  • Spring Boot
  • Spring data JPA(Hibernate)
  • H2 Database
  • MySQL
  • Spring Security
  • Spring Security OAuth2

Server 제작 내용

완성됨

  • 회원제 게시판 제작을 목표로 한다
  • 댓글은 무한계층형으로 구현하고 삭제시 동일 노드의 게시물이 모두 삭제 되도록 만든다.
  • 오픈소스 에디터를 적용한다.
  • 게시물, 댓글 검색기능을 적용한다.
  • 회원 가입시 유효성 검사는 client, server 모두에서 진행
  • 스프링 시큐리티를 통해 가입, 로그인, 비밀번호 암호화등을 적용한다.
  • HTTP API(REST)로 서버와 클라이언트가 JSON 데이터를 주고 받는다
  • OAuth2 Grant Type은 implicit으로 진행
  • JWT를 통해서 사용자 인증을 진행한다

Thymeleaf 클라이언트

템플릿엔진으로 기존에 사용해봤던 JSP 이외의 후보에서 선택한 Thymeleaf를 사용한다.

Spring boot starter thymeleaf는 3버전이 아니어서 다소 문제가 발생했다. 따라서 기존 문법을 사용하였다.

thymeleaf를 3버전으로 변경하고 최신 문법을 적용하였다.

Thymeleaf 클라이언트 사용 기술

Vue.JS 클라이언트

View를 작성하는데 이용되는 자바스크립트 기술의 이해를 위해 상대적으로 진입장벽이 낮은 Vue.js를 이용한다.

최신 자바스크립트 기술 - ES6를 transpiling, webpack으로 build... - 이해를 위해 구현과정 중 이를 적극 사용해본다.

Vue.JS Client 사용기술

  • vue-cli: project scaffolding
  • vue.js 2
  • vuex: 상태 관리
  • vue-router: SPA 라우팅
  • axios: HTTP client
  • lodash: 유틸성 함수 일부 사용
  • vue-quill-editor: Trumbowyg Editor 대체
  • Materialize CSS: CSS만 사용

Client 제작 내용

  • Page Reloading이 없는 SPA를 목표로 한다
  • ES6 문법을 사용하여 작성하고 babel로 크로스 컴파일 하며, webpack으로 번들링한다
  • vuex를 사용하여 상태관리를 한다
  • props를 통해 컴포넌트간 데이터를 전송한다
  • EventBus로 컴포넌트간 이벤트처리를 한다
  • vue-router로 새로고침 없이 리소스 경로 관리를 한다
  • axios를 이용하여 서버와 HTTP 통신을 수행한다
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].