springboot+mabatis plus

Ubuntu20.04下 嵌入式 Qt 开发环境的搭建(适用于Tiny6410) Ubuntu 下 Tiny6410 嵌入式 Qt 开发环境的搭建 目录导航Ubuntu 下 Tiny6410 嵌入式 Qt 开发环境的搭建前言1.安装前的准备工作2.安装交叉编译器 前言 这篇文章,主要是基于 Ubuntu19.10版本而写,写此文的初衷,是为了自己使用,因为最近正在以Tiny6410板子做实训,所以也是初学者一枚,只能保证我遇上的问题统统能够解决掉,至于一些没遇上的,欢迎各位看客给我留言,大家一起讨论,一起解决。 注:本文会持续更新 1.安装前的准备工作 环境要求 Linux系统:U 阅读详情

mybatis plus官方文档地址:https://mp.baomidou.com/
1.简单得springboot项目搭建
1.1引入springboot父工程spring-boot-starter-parent,spring-boot-starter,spring-boot-starter-test
在这里插入图片描述
1.2引入mybatis plus依赖
在这里插入图片描述
2.springboot启动类,添加@mapperscan注解,注解作用:扫描的Mapper类的包的路径
在这里插入图片描述
3.编写实体类,并添加注解(数据库建表部分不多说了),这里讲三个注释,@TableName表名注释@TableId主键注释@TableField字段注释,详细内容及注解见https://mp.baomidou.com/guide/annotation.html#tablename,然后写dao,mapper.xml,service,serviceImpl,controller
在这里插入图片描述
注:不想手动写可以用代码生成器,官网给的AutoGenerator :https://mp.baomidou.com/guide/generator.html#%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B,也可以自己去搜code-generator,自己写规则
在这里插入图片描述
4.CRUD接口封装,接口看自己项目需求添加:https://mp.baomidou.com/guide/crud-interface.html#mapper-crud-%E6%8E%A5%E5%8F%A3
在这里插入图片描述在这里插入图片描述5.dao层
在这里插入图片描述6.service
在这里插入图片描述7.serviceImpl
在这里插入图片描述
8controller调用
在这里插入图片描述有些地方只是多封装了几次,理解还是挺好理解的

【100%通过率】华为OD机试真题 C++ 实现【水库蓄水问题】【2022.11 Q4 新题】 给定一个长度为 n 的整数数组height。数组的元素表示山的高度,选择两个元素作为水库的边界,求蓄水量的最大值并输出蓄水量最大时的边界下标(蓄水量相同时输出下标较近的)。 阅读详情

相关推荐

格(Lattice)基础(一)

有关格的基础概念,和相关的格难题

Amire0x的小乐园 5698

Mybatis-Plus详解

Mybatis-Plus是一个Mybatis(opens new window)的增强工具,在Mybatis的基础上只做增强不做改变,为简化开发。无侵入:只做增强不做改变,引入它不会对现有工程产生影响。 损耗小:启动即会自动注入基本CURD,性能基本无损耗,直接面向对象操作。 强大的CRUD操作:内置通用Mapper、通用Service,仅仅通过少量配置即可实现单表大部分CRUD操作,更有强大的条件构造器,满足各类使用需求。支持Lambda形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需

互联网底层民工的博客 7万+

IPC-7351标准实战:如何用LPWizard_10快速生成PCB封装库(附避坑指南)

本文提供了一份详细的IPC-7351标准实战指南,手把手教你使用LPWizard_10软件快速生成符合行业标准的PCB封装库,并直接导入Cadence Allegro。文章深入解读了IPC-7351密度等级的选择逻辑,并重点分享了软件配置、QFN封装生成实战步骤,以及导出失败、焊盘异常等常见问题的避坑解决方案,旨在帮助硬件工程师提升设计效率和可靠性。

weixin_29207439的博客 154

SpringBoot结合MyBatis 【超详细】

Spring Boot与MyBatis框架集合实践。内置MyBatis大部分使用技巧,而Spring Boot起到个快速入门的效果。其中MyBatis内容涉及到业务层与数据访问层的传参知识、企业常用的动态SQL拼接、高级映射及延迟加载、以及缓存机制、最后包括PageHelper分页插件

m0_65563175的博客 12万+

LCD工程师必看:Pixelclock、Mipi Clk计算全解析(附实用公式)

本文为LCD工程师详细解析了像素时钟(Pixelclock)与MIPI时钟(Mipi Clk)的核心计算方法。文章从时序参数构成入手,通过实战公式推导,系统阐述了从屏幕分辨率、刷新率到最终MIPI速率的高效计算链路,并提供了实用的调试思路与排查清单,帮助工程师快速解决画面撕裂、闪烁等常见问题。

weixin_29266679的博客 388

