关于hibernate反响映射文件的总结

扩展卡尔曼滤波(EKF)理论讲解与实例(matlab、python和C++代码) 扩展卡尔曼滤波(EKF)理论讲解与实例(matlab、python和C++代码) 文章目录扩展卡尔曼滤波(EKF)理论讲解与实例(matlab、python和C++代码)理论讲解KF和EKF模型对比雅可比矩阵计算计算实例应用实例线性模型CV模型:CA模型非线性模型CTRV模型:CTRV实例(python)small demo抛物线demo飞机高度demoC++实例参考文献 我们上篇提到的卡尔曼滤波是用于线性系统,预测(运动)模型和观测模型是在假设高斯和线性情况下进行的。简单的卡尔曼滤波必须应用在符合高斯分布 阅读详情
 

1.指定主键后的映射文件:

<class name="javaBean对象" table="数据库中表名 " >

        <id name="javaBean中使用的字段" type="java.lang.String">

            <column name="表中字段" length="长度" />

            <generator class="主键生成方式" />

        </id>

<property name="firmTypeName" type="java.lang.String">

            <column name="firm_typeName" length="20" not-null="true" />

        </property>

</class>

 

2.没有指定主键,数据库中没有id字段的映射文件:

<class name=" javaBean对象" table="数据库中表名" >

  <composite-id name="id" class="包含id的类名">           

<key-property name="名称" type="java.lang.String">

                <column name="名称" length="50" />

            </key-property>

            <key-property name="时间" type="java.sql.Timestamp">

                <column name="时间" length="23" />

            </key-property>

  </composite-id>

 </class>

 

3.没有指定主键,但数据库中存在id字段映射文件:

<class name="com.Test1" table="test1" >

        <composite-id name="id" class="com.test.Test ">

            <key-property name="id" type="java.lang.String">

                <column name="id" length="32" />

            </key-property>

            <key-property name="name" type="java.lang.String">

                <column name="name" length="20" />

            </key-property>

        </composite-id>

</class>

 

总结:如果没有在创建数据库中表的时候指定主键,则用hibernate映射时,会指定为联合主键,即方式2,方式3。当指定了主键后,即方式1。

   在方式1中,主键的字段用<id></id>,加上主键的生成方式,例如:

<generator class="主键生成方式" />,其余属性用<property>。

而在方式2和方式3中(没有指定主键),用<composite-id name="id" class=" ">

包含表中的字段,字段用<key-property>。

 

另外,当数据库中没有指定主键的时候,可以在hibernate中利用指定主键,正常生成反向映射文件的方法,指定数据库中的一个字段为主键,可以重复。

这在数据库中,主键是不允许重复的。

             

 

AI 时代嵌入式工程师的能力模型与学习路线:全系列收官 阅读详情

相关推荐

用InVEST做碳中和规划?手把手教你计算城市碳储量与热岛效应

本文详细介绍了如何利用InVEST模型进行城市碳中和规划的科学评估。通过手把手教学,演示了如何使用该模型的碳存储与城市热岛缓解模块,从数据准备、模型运行到结果解读,量化评估不同规划方案下的碳储量变化与热岛效应缓解潜力,为城市规划者提供科学的决策依据。

weixin_29201313的博客 822

Linux内存管理:反向映射机制(匿名页,文件页和ksm页)

目录 1.反向映射的发展 2.反向映射应用场景 3.匿名页的反向映射 4.文件页的反向映射 5.ksm页的反向映射 6.总结 7.作者简介 8.推荐阅读 为了系统的安全性,Linux内核将各个用户进程运行在各自独立的虚拟地址空间,用户进程之间通过虚拟地址空间相互隔离,不能相互访问,一个进程的奔溃不会影响到整个系统的异常也不会干扰到系统以及其他进程运行。 Linux内核可以通过共享内存的方式为系统节省大量内存,例如fork子进程的时候,父子进程通过只读的方式共享所有的私有页面。再比如.

RToax 3070

保姆级教程:用Verilog手把手实现一个MIPI CSI-2 D-PHY接收器(附PPI接口时序详解)

本文提供了一份详细的Verilog实现MIPI CSI-2 D-PHY接收器的教程,重点解析了PPI接口时序和deskew数据对齐技术。通过模块划分、时钟域处理、状态机设计和错误恢复机制等实战内容,帮助开发者掌握高速数据接收的核心技术,适用于嵌入式视觉系统开发。

weixin_30619101的博客 513

使用MyEclipse添加Hibernate支持和反向工程生成映射关系

本博客主要介绍如何在普通Web工程上添加Hibernate支持,以及通过数据库表反向生成映射文件。

geekfly的Blog 5772

用Python玩转Carla-Apollo联合仿真:手把手教你实现自动驾驶测试

