All Projects → kazuki43zoo → Mybatis Spring Boot Jpetstore

kazuki43zoo / Mybatis Spring Boot Jpetstore

Licence: other
A sample web application built on MyBatis 3, Spring Boot and Thymeleaf 3.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Mybatis Spring Boot Jpetstore

Eshop Soa
EShop基于Dubbo实现SOA服务化拆分,并基于RocketMQ解决了分布式事务(新版SpringBootSOASkeleton)
Stars: ✭ 65 (-13.33%)
Mutual labels:  mybatis, spring-boot, spring-mvc, spring-security, thymeleaf
Spring Boot Shopping Cart
Simple shopping cart web app made using Spring Boot + Thymeleaf
Stars: ✭ 85 (+13.33%)
Mutual labels:  spring-boot, spring-mvc, spring-security, thymeleaf
Spring Boot Blog
Simple blog web app made using Spring Boot + Thymeleaf
Stars: ✭ 121 (+61.33%)
Mutual labels:  spring-boot, spring-mvc, spring-security, thymeleaf
Spring Boot Demo
spring boot demo 是一个Spring Boot、Spring Cloud的项目示例,根据市场主流的后端技术,共集成了30+个demo,未来将持续更新。该项目包含helloworld(快速入门)、web(ssh项目快速搭建)、aop(切面编程)、data-redis(redis缓存)、quartz(集群任务实现)、shiro(权限管理)、oauth2(四种认证模式)、shign(接口参数防篡改重放)、encoder(用户密码设计)、actuator(服务监控)、cloud-config(配置中心)、cloud-gateway(服务网关)等模块
Stars: ✭ 323 (+330.67%)
Mutual labels:  mybatis, spring-boot, spring-mvc, spring-security
Tutorial
Spring Boot的例子,包含RESTful API, MVC, JMS, Cache, Mybatis, Cache, Websocket...
Stars: ✭ 215 (+186.67%)
Mutual labels:  mybatis, spring-boot, spring-mvc, spring-security
Spring Boot Enterprise Application Development
Spring Boot Enterprise Application Development.《Spring Boot 企业级应用开发实战》
Stars: ✭ 261 (+248%)
Mutual labels:  spring-boot, spring-mvc, spring-security, thymeleaf
Springbootunity
rabbitmq、redis、scheduled、socket、mongodb、Swagger2、spring data jpa、Thymeleaf、freemarker etc. (muti module spring boot project) (with spring boot framework,different bussiness scence with different technology。)
Stars: ✭ 845 (+1026.67%)
Mutual labels:  mybatis, spring-boot, spring-mvc, thymeleaf
Watchdog Framework
🍻 「停止维护」基于SpringBoot+Shiro+Mybatis等开发的轻量级管理系统快速开发脚手架
Stars: ✭ 421 (+461.33%)
Mutual labels:  mybatis, spring-boot, spring-mvc
Bugcatcher
方便产品、开发、测试三方协同管理、测试、监控项目进度和质量,以持续交付。
Stars: ✭ 472 (+529.33%)
Mutual labels:  mybatis, spring-mvc, spring-security
Springboot Starterkit
Starter Kit for Spring Boot based (REST APIs and WebMVC) micro services.
Stars: ✭ 596 (+694.67%)
Mutual labels:  spring-boot, spring-mvc, spring-security
Newbee Mall
🔥 🎉newbee-mall 项目(新蜂商城)是一套电商系统,包括 newbee-mall 商城系统及 newbee-mall-admin 商城后台管理系统,基于 Spring Boot 2.X 及相关技术栈开发。 前台商城系统包含首页门户、商品分类、新品上线、首页轮播、商品推荐、商品搜索、商品展示、购物车、订单结算、订单流程、个人订单管理、会员中心、帮助中心等模块。 后台管理系统包含数据面板、轮播图管理、商品管理、订单管理、会员管理、分类管理、设置等模块。
Stars: ✭ 8,319 (+10992%)
Mutual labels:  mybatis, spring-boot, thymeleaf
Springbootblog
一个基于SpringBoot开发的个人博客。集成了:博客前台,后台管理。
Stars: ✭ 392 (+422.67%)
Mutual labels:  mybatis, spring-boot, thymeleaf
Spring Boot Examples
about learning Spring Boot via examples. Spring Boot 教程、技术栈示例代码,快速简单上手教程。
Stars: ✭ 26,812 (+35649.33%)
Mutual labels:  mybatis, spring-boot, thymeleaf
Springboard
Spring Boot based production grade starter kit.
Stars: ✭ 59 (-21.33%)
Mutual labels:  spring-boot, spring-mvc, spring-security
Admin
基于Spring Boot/Spring Security/thymeleaf的通用后台管理系统
Stars: ✭ 411 (+448%)
Mutual labels:  spring-boot, spring-security, thymeleaf
Spring Lemon
Helper library for Spring Boot web applications
Stars: ✭ 529 (+605.33%)
Mutual labels:  spring-boot, spring-mvc, spring-security
Spring Boot In Action
Spring Boot 系列实战合集
Stars: ✭ 4,153 (+5437.33%)
Mutual labels:  mybatis, spring-boot, spring-security
Javaquarkbbs
基于Spring Boot实现的一个简易的Java社区
Stars: ✭ 755 (+906.67%)
Mutual labels:  spring-boot, spring-mvc, thymeleaf
Market
Simple web-market: Spring, JSP, REST, Hibernate (under modernization)
Stars: ✭ 47 (-37.33%)
Mutual labels:  spring-boot, spring-mvc, spring-security
Spring Mvc Thymeleaf Crud
Spring MVC CRUD Application with Thymeleaf, HTML5, CSS3 and Bootstrap
Stars: ✭ 14 (-81.33%)
Mutual labels:  spring-boot, spring-mvc, thymeleaf