Android WIFI体系:深入解析WifiLock与MulticastLock的底层实现与性能优化

本文深入解析Android WIFI体系中WifiLock与MulticastLock的底层实现机制与性能优化策略。WifiLock通过阻止Wi-Fi休眠提升网络性能,尤其WIFI_MODE_FULL_HIGH_PERF模式可显著降低延迟;MulticastLock则控制组播数据接收,但会增加功耗。文章详细探讨了其与wpa_supplicant、HAL层的交互,并提供高性能场景下的优化实践与功耗平衡方案。

php55的博客 1079

springboot 中 mybatis-plus 多数据源切换

之前的项目中,要做多数据源,网上的一般思路都是通过AOP 在service或者mapper层做数据源的动态切换,大部分人大概切换数据源代码如下 @Pointcut("execution(* com.gzstrong.cloud.qspj.*.mapper..*.*(..))") private void db1Aspect() { } @Pointcut("exe...

shrek11的专栏 3478

深入剖析STM32F103 I2C总线死锁问题及高效应对策略

本文深入剖析了STM32F103硬件I2C总线在轮询模式下发生死锁的根本原因,即硬件状态机的预取机制与软件响应速度不匹配。文章提供了高效的解决方案,包括在轮询模式下提前发送NACK/STOP信号、降低总线速度,以及治本的中断与DMA应用策略,帮助开发者根据项目需求选择最合适的方案,彻底解决这一经典硬件缺陷问题。

weixin_29184371的博客 206

springboot结合baomidou dynamic-datasource组件实现多数据源

当系统数据量过大,系统性能问题逐渐浮出水面。使用主从模式,不失是一个较好的选择。即业务在主库执行,不影响业务的查询考虑走从库。这时,程序需要动态多数据源配置。 ????程序如何实现1. pom引入多数据源组件依赖 <dependency> <groupId>com.baomidou</groupId> <artifac...

gzyes 4147

树莓派 5 AI 套件(Hailo)示例

该用户自定义类作为输入传递给回调函数,该函数在管道输出上运行。它用于主程序与回调函数之间的通信。它对 hailo_rpi_common::app_callback_class 进行了扩展,并可根据应用程序的具体情况定制附加变量和方法。

机器人控制与仿真应用 4115

【UVM实战】第一章:配置UVM环境(以VCS为例),跑通书上的例子(包括清理中间文件方法、使用DVE查看波形方法、命令执行原理探究)

如何配置UVM的VCS运行环境,运行书本上的例子呢?本节将会为你详细解答!

悟已往之不谏 知来者之可追 8137

mybatis-plus分页查询三种方法

mybatis-plus分页查询两种方法

李长渊的博客 6万+

基于51单片机的电子记分牌的设计

基于51单片机的电子记分牌的设计 电子记分牌基于51单片机的电子记分牌的设计摘要1 引言2 总体设计方案2.1 设计思路(1)设计要求(2)设计思路(3)设计方案2.3综合设计方框图(1)硬件设计框图(2)软件设计3 设计原理分析3.1 电源、复位、下载电路的设计(见图1、2、3)3.2 时钟电路的设计3.3 矩阵键盘电路的设计3.4 数码管显示电路设计4程序代码 摘要 本设计为电子记分牌设计,是以STC89C52芯片为核心,辅以必要电路设计进行的。用4位LED七段数码管显示比赛两方的分数(每方分数用2位

行走的皮卡丘 2037

SpringBoot中整合持久层框架(Mabatis、Mabatis-Plus、JPA)

在Spring Boot中整合持久层框架是一个常见的需求,因为Spring Boot提供了对多种持久层框架的集成支持。

panrenxu的博客 1408

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

SpringBoot MaBatis-Plus

整合 MyBatis-Plus 完成CRUD 目录 整合 MyBatis-Plus 完成CRUD 1、什么是MyBatis-Plus 2、整合MyBatis-Plus 3、CRUD功能 1、什么是MyBatis-Plus MyBatis-Plus(简称 MP)是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 mybatis plus 官网 建议安装 MybatisX 插件 2、整合MyBatis-Plus ..

weixin_45729272的博客 210

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

如何在SpringBoot中整合持久层框架(Mabatis、Mabatis-Plus、JPA等

FooMapper@Service@Autowired@Primary通过上述步骤,可以在Spring Boot项目中整合JPA、Hibernate和MyBatis等持久层框架,实现高效的数据访问和操作。这些整合不仅提高了开发效率,还增强了项目的可维护性和扩展性。在实际开发中,根据项目需求选择合适的持久层框架,并根据上述指南进行配置和编码,可以有效地实现数据持久化的需求。

weixin_45424996的博客 1091

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

如何在SpringBoot中整合持久层框架(Mabatis、Mabatis-Plus、JPA等)

在 Spring Boot 中整合持久层框架是开发中最常见的需求之一,Spring Boot 对主流持久层框架(MyBatis、MyBatis-Plus、JPA)提供了自动化配置支持,整合过程简洁高效。

chenwtt12的博客 886

如何快速搭建SpringBoot项目,如何在SpringBoot中整合持久层框架(Mabatis、Mabatis-Plus、JPA等)

--- ## 1. 如何配置开发环境(JDK、Maven、IDEA等) ### 1.1 JDK安装与配置 1. **下载JDK**:从[Oracle官网](https://www.oracle.com/java/technologies/downloads/)或[OpenJDK](https://jdk.java.net/)下载对应版本(推荐JDK 17或8)。 2. **安装**:运行安装程序,选择安装路径(如`C:\Program Files\Java\jdk-17.x.x`)。 3. **配置环境变量

TAX4623932的博客 999

IDEA Spring Boot Mabatis-Plus代码生成器

1.pom文件中添加依赖,版本号自己控制 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.19</v...

qq_46632322的博客 354

springboot版本导致Mabatis-Plus报错

在官方下载的源码,跑步起来,报: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: java.lang.RuntimeException: Driver org.h2.Driver claims to not accept jdbcUrl, jdbc:my..

InfiniteKen的博客 1031

mabatis plus 插入数据库后返回记录的主键id(springboot+mabatis plus +mysql)

mabatis plus 插入数据库后返回记录的主键id(springboot+mabatis plus +mysql) 通过插入的封装的对象,调用mabatis plus的insert的方法插入一条数据到数据库,然后通过对象的get方法拿到插入数据的id ...

Hui_Hong_TaiLang的博客 6372

Springboot中使用mabatis_plus拓展包多数据源配置

2)使用Mabatis-plus的拓展多数据源包可以轻松实现多数据源的配置,且不需要变换已经建好的项目目录结构和configration。如果之前一直使用的时properties文件,则新建 application.yml文件,两个文件都会对项目进行配置。1)本框架只做 切换数据源 这件核心的事情,并不限制你的具体操作,切换了数据源可以做任何CRUD。1)多数据源配置:两个库业务互不相干,a方法使用a库的数据,b方法使用b库的数据;分割的数据源 首部 即为组的名称,相同组名称的数据源会放在一个组下。...