本文详细介绍了如何使用Python实现Carla-Apollo联合仿真,从环境搭建到自动驾驶算法测试的全流程。通过Carla提供的高逼真仿真环境和Apollo的自动驾驶算法栈,开发者可以高效验证感知、规划和控制模块。文章包含环境配置、Python API操作、桥接实现及实战测试,为自动驾驶开发提供完整解决方案。

wasm7browser的博客 267

Abaqus 2023 保姆级安装避坑指南:从环境变量到许可证配置,一次搞定

本文提供Abaqus 2023的详细安装指南,涵盖环境变量设置、许可证配置等关键步骤,帮助用户避开常见安装陷阱。通过系统环境检查、目录结构规划、许可证服务器安装及Java环境配置等实用技巧,确保顺利完成安装并优化软件性能。

weixin_42524276的博客 426

Eclipse使用hibernate插件反向生成实体类和映射文件

一、安装hibernate tools插件 1、在线安装 通过Eclipse的Help->Install New Software 在线安装插件,插件连接为: eclipse helios(3.6)版 添加如下地址:http://download.jboss.org/jbosstools/updates/stable/helios/ 选择性安装:hibernate t

xwnxwn的专栏 4399

把云端打印带回办公室:通信场景 SAP_COM_0466 打通 SAP BTP ABAP environment 与本地打印机的 Pull Integration 实战

摘要: 本文探讨云端SAP系统如何通过SAP_COM_0466通信场景实现与本地打印机的安全连接。核心方案采用Pull Integration模式,由本地组件(如SAP Cloud Print Manager或第三方OMS)主动从云端打印队列拉取任务,避免网络边界冲突。配置流程涵盖通信安排创建、打印队列绑定及权限管理,并强调队列类型必须选择"Pull Integration Queue"的关键细节。方案通过分离云端生产与本地打印环节,既保障安全性又便于运维监控,适用于SAP BTP AB

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 144

SSH 项目 hibernate 反向 映射 生 成 表

<br />如果有个SSH 的项目 ,但是没有数据库表结构 ,可以通过hibernate 的 反向映射机制生成表 <br /> <br />可以参考如下 配置方式 <br /> <br /> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource"/>

getdate的专栏 5678

遥感图像地物覆盖分类,数据集制作-分类模型对比-分类保姆级教程

1.新建shp文件地理坐标系保持和影像一致,面类型2.打开属性表3.添加字段这里分类6类,点击添加值添加添加完毕开始人工选地物类型,制作数据集开始标注,标注的时候可以借助谷歌地图来看标记足够多的样本打开面转栅格工具设置nodata值为15。

热爱分享,热爱记录 2526

YOLOv11改进有效涨点专栏目录 | 含卷积、主干、注意力机制、Neck、检测头、损失函数、二次创新C2PSA/C3k2等各种网络结构改进

Hello,各位读者们好.本文为最新YOLOv11有效涨点专栏目录,YOLOv11以及发布了一个月左右,这个过程中我也是给大家整理了许多的机制,其中包含了C3k2、主干(均支持根据yolov11训练的版本进行二次缩放,全系列都能轻量化)、检测头、注意力机制、Neck多种结构上创新,也有损失函数和一些细节点上的创新。

Snu77的博客 8万+

Eclipse通过HibernateTool插件反向生成实体类和映射文件

一、创建项目数据库连接 1.Eclipse调出Data Source Explorer管理器 2.新建对应的数据库连接(这里用的是mysql) 3.选择数据库驱动 4.添加对应版本数据库驱动jar包 5.配置驱动连接属性 6.测试连接成功,Finish 7.此处生成数据库连接 二、生成Hibernate Configuration 1.调出Hibe...

爱不离此的博客 1465

UFAST车道线检测 Ultra-Fast-Lane-Detection 从环境搭建到复现完成(一)

UFAST车道线检测 Ultra-Fast-Lane-Detection 从环境搭建到复现完成(一)

m0_46364958的博客 4345

eclipse 中 使用Hibernate Tools 3.4 从数据库方向生成 hibernate 配置文件

eclispe 不想Myeclipse里面有自带的反响 从数据库里面生成 配置文件和类。但eclipse很友好,可能容纳各种插件,想装什么,就装什么,不走寻常路。首先到hibernate 的老窝去下载Hibernate Tools 插件,网站为:http://download.jboss.org/jbosstools/updates/development/indigo/, 在eclipse里面

CHINADENG的专栏 1690

深度学习工具包 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")

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

沉重的负担-Hibernate的反模式

前言 虽然Hibernate作为最早流行的轻量级ORM,java社区的头号杀手应用,给数据库软件开发带来极大的便利和影响,但是在长期的实践中,仍觉得有些场景比较笨重,使用起来不甚顺手,遂发发牢骚。 虽然本人有能力解决这些问题,也提到了以前开源的扩展模块,但并非刻意宣传,因为对第3个模式的不满致使我决定放缓对hibernate的修改,除非有外力支持,比如所在公司支持或者网友支持。 题外话,我正在...

cm4ever 164

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

