SpringBoot+Uniapp实战开发全新仿抖音短视频App【2022】

670 阅读4分钟

SpringBoot+Uniapp实战开发全新仿抖音短视频App【2022升级版】下——栽

下栽地止:www.ukoou.com/resource/1084

SpringBoot + Uniapp项目简介

SpringBoot 本质上是 Spring,它有自己的一些特性,可以帮助简化 Spring 应用程序的开发。具有三个核心功能:

自动配置:SpringBoot对于很多Spring应用通用的应用功能,都提供了自动配置,对集成开发者只需要很少的配置。

Bootstrap依赖:告诉SpringBoot它需要什么功能,它可以导入对应的库,不管功能所依赖的库版本是什么。

Actuator:提供对 SpringBoot 应用程序内部的洞察,例如创建了哪些 bean、自动配置决策和应用程序状态信息。

uniapp是Dcloud公司的产品,是一个跨端开发框架,基于vue.js技术栈。开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉/淘宝)、快应用等多个平台。这是它的功能架构图,可以看下,了解下它的架构。

SpringBoot+Uniapp实战开发

项目结构 一个新创建的SpringBoot应用基本结构如下。

mall-tiny-boot
├─pom.xml # Maven构建文件
└─src
   ├─main
   │  ├─java
   │  │  └─MallTinyApplication.java # 应用程序启动类
   │  └─resources
   │     └─application.yml # SpringBoot配置文件
   └─test
       └─java
           └─MallTinyApplicationTests.java # 基本的集成测试类

应用启动类 MallTinyApplication在SpringBoot应用中有配置和引导的作用,通过@SpringBootApplication注解开启组件扫描和自动配置,通过SpringApplication.run()引导应用程序启动;

//开启组件扫描和应用装配
@SpringBootApplication
public class MallTinyApplication {

    public static void main(String[] args) {
        //负责引导应用程序启动
        SpringApplication.run(MallTinyApplication.class, args);
    }

}

@RunWith(SpringRunner.class)
@SpringBootTest
@Slf4j
public class MallTinyApplicationTests {
    @Autowired
    private PmsBrandService pmsBrandService;

    @Test
    public void contextLoads() {
    }

    @Test
    public void testMethod() {
        List<PmsBrand> brandList = pmsBrandService.listAllBrand();
        log.info("testMethod:{}", brandList);
    }

}

一、环境搭建 1、安装hbuilderX hbuilderx也是dcloud公司出品的ide产品。用uniapp开发跨多端产品,实现一次开发,多端发布就必须用hbuilderx这个神器IDE。

二、uniapp手把手实战 1、新建uniapp空模板项目 cli模式 用hbx创建项目在官方教程上讲得比较细致了,我这里只介绍下用vue-cli创建项目过程。创建步骤在官网上也有,相比用hbx的可视化搭建,用cli搭起来慢了不少。 //安装vue/cli全局依赖 npm install -g @vue/cli

//创建项目模板 vue create -p dcloudio/uni-preset-vue my-project

如果在执行脚本时有这样的错误提示:vue: 无法加载文件 C:....vue.ps1。说明你的脚本运行被禁止了,解决办法就是打开当前项目地址的资源管理器,点击文件,弹出对话框,如图点击所示位置

会有弹出框,在里面执行这个段代码: set-ExecutionPolicy RemoteSigned

执行之后,按提示输入Y或者A就可以了,再按上面进行项目创建,就正常了:

最后,它会提示你选择项目模板:

一般建议选择hello uni-app的模板。如果一切顺利(理想情况下),创建完成的项目,看起来是这样的,如下图

我们可以观察下它的package.json文件,可以看到有很多的打包、运行命令,uniapp确实帮我们做了很多事!

cd my-project进入到项目中,运行一下npm run dev:h5,试下效果。

可以看到确实成功了,打开启动页,按f12将页面切换到手机模式,就能看到效果了。

这种cli模式下无法连接到模拟器调试,要实时调试app版本,只能用hbx这个ide。cli模式除了能调试h5版本,还可以调试小程序,以微信小程序为例,这需要先准备好开发工具。

hbuilderx模式 考虑到app是我们最主要的产品输出,最好还是切换到hbuilderx编译器上,其实用习惯之后,感觉还是挺好用的。cli模式适合开发h5或者小程序。具体的步骤看官网就可以了,比较简单,可视化操作,一步步走就没问题。其实前面用cli模式创建的项目,也可以用hbx开发,在hbx编译器上打开文件夹,选择cli项目的src文件夹,就是一个标准的hbuilderx创建项目了。 这时选择运行--运行到模拟器就可以了

2、目录结构 我们来观察下这个项目结构,这是官方的一个介绍,我copy过来了

┌─cloudfunctions        云函数目录(阿里云为aliyun,腾讯云为tcb,详见uniCloud)
│─components            符合vue组件规范的uni-app组件目录
│  └─comp-a.vue         可复用的a组件
├─hybrid                存放本地网页的目录,详见
├─platforms             存放各平台专用页面的目录,详见
├─pages                 业务页面文件存放的目录
│  ├─index
│  │  └─index.vue       index页面
│  └─list
│     └─list.vue        list页面
├─static                存放应用引用静态资源(如图片、视频等)的目录,注意:静态资源只能存放于此
├─wxcomponents          存放小程序组件的目录,详见
├─main.js               Vue初始化入口文件
├─App.vue               应用配置,用来配置App全局样式以及监听 应用生命周期
├─manifest.json         配置应用名称、appid、logo、版本等打包信息,详见
└─pages.json            配置页面路由、导航条、选项卡等页面类信息,详见

重点是pages、static、main.js、App.vue、manifest.json、pages.json这几个目录或者文件。