MVC三层架构和Spring框架

野村综研O3W架构资料(内部) 关于野村综研推广的大型机COBOL O3W架构的相关内部资料 立即下载

一。MVC设计理解

MVC架构设计:

M:model--》bean
V:view--》jsp
C:controller--》 servlet层
目的:分层设计,降低组件之间的耦合度

在这里插入图片描述

二Spring介绍:

Spring框架:

2大核心:IOC AOP

1)IOC: 把创建对象权利反转给spring容器(创建对象)
从另外层面理解 DI: 依赖注入,把创建好的对象注入到所需的组件中。
(组件:控制层 业务层 持久层)
2)AOP:面向切面编程 ,目的让关注点代码和业务代码相分离。
		日志管理
		性能检测
		事务管理
	优点:
		高内聚,低耦合
		便于维护(XML)

三。 Spring框架搭建

开源框架

在这里插入图片描述

步骤 Step1:

导入jar core bean expression context commons-io commons-logging
在这里插入图片描述## Step2: 创建Spring 容器XML文件

在这里插入图片描述在这里插入图片描述在这里插入图片描述## Step3:测试类: 测试所创建对象
在这里插入图片描述在这里插入图片描述

四。 Spring框架 bean 相关知识点

bean生命周期

在这里插入图片描述

Bean 作用域: 单例模式 多例模式

在这里插入图片描述在这里插入图片描述

Bean 懒加载问题

在这里插入图片描述在这里插入图片描述

五。需求: 给定一个User类,创建一个张三 20的一个用户。

在这里插入图片描述在这里插入图片描述

Infoworks ICM 培训文档教程完整版.rar 建立排水管网模型教程,完整版 立即下载

相关推荐

3大框架资料(经典)

3大框架资料(经典) hibernate3.1 struts2 spring (speing osgi)

我对O3W框架的理解

          在上海实习的几个月参加到cobol项目组,接触到O3w框架,用到COBOL+O3W+TP1架构实际上就是B/S结构,采用jsp作为页面的显示,利用webphere搭建jsp的解释环境,然后在上面使用o3w的应用框架。通过jsp提交数据o3w会根据事先定义好的数据容器组成数据包传送给oltp和ictp,通过他们将数据包根据定义文件转换为电文,即上电文。这时候的oltp与ict

李猛的BLOG 9356

骗分导论 CSP、NOIP、蓝桥杯、PAT、USACO等竞赛的算法骗分技巧 轻松省三

问题来了,那么多座桥,炸一座就破坏岛屿的联系,可能性微乎其微(除非特别设计数据)。它们的价值极大,不仅能初步帮你检验程序的对错,而且,如果你不会做这道题,你就可以直接输出样例!在OI考试中最后难的题数据最后的几个,他们往往不会创造新的数据,此时就可以直接输出最后几个数据了。需要运用《骗分导论》第3章中学到的知识,先写出朴素算法,然后造一些数据,可能就会发现规律。有些时候,问题的答案可能很有特点:对于大多数情况,答案是一样的。据说,在NOIP2013中,有人最后一题不会,愤然打了个随机数,结果得了。

星卯教育-信奥教练tony 6404

Object 3Tier Infoworks (简称 O3W)

声明:摘自基于O3W平台的证券交易系统设计与实现_易轶 2007年硕士学位论文 仅供学习,如有侵权,请联系作者删除! 第二章 Object 3Tier Infoworks 平台的研究 2.1 分布式多层架构技术介绍  传统的分布式应用系统模式是“主机/终端”或“客户机/服务器,客户机/服务器系统(Client/Server System)的结构是指把一个大型的计算机应用系统变为多个能互为...

weixin_30617561的博客 830

深入解析进化算法中的选择与多样性

在计算科学的世界里,最优雅的解决方案往往源于最古老的智慧——大自然。进化算法(Evolutionary Algorithms, EAs)正是这样一种受达尔文自然选择学说启发的强大工具。它们通过模拟“适者生存”的过程,在庞大的可能性海洋中搜寻最优解。。:指的是深入挖掘和优化已知的优质解。这就像在一片已知的沃土上精耕细作,力求获得最高产量。强大的选择压力会促进这一过程。:指的是在整个搜索空间中寻找全新的、可能更优的解。这好比派遣探险队去发现新大陆,充满了未知与机遇。保持种群的多样性是探索的关键。