空空墓志铭的博客 680

springboot连接MySQL,mabatis_plus写接口犯的基础错误

昨天用自己笔记本测试springboot连接MySQL,用mabatis_plus写接口,犯了很多基础错误,导致一直404,500 1:基础结构一定是要这样,特别是service要先写接口层,然后(鼠标放置接口类上alt+enter 选择实现接口)自动完成实现接口的java类。不想当然的直接不写接口类 ,只写实现类。这是规范,需要注意一下 2: 3: cl.exe中输入接口地址,不...

handsomepig123_的博客 190

WEB应用开发如何配置开发环境(JDK、Maven、IDEA等);如何快速搭建SpringBoot项目;如何在SpringBoot中整合持久层框架(Mabatis、Mabatis-Plus、JPA等

数据缓存管理:根据应用规模选择本地缓存(Caffeine)或分布式缓存(Redis),实现缓存的增删改查,并注意防范缓存穿透、击穿、雪崩等问题。Thymeleaf 视图开发:掌握基本表达式(变量、选择、消息)、条件判断、循环遍历、URL 链接和模板布局等核心功能,通过 Model 对象向视图传递数据。权限与安全控制:使用 Spring Security 实现认证和授权,支持 URL 级别和方法级别的权限控制,结合 JWT 实现无状态 API 认证,同时在前端进行权限控制展示。

TAX4623932的博客 457

如何配置开发环境、快速搭建SpringBoot项目、在SpringBoot中整合持久层框架(Mabatis、Mabatis-Plus、JPA等)、进行数据缓存管理。

【代码】如何配置开发环境、快速搭建SpringBoot项目、在SpringBoot中整合持久层框架(Mabatis、Mabatis-Plus、JPA等)、进行数据缓存管理。

taqidewa的博客 1691

Springboot集成mabatis-plus报com.xly.entity.ClientNot Found TableInfoCache.

Springboot集成mabatis-plus报com.xly.entity.ClientNot Found TableInfoCache. 在用springboot集成mabatis-plus做项目时,测试类text报了com.xly.entity.ClientNot Found TableInfoCache., 在网上搜索解决方案,按照提示检查实体类加主键以及重写model方法、return...

weixin_44840301的博客 1186
上一篇: Spring Aop学习与理解
下一篇: java时间转换
javaXingzhe
博客等级 码龄8年 3145粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值