当前位置:首页 > 数码 > Boot的Java全栈项目-我在前端编写基于Spring (boot的jar包无法启动)

Boot的Java全栈项目-我在前端编写基于Spring (boot的jar包无法启动)

admin8个月前 (04-28)数码53

前言

本文将使用 NestJs + Sequelize + MySQL 完成基础运行,带大家了解 Node 服务端的基础搭建,同时也会对比 Java SpringBoot 项目的基础结构。

项目搭建

1. 安装脚手架

    npm i -g @nestjs/cli
  

2. 创建基础项目

    nest new node-server-demo
  

3. 进入项目

    cd node-server-demo
  

4. 运行项目测试

    npm run start:dev
  

集成 Sequelize ORM

1. 安装 Sequelize

    npm i sequelize @nestjs/sequelize
  

2. 创建数据库连接

src/database.module.ts 中添加以下代码:
    import { Module, Global } from '@nestjs/common';
    import { SequelizeModule } from '@nestjs/sequelize';
    import { User } from './user.entity';

    @Global()
    @Module({
      imports: [
        SequelizeModule.forRoot({
          dialect: 'mysql',
          host: 'localhost',
          port: 3306,
          username: 'root',
          password: 'password',
          database: 'nestjs',
        }),
        SequelizeModule.forFeature([User]),
      ],
      exports: [SequelizeModule],
    })
    export class DatabaseModule {}
  

3. 定义实体

src/user.entity.ts 中添加以下代码:
    import { Entity, Column, PrimaryGeneratedColumn } from '@nestjs/typeorm';

    @Entity()
    export class User {
      @PrimaryGeneratedColumn()
      id: number;

      @Column()
      name: string;

      @Column()
      email: string;
    }
  

使用 NestJs + Sequelize 实现 CRUD

1. 创建用户控制器

src/user.controller.ts 中添加以下代码:
    import { Controller, Get, Post, Body, Param, Delete, Patch } from '@nestjs/common';
    import { UserService } from './user.service';
    import { CreateUserDto } from './dto/create-user.dto';
    import { UpdateUserDto } from './dto/update-user.dto';

    @Controller('users')
    export class UserController {
      constructor(private readonly userService: UserService) {}

      @Post()
      create(@Body() createUserDto: CreateUserDto) {
        return this.userService.create(createUserDto);
      }

      @Get()
      findAll() {
        return this.userService.findAll();
      }

      @Get(':id')
      findOne(@Param('id') id: string) {
        return this.userService.findOne(+id);
      }

      @Patch(':id')
      update(@Param('id') id: string, @Body() updateUserDto: UpdateUserDto) {
        return this.userService.update(+id, updateUserDto);
      }

      @Delete(':id')
      remove(@Param('id') id: string) {
        return this.userService.remove(+id);
      }
    }
  

2. 创建用户服务

src/user.service.ts 中添加以下代码:
    import { Injectable } from '@nestjs/common';
    import { InjectRepository } from '@nestjs/typeorm';
    import { User } from './user.entity';
    import { Repository } from 'typeorm';
    import { CreateUserDto } from './dto/create-user.dto';
    import { UpdateUserDto } from './dto/update-user.dto';

    @Injectable()
    export class UserService {
      constructor(
        @InjectRepository(User)
        private userRepository: Repository,
) {}

      create(createUserDto: CreateUserDto) {
        const user = this.userRepository.create(createUserDto);
        return this.userRepository.save(user);
      }

      findAll() {
        return this.userRepository.find();
      }

      findOne(id: number) {
        return this.userRepository.findOne(id);
      }

      update(id: number, updateUserDto: UpdateUserDto) {
        return this.userRepository.update(id, updateUserDto);
      }

      remove(id: number) {
        return this.userRepository.delete(id);
      }
    }
  

3. 引入相关模块

src/app.module.ts 中引入相关模块:
    import { Module } from '@nestjs/common';
    import { AppController } from './app.controller';
    import { AppService } from './app.service';
    import { UserModule } from './user/user.module';
    import { DatabaseModule } from './database/database.module';

    @Module({
      imports: [UserModule, DatabaseModule],
      controllers: [AppController],
      providers: [AppService],
    })
    export class AppModule {}
  

结论

本文带大家了解了使用 Nest


java实践—项目合集大学生来学

Java30个实战项目汇总合集

1、微服务

·推荐 7 个牛哄哄 Spring Cloud 实战项目

Spring Boot + Security + MyBatisThymeleaf + Activiti 快速开发平台项目

带工作流的springboot后台管理项目,一个企业级快速开发解决方案

·介绍6款热门的 SpringCloud 微服务开源项目,总有适合你的!

推荐几个springboot学习教程和实战项目!

2、电商项目

推荐一个非常火爆的电商开源项目!

推荐两个项目!

Boot的Java全栈项目

47K Star 的SpringBoot+MyBatis+docker电商项目,附带超详细的文裆!

推荐一个基干 SpringCloud 设计精良的网上商城·Vue2.5.1+Spring支持分销、团购、秒杀、优惠券、微信商城项目,源码免费分享

3、支付项目

一个整理支付宝、微信等支付项目的github仓库

推荐几个支付项目!

一个Github项目搞定微信、QQ、支付宝等第三方登录

4、Java博客项目

一款高颜值的 SpringBoot+JPA 博客项目推荐一款Java开发的精美个人博客

想要搭建个人博客?这4个Java 开源博客系统真香

5、后台管理系统

一款超炫酷后台权限管理系统

