Fading Coder

One Final Commit for the Last Sprint

Home > Tech > Content

Original Music Sharing Platform Based on SpringBoot, Vue, and Java

Tech 2

Introduction

Detailed Video Demonstration

Contact me for a more detailed demonstration video.

Implementation Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4 Screenshot 5 Screenshot 6

Technology Stack

Backend Framwork: Spring Boot

Spring Boot is a framework for building standalone, production-grade Spring applications. It focuses on simplifying the setup and development of Spring-based applications. Spring Boot follows the convention-over-configuration principle, reducing complexity and providing a rapid development environment. It includes embedded servlet containers like Tomcat or Jetty, allowing applications to run direct without deploying WAR files. Automatic configuration enables zero-configuration startup, minimizing XML configuration.

Frontend Framework: Vue

Vue.js is a popular open-source JavaScript framework for building user interfaces. It is widely adopted for modern web development. Vue.js aims to make building interactive web interfaces easier with concise and flexible tools. Its core is reusable components, enabling the construction of complex single-page applications (SPAs) and front-end applications. Vue.js features reactive data binding, automatic DOM updates, and virtual DOM for performance. It supports single-file components (SFC) that combine HTML, CSS, and JavaScript. The ecosystem includes Vue Router for routing, Vuex for state management, and Vue CLI for project scaffolding.

Database: MySQL

MySQL is a popular relational database management system (RDBMS) known for high performance, reliability, and flexibility. It was originally developed by MySQL AB, later acquired by Sun Microsystems and then Oracle Corporation. MySQL is open-source under the GPL license. It supports standard SQL and multiple storage engines like InnoDB and MyISAM, each with different features. MySQL is highly scalable and compatible with various operating systems including Windows, Linux, and Unix.

Core Code

# Tomcat
server:
    tomcat:
        uri-encoding: UTF-8
    port: 8080
    servlet:
        context-path: /springbootoiz2b

spring:
    datasource:
        driverClassName: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://127.0.0.1:3306/springbootoiz2b?useUnicode=true&characterEncoding=utf-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8
        username: root
        password: 123456

    servlet:
      multipart:
        max-file-size: 300MB
        max-request-size: 300MB
    resources:
      static-locations: classpath:static/,file:static/

#mybatis
mybatis-plus:
  mapper-locations: classpath*:mapper/*.xml
  typeAliasesPackage: com.entity
  global-config:
    id-type: 1
    field-strategy: 1
    db-column-underline: true
    refresh-mapper: true
    logic-delete-value: -1
    logic-not-delete-value: 0
    sql-injector: com.baomidou.mybatisplus.mapper.LogicSqlInjector
  configuration:
    map-underscore-to-camel-case: true
    cache-enabled: false
    call-setters-on-nulls: true
    jdbc-type-for-null: 'null'
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.dao.YuangongDao">

    <resultMap type="com.entity.YuangongEntity" id="yuangongMap">
        <result property="yuangonggonghao" column="yuangonggonghao"/>
        <result property="mima" column="mima"/>
        <result property="yuangongxingming" column="yuangongxingming"/>
        <result property="xingbie" column="xingbie"/>
        <result property="gangwei" column="gangwei"/>
        <result property="nianling" column="nianling"/>
        <result property="ruzhishijian" column="ruzhishijian"/>
        <result property="lianxifangshi" column="lianxifangshi"/>
        <result property="youxiang" column="youxiang"/>
        <result property="shenfenzheng" column="shenfenzheng"/>
    </resultMap>

    <select id="selectListVO" resultType="com.entity.vo.YuangongVO">
        SELECT * FROM yuangong yuangong
        <where> 1=1 ${ew.sqlSegment}</where>
    </select>

    <select id="selectVO" resultType="com.entity.vo.YuangongVO">
        SELECT yuangong.* FROM yuangong yuangong
        <where> 1=1 ${ew.sqlSegment}</where>
    </select>

    <select id="selectListView" resultType="com.entity.view.YuangongView">
        SELECT yuangong.* FROM yuangong yuangong
        <where> 1=1 ${ew.sqlSegment}</where>
    </select>

    <select id="selectView" resultType="com.entity.view.YuangongView">
        SELECT * FROM yuangong yuangong
        <where> 1=1 ${ew.sqlSegment}</where>
    </select>

</mapper>

Source Code Acquisition

Please contact me via the contact information below the article.

Tags: SpringBoot

Related Articles

Understanding Strong and Weak References in Java

Strong References Strong reference are the most prevalent type of object referencing in Java. When an object has a strong reference pointing to it, the garbage collector will not reclaim its memory. F...

Comprehensive Guide to SSTI Explained with Payload Bypass Techniques

Introduction Server-Side Template Injection (SSTI) is a vulnerability in web applications where user input is improper handled within the template engine and executed on the server. This exploit can r...

Implement Image Upload Functionality for Django Integrated TinyMCE Editor

Django’s Admin panel is highly user-friendly, and pairing it with TinyMCE, an effective rich text editor, simplifies content management significantly. Combining the two is particular useful for bloggi...

Leave a Comment

Anonymous

◎Feel free to join the discussion and share your thoughts.