28hibernate_cache_level_2

hibernate二级缓存二级缓存也称进程级的缓存或SessionFactory级的缓存,二级缓存可以被所有的session共享二级缓存的生命周期和SessionFactory的生命周期一致,SessionFactory可以管理二级缓存二级缓存的配置和使用:    * 将echcache.xml文件拷贝到src下: &lt;defaultCachemaxElementsInMemory="1...

weixin_34119545的博客 125

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SSH框架组合(Struts2+Spring+Hibernate)Maven+IDEA

1.概念 1.1、Struts2 背景 由出色稳定的框架struts1和WebWork框架整合而来。 (struts1是Apache软件基金会赞助的一个开源项目,它通过采育好难过javaservlet/jsp技术,实现了基于java ee web应用的mvc设计模式的应用框架,是mvc经典设计模式中的一个经典产品。struts1结构简单小巧,十分易用,一度市场占有率超过20%,s...

跳出舒适圈 1194

SSH框架搭建

由出色稳定的框架struts1和WebWork框架整合而来。解除了与servlet的强耦合性轻量级MVC框架,主要解决了请求分发的问题,重心在控制层和表现层。所谓轻量级,低侵入性,与业务代码的耦合度很低。即业务代码中基本不需要import它的包。struts2实现了MVC,并提供了一些列API,采用模式化方式简化业务开发过程。ORMhibernate中一个比较重要的概念,全称是Object Relational Mapping(直译就是对象关系映射)。

kesteler的博客 876

ssh框架面试

谈谈对mvc的理解: mvc就是一种开发模式,model-view-controller的简称,就是模型-视图-控制器 视图: 就是用户看到并进行交互的界面,视图向用户显示相关的数据,并接受用户的输入,视图不尽兴任何业务逻辑的处理。 模型: 表示业务数据和业务逻辑,详单与javabean,一个模型能位多个视图提供数据,这提高了应用程序的重用性。 控

wangxiaohua_147的博客 8075

ORACLE数据库number类型使用hibernate反向生成JavaBean的数据类型

1> 你应该用的Oracle吧,不要用例面的number作为主键,数据库中使用long或者int.这样反响工程的到的主键就是Long或者Intger类型的了。 2>如果非用不可也有两种方案供选择: ① 每次都要将数据转换成Bigdecimal然后插入到数据库中,具体可以通过 Bigdecimal的构造方法,例如你的主键是bg,那么添加520到主键就是: bg=new BigDecimal(5

Spark_追求者的专栏 990

今天我又去面试了,和面试官聊了半天 MyBatis

点击上方Java后端,选择设为星标优质文章,及时送达前言:本文为《今天你面试了吗》系列文章,采用情景对话的方式虚构面试场景,旨在帮助大家梳理常用 Java 技术栈的知识点,上一篇...

公众号:Java后端 741

mybatis 带分号批量sql_今天我又去面试了,和面试官聊了半天 MyBatis

,选择 优质文章,及时送达前言:本文为《今天你面试了吗》系列文章,采用情景对话的方式虚构面试场景,旨在帮助大家梳理常用 Java 技术栈的知识点,上一篇文章发布后反响良好,此系列还会继续更新。日后我会把此系列整理成 PDF 版本,发布给大家。还请大家置顶(标星)本公众号:Java后端,第一时间接收优质博文。昨天刚刚面完 Spring,根据hr的反馈说面试官对我的整体表现还算满意,然后又通知我今天有...

weixin_36115763的博客 308

myeclipse+mysql+hibernate连接+反向生成映射关系+测试

首先参考连接JDBC 接着在项目中添加Hibernate支持 右键项目-myeclipse-Project  Facets-Install Hibernate Facet 接下来如图 完成默认自动添加的东西 根据数据库中的表生成持久化类和映射文件 进入数据库 选择选中的表-右键-Hibernate Reverse Eng

xin917480852的博客 2017

IDEA 下 hibernate 反向生成实体和映射文件

IDEA 下 hibernate 反向生成实体和映射文件选中项目,鼠标右键项目,选择Add Frameworks Support在Persistence中右键项目,然后点击Generate Persistence Mapping,选择By Database Schema...

蒋酱酱的博客 3431

hibernate反向映射 no entries available

做项目时,有时需要用hibernate反向映射表,很多时候会出现no entries available,无法选择项目文件夹进行生成,网上有一种说法是没有加入hibernate的特性,但我们明明就是用了hibernate的项目。解决方法就是,在工程的.project文件中,加上如下文字,说明此项目是hibernate项目。 &lt;buildCommand&gt;   &lt;name&gt;co...

wangpingjing的博客 425

利用hibernate配置文件逆向映射数据库表

很多时候在网上下载被人的项目wend

0≡(-∞,+∞) 662
上一篇: 用Serv-U架设个人FTP
下一篇: 关于ssh三大框架中web.xml的总结
ff55c
博客等级 码龄18年 13粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值