白嫖他悟空CRM项目,部署了直接用起来。

12个非常适合做外包项目的开源后台管理项目

基于 Springboot 2.0 LayUl 开发的物流管理系统

Java学生宿舍管理系统,即将毕业的兄弟有福了!

超优 Vue+Element+Spring 中后端解决方案

GitHub上 6款牛哄哄的后台模板

6、前后端分离项目

13K点赞都基于 Vue+Spring 前后端分离管理系统ELAdmin,大爱

推荐几个前后端分离项目!

一款小清新的 SpringBoot+ Mybatis 前后端分离后台管理系统项目

7、高仿项目

推荐一个高仿微信的项目 有点席!!·

基干 Spring Boot 的网络云高仿项目

盘点 Github 上的高仿 app 项目

这个高仿小米商城项目,拿来学习再好不过了!

解锁网易云音乐客户端变灰歌曲

8、实战类项目

·分享一个在线考试系统,练手项目用他很香

一个基于SpringBoot开源的小说和漫画在线阅读项目,简洁大方、强烈推荐

12个非常适合做外包项目的开源后台管理系统

重磅推荐:一套开源的网校系统,无论是自建网校还是接副业都很方便

基于SpringBoot的ERP系统,自带进销存+财务+生产功能

9、视频管理项目

推荐一款开源 Java 版的视频管理系统

10、社区、论坛

一款基于 Spring Boot 的现代化社区(论坛/问答/社交网络1博客)

11、AI相关项目

基于 Spring Boot 的车牌识别系统(附项目地址)

springboot是前端还是后端

后端。 根据查询CSDN博客显示:SpringBoot可以用于开发前端和后端项目。 它是一个基于Java语言的框架,可以整合很多网站后端开发需要的功能,比如网页搭建、数据库连接、测试等。 同时,SpringBoot也可以用于构建前端项目,它提供了许多用于前端开发的工具和库。 在SpringBoot中,可以使用SpringMVC等框架来处理前端请求,并使用JSP、Thymeleaf等技术来展示数据。 同时,SpringBoot还提供了对RESTfulAPI的支持,使得前后端之间的交互更加简单和高效。

免责声明:本文转载或采集自网络,版权归原作者所有。本网站刊发此文旨在传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及版权、内容等问题,请联系本网,我们将在第一时间删除。同时,本网站不对所刊发内容的准确性、真实性、完整性、及时性、原创性等进行保证,请读者仅作参考,并请自行核实相关内容。对于因使用或依赖本文内容所产生的任何直接或间接损失,本网站不承担任何责任。

标签: SpringBoot

“Boot的Java全栈项目-我在前端编写基于Spring (boot的jar包无法启动)” 的相关文章

揭秘其强大功能背后的秘密-深入剖析SpringBoot底层原理 (揭秘其强大功夫的成语)

揭秘其强大功能背后的秘密-深入剖析SpringBoot底层原理 (揭秘其强大功夫的成语)

SpringBoot原理详解 简介 SpringBoot是一个开源框架,它简化了Java应用程序开发,特别是Web应用的开发。通过使用SpringBoot,开发者可以轻松创建和配置Spring应...

SpringBoot接口参数校验N种适用技巧大揭秘 (springernature)

SpringBoot接口参数校验N种适用技巧大揭秘 (springernature)

环境:SpringBoot2.6.12 实践的开发上班中大部分的接口都是须要启动参数有效性校验的,参数或者是便捷的基本数据类型,也或者是对象类型,基本上一切接纳参数的接口都是须要对这些参数启...

SpringBoot-Redis-处置海量重复提交疑问的片面指南 (springboot启动)

SpringBoot-Redis-处置海量重复提交疑问的片面指南 (springboot启动)

前言: 在实践的开发名目中,一个对外泄露的接口往往会面临很屡次恳求,咱们来解释一下幂等的概念: 恣意屡次口头所发生的影响均与一次性口头的影响相反 。依照这个含意,最终的含意就...

SpringBoot-中的热部署和热加载 (springernature)

SpringBoot-中的热部署和热加载 (springernature)

在SpringBoot开发调试中,假设咱们每修正一行代码都须要重启调试,或许会比拟耗时。 SpringBoot团队针对这个疑问提供了spring-boot-devtools(简称:Devto...

资深开发者的机密战略-SpringBoot中经常使用ObjectMapper的终极指南 (资深开发者的工作内容)

资深开发者的机密战略-SpringBoot中经常使用ObjectMapper的终极指南 (资深开发者的工作内容)

1.每次new一个 在SpringBoot名目中要成功对象与Json字符串的互转,每次都须要像如下一样new一个ObjectMer对象: publicUserEntitystring2Ob...

SpringBoot-虚构线程的强强联结-接口吞吐量直线回升-效率飙升体验惊艳! (springboot)

SpringBoot-虚构线程的强强联结-接口吞吐量直线回升-效率飙升体验惊艳! (springboot)

在这篇博客中,咱们将看到如何在spring-boot中应用loom虚构线程。咱们还将在JMeter的协助下做一些负载测试,看看虚构线程和普通线程的照应期间如何。 首先,虚构线程是Projec...

深入理解其工作原理和最佳实践-SpringBoot的配置加载机制 (深入理解yii2)

深入理解其工作原理和最佳实践-SpringBoot的配置加载机制 (深入理解yii2)

概述 SpringBoot 的配置加载机制基于 Environment 的属性源管理,它提供了一种非常灵活的方式来管理应用程序的配置信息。Environment 支持多种配置格式,可以根据不同...