mybatis-spring-boot-jpetstore

Build Status Quality Gate Status Coverage Status

This sample is a web application built on MyBatis, Spring Boot(Spring MVC, Spring Security) and Thymeleaf. This is another implementation of MyBatis JPetStore sample application (https://github.com/mybatis/jpetstore-6).

Original application is available for downloading in the downloads section of MyBatis project site. In this section, we will walk through this sample to understand how is it built and learn how to run it.

Note:

This sample application is under development. If you found an issue, please report from here.

Demo

The Demo application is running on the Pivotal Web Services. Let's play on https://jpetstore.cfapps.io/.

Requirements

  • Java 8+ (JDK 1.8+)

Stacks

  • MyBatis Spring Boot Starter 2.1 (MyBatis 3.5, MyBatis Spring 2.0)
  • Spring Boot 2.3 (Spring Framework 5.2, Spring Security 5.3)
  • Thymeleaf 3.0
  • Hibernate Validator 6.1 (Bean Validation 2.0)
  • HSQLDB 2.5 (Embed Database)
  • Flyway 6.4 (DB Migration)
  • Tomcat 9.0 (Embed Application Server)
  • Groovy 2.5 (Use multiple line string on MyBatis Mapper method)
  • Lombok 1.18
  • Selenide 5.12
  • Selenium 3.141
  • etc ...

Run using Maven command

  • Clone this repository

    $ git clone https://github.com/kazuki43zoo/mybatis-spring-boot-jpetstore.git
    
  • Run a web application using the spring-boot-plugin

    $ cd mybatis-spring-boot-jpetstore.git
    $ ./mvnw clean spring-boot:run
    

Run using java command

  • Build a jar file

    $ ./mvnw clean package -DskipTests=true
    
  • Run java command

    $ java -jar target/mybatis-spring-boot-jpetstore-2.0.0-SNAPSHOT.jar
    

Perform integration test using Maven command

Perform integration tests for screen transition.

$ ./mvnw clean test

Run on IDEs (Note)

This sample use the Lombok to generate setter method, getter method and constructor. If this sample application run on your IDE, please install the Lombok. (see https://projectlombok.org/download.html)

And this application use the groovy language to use multiple line string on MyBatis Mapper method. If this sample application run on your IDE, please convert to groovy project and add src/main/groovy into source path. And if you use a STS(or Eclipse), please install the Groovy Eclipse plugin. About how install the Groovy Eclipse, please see as follow:

e.g.) multiple line string on MyBatis Mapper method

@Mapper
@CacheNamespace
interface CategoryMapper {

    @Select('''
        SELECT
            CATID AS categoryId,
            NAME,
            DESCN AS description
        FROM
            CATEGORY
        WHERE
            CATID = #{categoryId}
    ''')
    Category getCategory(String categoryId)

}

Access to the index page

http://localhost:8080/

Index Screen

Catalog Screen

Default active accounts (ID/PASSWORD)

  • j2ee/j2ee
  • ACID/ACID

Data Store

In this application, application data stored in filesystem files.

$HOME
  └── db
      + jpetstore.script
      + jpetstore.properties

Project Structure

Project structure of this sample application is as follow:

.
└── src
    └── main
        ├── groovy
        │   └── com
        │       └── kazuki43zoo
        │           └── jpetstore
        │               └── mapper         // Store mapper interfaces
        ├── java
        │   └── com
        │       └── kazuki43zoo
        │           └── jpetstore
        │               ├── component      // Store general component classes
        │               │   ├── event
        │               │   ├── exception
        │               │   ├── message
        │               │   └── validation
        │               ├── config         // Store configuration classes
        │               ├── domain         // Store domain objects
        │               ├── service        // Store service classes
        │               └── ui             // Store classes that depends user interface
        │                   └── controller // Store controller classes
        └── resources
            ├── db                         // Store sql files for Flyway
            │   └── migration
            ├── static                     // Store static web resource files
            │   ├── css
            │   └── images
            └── templates                  // Store view template files for Thymeleaf
                ├── account
                ├── auth
                ├── cart
                ├── catalog
                ├── error
                └── order
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].