weixin_62533513的博客 716

M×N扫描序列图像拼接、大视场图像拼接、全景图像拼接、2D网格拼图方法、累计误差消除(显微图像/航拍图像等)

M×N序列图像完整拼接方法前言一、最朴实的一般方法二、广度优先搜索算法1.引入库2.读入数据整体路径优化算法 前言 1、网上有很多介绍图像两两拼接的算法,但是缺少对M×N张子图两两相对位置关系获得整体误差较小,肉眼下无明显错位的完整图像的算法实现。 2、由于拼接算法的不稳定可能会产生不同程度的误差,那么如何需要选择(搜索)误差较小拼接路径。 一、最朴实的一般方法 示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。 二、广度优先搜索算法 1.引入库 代码如下(示

qq_37764141的博客 5407

spring+springMvc+struts的SSH框架整合

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34210740的博客 280

CentOS 环境 sngrep 安装及使用

在呼叫中心类应用开发过程中,经常需要对 SIP 信令抓包,分析排查问题。通常抓包的工具非常多样,如 Wireshark、tcpdump、ngrep 等都是可选项,但是针对 SIP 信令的抓包,sngrep 则更为好用。因为 sngrep 不仅提供了图形界面,还会将一通会话的 SIP 信令关联汇总,非常直观执行以下命令下载 的相关依赖库 1.2 添加 sngrep 的源并导入 执行下面的命令新增一个源仓库配置文件 然后在该文件中写入以下配置内容 执行命令导入源仓库的公钥 1.3 安装 sngrep

谈谈1974 8148

一文看懂MVC模式、Spring MVC框架和三层架构之间的区别和联系

浅谈一下MVC模式、Spring MVC框架和三层架构之间的区别和联系,虽然老套但是经典永不过时!

weixin_42232589的博客 1282

HC32F460 SPI DMA 实现高效TFT屏幕刷新的实战解析

本文针对HC32F460 MCU驱动TFT屏幕时刷新卡顿的问题,深入解析了SPI DMA技术的实战应用。通过对比传统查询模式与DMA模式的性能数据,详细阐述了如何配置SPI与DMA资源、构建核心驱动框架,并提供了避坑指南与进阶优化思路,最终实现高效、流畅的屏幕刷新,显著降低CPU占用率。

weixin_29163797的博客 151

eICU数据库没有ventilation_event表

各位学友大家好,我是环湖医院神经外科的飞时过,很多外院的老师和我问,ventilation_event表的问题,哪怕用ChatGPT也无法正确生成,今天我给大家用SQL做一个拿来就能用的。

环湖数据科学知识共享平台 936

【Spring】第三课 Spring框架搭建MVC三层架构

概念 本文对Spring框架在项目的实际应用和搭建项目框架中的作用和应用的介绍。 1.搭建项目开发环境 本文连接的数据库是mydb,采用的表是account,银行账户信息的数据表,如果读者对该表的结构不太清楚,可查阅该文【MyBatis】第五课 银行账户管理系统网站开发 创建项目,将所需要的jar包导入lib文件夹中 按照MVC三层架构流程图创建controller层,service层,dao层以及util层,test层,分别对应于控制层,业务逻辑层,数据访问层,工具包和测试包等等。 对

笔触狂放的博客 4343

【LAMMPS学习】四、运行 LAMMPS(2)命令行选项

本部分解释了在安装可执行文件或下载源代码并构建可执行文件后如何运行 LAMMPS。命令文档页面描述了输入脚本的结构以及它们可以包含的命令。

荷塘阅色 5242

java三层架构是哪三层_Java框架(Struts2+Spring+MyBatis三层,Struts MVC)之间的关系

来源:http://www.cnblogs.com/p2227/p/3551243.html概述一个JavaEE的项目,页面用JSP,后台用了Struts2+Spring+MyBatis,数据库用的是Oracle,这么多技术名词,他们之间的关系如何,整体是怎么运作的,用什么东西进行关联?这是开发过程中任何一个成员都必须要了解的。即使你只关注某一个方面,例如前端。Web端Struts其实是JavaE...

weixin_39955953的博客 291

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

spring struts2 mybatis框架学习总结(mvc三层架构)

spring struts2 mybatis框架学习总结(mvc三层架构) ssi的框架主要是由struts2,spring以及ibatis组成,他们负责各层之间的交互与协作,从而实现整个web端的功能实现与整合。 相信大家对于mvc的三层架构已经灰常熟悉了,在这就不细讲了,个人感觉ssi的框架结构还是比较典型的mvc三层架构,还是比较容易上手的。关于这块的

龙炎轻舞 6750

深度学习工具包 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&#39;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(&#39;DeepLearnToolbox&#39;));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(&#39;state&#39;,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&#39;); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand(&#39;state&#39;,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 = &#39;sigm&#39;;%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, &#39;Too big error&#39;);```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(&#39;state&#39;,0)sae = saesetup([784 100]);sae.ae{1}.activation_function = &#39;sigm&#39;;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)&#39;)% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;;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, &#39;Too big error&#39;);```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x&#39;,28,28,60000))/255;test_x = double(reshape(test_x&#39;,28,28,10000))/255;train_y = double(train_y&#39;);test_y = double(test_y&#39;);%% 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&#39;ll get around 1.2% errorrand(&#39;state&#39;,0)cnn.layers = { struct(&#39;type&#39;, &#39;i&#39;) %input layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 6, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 2) %sub sampling layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 12, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 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, &#39;Too big error&#39;);```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(&#39;state&#39;,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, &#39;Too big error&#39;);%% ex2 neural net with L2 weight decayrand(&#39;state&#39;,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, &#39;Too big error&#39;);%% ex3 neural net with dropoutrand(&#39;state&#39;,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, &#39;Too big error&#39;);%% ex4 neural net with sigmoid activation functionrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;; % 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, &#39;Too big error&#39;);%% ex5 plotting functionalityrand(&#39;state&#39;,0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = &#39;softmax&#39;; % 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, &#39;Too big error&#39;);%% 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(&#39;state&#39;,0)nn = nnsetup([784 20 10]); nn.output = &#39;softmax&#39;; % 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, &#39;Too big error&#39;);```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

SpringMVC:三层架构和 MVC

Spring框架 SSM:SpringMVC+Spring+Mybatis SSH:Struts2+Spring+Hibernate SSSP:SpringMVC+Spring+SpringData JPA 三层架构 **表现层:**接收客户端请求,相应请求结果;表现层的设计一般都使用 MVC 模型(MVC是表现层的设计模型,和其他层没有关系) 业务层: (service) 负责业务逻辑处理 持久层:(dao)负责数据持久化,包括数据层即数据库和数据访问层 MVC 模型 Model(模型): 通常指的就是我

急急如律令 339

JavaWeb——Web后端开发-总结(Web 后端开发三层架构、pring 核心功能回顾、各技术归属框架说明、关于 Spring MVC、关于 SSM 架构与整合)

本文总结了基于SpringBoot的Web后端开发知识体系。主要包含三层架构(Controller、Service、DAO)及请求流程,并回顾了Spring核心功能(IOC/DI、AOP、事务管理等)。文章明确了各技术所属框架(如Filter属于JavaWeb,MyBatis为持久层框架),指出SpringMVC是Spring的Web模块而非独立框架。同时对比了传统SSM架构(Spring+SpringMVC+MyBatis)与SpringBoot开发的差异,强调当前企业项目普遍采用SpringBoot提高

li13437542099的博客 399

三层调用关系_梳理MVC与三层架构的关系

MVC与三层架构系统架构系统架构是指,整合应用系统程序大的结构。经常提到的系统结构有两种:三层架构MVC这两种结构既有区别,又有联系。但这两种结构的使用,均是为了降低系统模块间的耦合度。三层架构三层架构是指:视图层 View、服务层 Service,与持久层 Dao。它们分别完成不同的功能。View 层:用于接收用户提交请求的代码在这里编写。Service 层:系统的业务逻辑主要在这里完成。Dao...

weixin_34355933的博客 1332

三层结构和MVC!!!

Service层是建立在DAO层之上的,建立了DAO层后才可以建立Service层,而Service层又是在Controller层之下的,因而Service层应该既调用DAO层的接口,又要提供接口给Controller层的类来进行调用,它刚好处于一个中间层的位置。控制的配置也同样是在Spring的配置文件里面进行,针对具体的业务流程,会有不同的控制器,我们具体的设计过程中可以将流程进行抽象归纳,设计出可以重复利用的子单元流程模块,这样不仅使程序结构变得清晰,也大大减少了代码量。

weixin_74149684的博客 1062

MVC与三层框架|Spring的基础应用

学习目标: 花10天时间学习SSM框架能学多少? 学习内容: 提示:这里可以添加要学的内容 1.了解MVC与三层架构 2.Spring的基本应用 学习时间: 周日 : 上午8点-中午12 点 下午 3 点-下午 6 点 学习产出: 1.1 什么是MVC ? MVC全称(Model View Controller)模型-视图-控制器 MVC是一个设计模式,这个模式是让应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自

AI手套的博客 292

Spring-MVC三层模型和MVC架构模式的区别和Spring-MVC框架基础概念和知识点------Spring-MVC框架

Spring-MVC三层模型和MVC架构模式的区别和Spring-MVC框架基础概念和知识点------Spring-MVC框架

在经历了无数个黑夜之后,我决定自己成为太阳 262

三层架构 MVC SSM 构成和关系

三层架构 1.用户界面层 (表现层 ) 负责和用户进行交互 2.业务逻辑层 对数据层的操作 和对业务的逻辑处理 3.数据访问层 广泛说就是对数据库的操作 通俗来讲 浏览器就是用户界面层 连接用户表现层和数据访问层就是业务逻辑层 包括各种模型设计 算法 验证等 数据访问层说白了就是对数据库进行增删查改 MVC组成 Model模型 View 视图 controller 控制器 视图:比如说是HTML...

林先生学习博客 521

Web中MVC设计理念 & 经典三层架构 & 五大主流框架

一、Web的MVC设计理念和MVC框架: 之前在Web篇04中已经详述了Servlet、TomCat、JSP和Web.xml之间的联系; (1)浏览器发送请求到收到响应,简要的过程如下: 浏览器发送请求后,由Web.xml中规定的协议,进入TomCat中特定的Servlet,服务器先到Web-Content中找有没有对应的html/jsp页面,如果没有再到WEB-INF目录下的xml配置文件中找映...

攻城狮Kevin 5万+

javaweb--MVC与三层架构&SSM与三层架构的关系

1. MVC 什么是MVC: Model view Controller 模型、视图、控制器 1.1 以前的架构 用户直接访问控制层,控制层就可以直接操作数据库; servlet--CRUD(增删改查)-->数据库 弊端:程序十分臃肿,不利于维护 servlet的代码中:处理请求、响应、视图跳转、 处理JDBC、处理业务代码、处理逻辑代码 架构:没有什么是加一层解决不了的! 程序猿调用 ↑ JDBC (实现该接口) ↑ Mysql Oracle SqlServer ....(不同厂商)

天行健 君子以自强不息,地势坤 君子以厚德载物。 1886

java和ssm是什么关系:MVC、SSM与三层架构的构成及相互关系

本文主要想谈的内容有:为什么要有架构?三层架构是什么? MVC框架是什么?MVC框架和三层架构的关系?MVC框架的工作流程?SSM框架和三层架构的关系?为什么要有架构? 这是为了满足“低耦合,高内聚”,实现代码的健壮性和可扩展性。比如为了更好的降低各层间的耦合度,在三层架构程序设计中,采用面向抽象编程。即上层对下层的调用,是通过接口实现的。而下层对上层的真正服务提供者,是下层接口的实现类。服务标准(接口)是相同的,服务提...

ITSM/ITIL/网络安全/IT运维 1501
上一篇: request和response总结
下一篇: spring:setter注入构造器注入注解注入
改变就是好事~
博客等级 码龄7年 0粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值