- Black Friday
二毛_286c
图片发自App今天陪雯儿姐走路去沃尔玛买她看好的咖啡机,沃尔玛没啥人,连电器游戏那都稀稀拉拉的没几个人还是一大早就被抢空了,跟rideaucenter比少很多人,咖啡机雯儿姐选了又选,弃了,说颜值太丑,我说打五折的您还要颜值,她想给儿子买短裤,结果在一堆八九刀三双的袜子架子上里发现了一刀三双的长腰袜子,我俩果断拿下了。结果黑五这天我买了三双袜子,八个苹果,两盒白菇,一个台灯➕灯泡,走回公寓,又去九
- 有关Ucenter、Uz和ECshop的数据整合问题
舍山
最近在做ucenter和ecshop还有tipask的数据整合,遇到了不少问题。记录一下。首先是通信,通信这部ec和uc很容易,问题在于问答。一开始问答用的是ask2,可是通信完全不能成功。于是最后改用了tipask,通信的设置方法如下。image.png然后,在tipask里面设置一下就好了image.png这还是比较简单,还不用设置通用代码。通信完成之后,出现的第一个问题是ecshop出现了“
- 【分布式实战】(四)服务之间的远程调用OpenFeign
唐小尊
大学
步骤:1、两个服务均在配置文件开启openfeign,并设置项目名,application-name2、两个服务都在启动类上加上@EnableFeiginClients注解(默认是全部接口都可以被远程调用,除非你设置某一个包地址)3、使用的时候,使用其他服务的接口service-ucenter为服务名,/api/ucenter/member/inner/get-member-dto/{member
- 谷粒学院项目redirect_uri 参数错误微信二维码登录
Harbor Lau
微信
谷粒学院项目redirect_uri参数错误_redirect_uri":"http%3a%2f%2fguli.shop%2fapi%2fuce-CSDN博客修改本地配置#����˿�server.port=8160#������#spring.application.name=service-ucenter#mysql���ݿ�����spring.datasource.driver-class
- ucenter 项目配置https后ucenter提示通信失败,应该怎么解决?
Jon Daijn
杂文https网络协议http
原文地址:https://www.toymoban.com/diary/apps/35.html问题描述官网和论坛通讯是成的,换成https之后通讯失败。前提:配置上的http都已经改过成https还是不是。解决方案修改应用下的misc.php文件discuz文件有两个分别是:/uc_client/model/misc.php和/uc_server/model/misc.php官网应用在修改文件:
- 多端开发之uin-app初步
Shining_284c
1.在HBuilderX中新建uni-appimage项目结构图image配置pages.json文件{"pages":[{"path":"pages/index/index","style":{"navigationBarTitleText":"主页"}},{"path":"pages/ucenter/ucenter","style":{"navigationBarTitleText":"我的"
- Discuz!x3.2-3.4 登陆错误次数永远4次bug修复(高危漏洞)
无限星辰飞翔
Discuz数据库运维
漏洞详情在Discuz!X3.2Release20141225版本以及同期发布的UCenter软件中,开发了一个部分生效的“允许用户登录失败次数”功能,但此功能未完整开发之后仅仅注释了界面上的功能项,后续版本也没有继续开发,导致部分站点的login_failedtime在UCenter后台基本设置处保存时被设置成0,而由于不同功能项对0的处理方式有差异导致系统内对此情况的处理手段是不记录登录失败次
- WordPress 主题QUX DUX加强版
技术员阿宁
开源源代码管理php后端前端框架
模板简介:QUX主题是由轻语博客在大前端DU主题的基础上集成了Ucenter&Market插件后修改加强版,在原有主题的基础上迎合市场增加了很多的功能。主题已解密去授权。更新内容:新增关闭注册验证码(主题设置–会员中心)新增微信登录(主题设置–会员中心)新增关闭列表购买按钮(主题设置–基本)新增下载链接加密新增后台会员价格设置为0时,前台不显示该会员等级充值入口修复站务管理-会员管理会员修改一直为
- 学堂业务理解
pcgreat
学堂目前主要使用的edu_center,edu_center_other,order3个库。目前学党与精陪数据其实是混扎在一起的。edu_center有接近700张表,包含业务域还是很广的,学堂目前只涉及到部分。核心用户信息会有两部分,一部分登录账号信息是在家园edu_center,另一部分在学堂。也就是说学堂用户注册时候,会双写家园库n_ucenter。课程包:课程包:课程包对应课时,课时对应章
- 父子项目-父级项目模版
清晨的小白
4.0.0org.springframework.bootspring-boot-starter-parent2.2.7.RELEASEcom.danteucenter-demo-parent1.0.0-SNAPSHOTpomucenter-demo-parent用户中心示例1.828.1-jrecom.google.guavaguava${guave.version}dandingdanding
- 微信小程序开发之会议oa(首页搭建)
〔Lisa〕
微信小程序小程序
前言:上一篇我们掌握了关于小程序的框架,这篇博客带你完成小程序版的会议OA首页。效果如下:一,1.1先创建OA首页页面:首先我们先建一个新项目,在app.json中编写代码{"pages":["pages/index/index","pages/meeting/list/list","pages/vote/list/list","pages/ucenter/index/index"],"windo
- 虹软人脸识别
鼠爷ねずみ
后端数据库javasql
虹软人脸识别虹软人脸识别使用说明安装jar到本地仓库开始使用测试虹软人脸识别人脸识别技术采用虹软开放平台实现(免费使用)。官网:https://www.arcsoft.com.cn/使用说明使用虹软平台需要先注册开发者账号:https://ai.arcsoft.com.cn/ucenter/user/userlogin注册完成后进行登录,然后进行创建应用:创建完成后,需要进行实名认证,否则相关的S
- php yii tipask 单点登录,仿360问答系统|Tipask问答系统 v2.5 正式版
Franklin Zheng
phpyiitipask单点登录
Tipask2.5正式版更新内如如下:1、加入关注、问答动态模块,用户可关注用户以及问题2、加入推荐问题模块3、追问模块调整4、ucenter整合重新调整,由fopen方式改为数据库连接方式5、加入cms系统整合6、广告模块调整7、后台导航管理重新调整8、财富商城调整,加入了兑换动态9、后台数据库管理相关bug修正10、js数据调用bug修正11、加入在线用户列表(仅管理员可见)12、tipask
- QQ农场怀旧版搭建(附带搭建完成示例)
未成年梦想
php
QQ农场搭建示例均在宝塔面板搭建搭建完成网站,欢迎━(`∀´)ノ亻!大家种种菜http://farm.dreamlove.top/如果不出意外应该会一直续费下去,毕竟linux服务器便宜很多~所需依赖mysql5.5php5.4nginx1.22下载农场文件并安装好了依赖下载地址1:https://cloudreve.reassurehome.com/f/8PuE/farm-ucenter1.5.
- 北京ICP经营许可证备案申请流程 电信业务经营许可办理
石宗昊
业务业务分析经验分享其他icp电信经营许可证
公司在北京最近公司业务对接,需要ICP许可证号,业务方面特此记录硬性要求:1.公司不能含有外资,注册金满足100w,并且营业执照上的经营范围要有“电信业务经营、第二类增值电信业务经营”三个范围有一个范围就可以;2.公司有合适的域名并且已经做完ICP备案也就是域名备案;3.公司应当有三个社保人员提供近三个月的社保证明;开始登录工信部系统注册账号https://ucenter.miit.gov.cn/
- 麒麟操作系统V10安装达梦数据库
Garenliu
国产系统服务器
麒麟操作系统V10安装达梦数据库1、下载达梦数据库https://www.dameng.com/ucenter/docs.html2、选择DM8开发版,rh7。3、用xshell连接系统。4、把数据库安装文件挂上去,记得要点一下右上角的已连接。5、挂载安装文件,执行安装文件mount/dev/sr0/mntcd/mnt/ls./DMInstall.bin-i6、选择中文安装,其中提示可打开文件数过
- 2018-05-05
灼灼2015
学习每日英语阅读未做阅读《复盘+》P43工作9:00-20:00完成aaa表的数据完成ucenter表中app的数据修改,以及关联表所有app_code重刷,以及图片路径设置--最终可在页面上访问到头像。完成apk表的数据和图片ffmpeg+app镜像制作和验证配置恢复数据的sh文件编写和测试帮bf画devops图帮成员解决Jenkins远程部署的问题(bms和ucenter)无法做下去的事情el
- 达梦数据库官方sql文档
master_zhong
达梦数据库官方sql文档:https://www.dameng.com/ucenter/files.html?page=3达梦可视化工具(sql查询,数据迁移到mysql等):https://blog.csdn.net/fengxiaozhenjay/article/details/104562777
- 典型电子商务系统前台后台功能分析
张天龙
电子商务系统功能分析电子商务系统功能分析
电商系统前台包括用户注册、用户登录、商品浏览、商品详情页、购物车、个人中心等。电商系统后台主要包括商品管理、分类管理(就是商品的类别增加、删除等,是衣服还是数码产品)、管理员管理(增加删除管理员、管理员还分不同类型不同权限,有的只能查看物流信息、有的只能进行用户管理、而总管理员所有权限都有)、用户管理(就像discuz中ucenter的用户管理,可以增加删除用户)、图片管理等。
- PHP版单点登陆实现方案的实例
withoutfear
摘要:本文主要介绍了利用webservice,session,cookie技术,来进行通用的单点登录系统的分析与设计。具体实现语言为PHP。单点登录,英文名为SingleSignOn,简称为SSO,是目前企业,网络业务的用户综合处理的重要组成部分。而SSO的定义,是在多个应用系统中,用户只需要登陆一次就可以访问所有相互信任的应用系统。动机:用过ucenter的全站登录方式的朋友,应该都知道这是典型
- Required request body is missing
inexaustible
Java偶遇问题java
org.springframework.http.converter.HttpllessageNotReadableErception:Requiredrequestbodyismissing:publiccom.atguigu.commonutils.Rcom.atguigu.educenter.controller.UcenterlemberController.loginUser解决办法:
- 9 多端开发之uni-app起步
陶然然_niit
1.在HBuilderX中新建uni-app新建uni-app项目.jpg2.项目初始目录结构初始目录结构3.调整项目目录结构如下图image.png4.配置pages.json文件{"pages":[{"path":"pages/index/index","style":{"navigationBarTitleText":"主页"}},{"path":"pages/ucenter/ucenter
- 9 uni-app起步
洋baby
1.在HBuilderX中新建uni-appimage2.项目初始目录结构image3.调整项目目录结构如下图image4.配置pages.json文件{"pages":[{"path":"pages/index/index","style":{"navigationBarTitleText":"主页"}},{"path":"pages/ucenter/ucenter","style":{"nav
- discuz更改域名之后怎么修改环境,admin忘记密码
做我心上人
bug笔记
数据库修改admin密码原因:多年前的一个discuz论坛更换了域名导致论坛图片显示不正常,还有管理员密码忘记等问题解决:以16.0版本的discuz为例找到my_ucenter_members表,还有一个是my_common_member表,这里也有admin账号,不同在于my_ucenter_members表有个salt值(如果登录错误次数过多,可以到所有类似的*_failedlogin表清空
- 3.TP5——如何给API接口的URL上增加版本号?
一枼落知天下
api.JhouShuai.com/3.0.0/ucenter/profile---->api.JhouShuai.com/V300/ucenter/profileapi.JhouShuai.com/3.0.1/ucenter/profile---->api.JhouShuai.com/V301/ucenter/profileNginx配置server{listen80;server_namezh
- ucenter 的同步登录和退出
众乐乐_2016
php工具类收集php
首先,需要去官网下载一个ucenter的包。然后解压下来。先把ucenter/ucenter这个文件夹复制到你的项目根目录下改名为uc_server;(这里只是我建议修改,以便于我下面写的配置);然后将ucenter/advanced/uc_client复制粘贴到自己的项目上。在你项目根目录创建一个api的文件夹、把ucenter/advanced/examples/api里头有个uc.PHP复制
- [分享]PHP多城市版-房产系统源码,仿贝壳房产。
小陶在济南卖房
源码软件php
贝壳房产门户系统是一款基于php+mysql的建站系统,为在各种服务器上架设房产门户网站提供完美的解决方案。超量静态页面部署,模板与程序分离扩展性框架,无限支持深度二次开发。微信互动营销整合:微信互动营销,让我们的网站走在互联网的前沿。下方是功能介绍:论坛整合:支持UCenter快速整合,支持同步登录或退出。付费置顶:房源信息可限时列表置顶,并扣除相应积分,会员可自行操作,扣除的积分数也可在后台设
- ucenter原理
EdisonDong
ucenter是康盛(现属腾讯)开发的用户中心系统,用来打通旗下各个产品,如discuz,ucshop等。前段公司的一个需求是,要求ecstore和discuz打通,可以共享会员,经过一段时间的研究和使用,现介绍ucenter的使用和原理。流程现在假设有两个web应用,一个是商城,一个是bbs,要求在任何一个app上对会员进行的任何操作都可以同步到另一个app上,比如:会员在商城注册,没有在bbs
- 自定义函数call_user_func和call_user_func_array详解
PHP__架构师之路
看UCenter的时候有一个函数call_user_func,百思不得其解,因为我以为是自己定义的函数,结果到处都找不到,后来百度了一下才知道call_user_func是内置函数call_user_func函数类似于一种特别的调用函数的方法,使用方法如下:复制代码代码如下:functiona($b,$c){echo$b;echo$c;}call_user_func('a',"111","222"
- 书店
Annie灵兮
今天是Indigo开门的日子,Chapter关门后,市中心就没有了书店,所以Indigo入驻Rideaucenter的消息也是大家非常关注的。今天下午,一家人去逛Indigo,很好奇书店的布局有什么变化,结果发现不但店面小了很多,书也少了很多,大部分地方都是礼品,书籍反而像是植物一样的装饰品。孩子小的时候很喜欢在Chapter二楼的阅读区看书,夏天的傍晚坐在书店的地毯上一看就能一个小时,而我这个时
- jdk tomcat 环境变量配置
Array_06
javajdktomcat
Win7 下如何配置java环境变量
1。准备jdk包,win7系统,tomcat安装包(均上网下载即可)
2。进行对jdk的安装,尽量为默认路径(但要记住啊!!以防以后配置用。。。)
3。分别配置高级环境变量。
电脑-->右击属性-->高级环境变量-->环境变量。
分别配置 :
path
&nbs
- Spring调SDK包报java.lang.NoSuchFieldError错误
bijian1013
javaspring
在工作中调另一个系统的SDK包,出现如下java.lang.NoSuchFieldError错误。
org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.l
- LeetCode[位运算] - #136 数组中的单一数
Cwind
java题解位运算LeetCodeAlgorithm
原题链接:#136 Single Number
要求:
给定一个整型数组,其中除了一个元素之外,每个元素都出现两次。找出这个元素
注意:算法的时间复杂度应为O(n),最好不使用额外的内存空间
难度:中等
分析:
题目限定了线性的时间复杂度,同时不使用额外的空间,即要求只遍历数组一遍得出结果。由于异或运算 n XOR n = 0, n XOR 0 = n,故将数组中的每个元素进
- qq登陆界面开发
15700786134
qq
今天我们来开发一个qq登陆界面,首先写一个界面程序,一个界面首先是一个Frame对象,即是一个窗体。然后在这个窗体上放置其他组件。代码如下:
public class First { public void initul(){ jf=ne
- Linux的程序包管理器RPM
被触发
linux
在早期我们使用源代码的方式来安装软件时,都需要先把源程序代码编译成可执行的二进制安装程序,然后进行安装。这就意味着每次安装软件都需要经过预处理-->编译-->汇编-->链接-->生成安装文件--> 安装,这个复杂而艰辛的过程。为简化安装步骤,便于广大用户的安装部署程序,程序提供商就在特定的系统上面编译好相关程序的安装文件并进行打包,提供给大家下载,我们只需要根据自己的
- socket通信遇到EOFException
肆无忌惮_
EOFException
java.io.EOFException
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2281)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:
- 基于spring的web项目定时操作
知了ing
javaWeb
废话不多说,直接上代码,很简单 配置一下项目启动就行
1,web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="h
- 树形结构的数据库表Schema设计
矮蛋蛋
schema
原文地址:
http://blog.csdn.net/MONKEY_D_MENG/article/details/6647488
程序设计过程中,我们常常用树形结构来表征某些数据的关联关系,如企业上下级部门、栏目结构、商品分类等等,通常而言,这些树状结构需要借助于数据库完成持久化。然而目前的各种基于关系的数据库,都是以二维表的形式记录存储数据信息,
- maven将jar包和源码一起打包到本地仓库
alleni123
maven
http://stackoverflow.com/questions/4031987/how-to-upload-sources-to-local-maven-repository
<project>
...
<build>
<plugins>
<plugin>
<groupI
- java IO操作 与 File 获取文件或文件夹的大小,可读,等属性!!!
百合不是茶
类 File
File是指文件和目录路径名的抽象表示形式。
1,何为文件:
标准文件(txt doc mp3...)
目录文件(文件夹)
虚拟内存文件
2,File类中有可以创建文件的 createNewFile()方法,在创建新文件的时候需要try{} catch(){}因为可能会抛出异常;也有可以判断文件是否是一个标准文件的方法isFile();这些防抖都
- Spring注入有继承关系的类(2)
bijian1013
javaspring
被注入类的父类有相应的属性,Spring可以直接注入相应的属性,如下所例:1.AClass类
package com.bijian.spring.test4;
public class AClass {
private String a;
private String b;
public String getA() {
retu
- 30岁转型期你能否成为成功人士
bijian1013
成长励志
很多人由于年轻时走了弯路,到了30岁一事无成,这样的例子大有人在。但同样也有一些人,整个职业生涯都发展得很优秀,到了30岁已经成为职场的精英阶层。由于做猎头的原因,我们接触很多30岁左右的经理人,发现他们在职业发展道路上往往有很多致命的问题。在30岁之前,他们的职业生涯表现很优秀,但从30岁到40岁这一段,很多人
- 【Velocity四】Velocity与Java互操作
bit1129
velocity
Velocity出现的目的用于简化基于MVC的web应用开发,用于替代JSP标签技术,那么Velocity如何访问Java代码.本篇继续以Velocity三http://bit1129.iteye.com/blog/2106142中的例子为基础,
POJO
package com.tom.servlets;
public
- 【Hive十一】Hive数据倾斜优化
bit1129
hive
什么是Hive数据倾斜问题
操作:join,group by,count distinct
现象:任务进度长时间维持在99%(或100%),查看任务监控页面,发现只有少量(1个或几个)reduce子任务未完成;查看未完成的子任务,可以看到本地读写数据量积累非常大,通常超过10GB可以认定为发生数据倾斜。
原因:key分布不均匀
倾斜度衡量:平均记录数超过50w且
- 在nginx中集成lua脚本:添加自定义Http头,封IP等
ronin47
nginx lua csrf
Lua是一个可以嵌入到Nginx配置文件中的动态脚本语言,从而可以在Nginx请求处理的任何阶段执行各种Lua代码。刚开始我们只是用Lua 把请求路由到后端服务器,但是它对我们架构的作用超出了我们的预期。下面就讲讲我们所做的工作。 强制搜索引擎只索引mixlr.com
Google把子域名当作完全独立的网站,我们不希望爬虫抓取子域名的页面,降低我们的Page rank。
location /{
- java-3.求子数组的最大和
bylijinnan
java
package beautyOfCoding;
public class MaxSubArraySum {
/**
* 3.求子数组的最大和
题目描述:
输入一个整形数组,数组里有正数也有负数。
数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。
求所有子数组的和的最大值。要求时间复杂度为O(n)。
例如输入的数组为1, -2, 3, 10, -4,
- Netty源码学习-FileRegion
bylijinnan
javanetty
今天看org.jboss.netty.example.http.file.HttpStaticFileServerHandler.java
可以直接往channel里面写入一个FileRegion对象,而不需要相应的encoder:
//pipeline(没有诸如“FileRegionEncoder”的handler):
public ChannelPipeline ge
- 使用ZeroClipboard解决跨浏览器复制到剪贴板的问题
cngolon
跨浏览器复制到粘贴板Zero Clipboard
Zero Clipboard的实现原理
Zero Clipboard 利用透明的Flash让其漂浮在复制按钮之上,这样其实点击的不是按钮而是 Flash ,这样将需要的内容传入Flash,再通过Flash的复制功能把传入的内容复制到剪贴板。
Zero Clipboard的安装方法
首先需要下载 Zero Clipboard的压缩包,解压后把文件夹中两个文件:ZeroClipboard.js
- 单例模式
cuishikuan
单例模式
第一种(懒汉,线程不安全):
public class Singleton { 2 private static Singleton instance; 3 pri
- spring+websocket的使用
dalan_123
一、spring配置文件
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.or
- 细节问题:ZEROFILL的用法范围。
dcj3sjt126com
mysql
1、zerofill把月份中的一位数字比如1,2,3等加前导0
mysql> CREATE TABLE t1 (year YEAR(4), month INT(2) UNSIGNED ZEROFILL, -> day
- Android开发10——Activity的跳转与传值
dcj3sjt126com
Android开发
Activity跳转与传值,主要是通过Intent类,Intent的作用是激活组件和附带数据。
一、Activity跳转
方法一Intent intent = new Intent(A.this, B.class); startActivity(intent)
方法二Intent intent = new Intent();intent.setCla
- jdbc 得到表结构、主键
eksliang
jdbc 得到表结构、主键
转自博客:http://blog.csdn.net/ocean1010/article/details/7266042
假设有个con DatabaseMetaData dbmd = con.getMetaData(); rs = dbmd.getColumns(con.getCatalog(), schema, tableName, null); rs.getSt
- Android 应用程序开关GPS
gqdy365
android
要在应用程序中操作GPS开关需要权限:
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
但在配置文件中添加此权限之后会报错,无法再eclipse里面正常编译,怎么办?
1、方法一:将项目放到Android源码中编译;
2、方法二:网上有人说cl
- Windows上调试MapReduce
zhiquanliu
mapreduce
1.下载hadoop2x-eclipse-plugin https://github.com/winghc/hadoop2x-eclipse-plugin.git 把 hadoop2.6.0-eclipse-plugin.jar 放到eclipse plugin 目录中。 2.下载 hadoop2.6_x64_.zip http://dl.iteye.com/topics/download/d2b
- 如何看待一些知名博客推广软文的行为?
justjavac
博客
本文来自我在知乎上的一个回答:http://www.zhihu.com/question/23431810/answer/24588621
互联网上的两种典型心态:
当初求种像条狗,如今撸完嫌人丑
当初搜贴像条犬,如今读完嫌人软
你为啥感觉不舒服呢?
难道非得要作者把自己的劳动成果免费给你用,你才舒服?
就如同 Google 关闭了 Gooled Reader,那是
- sql优化总结
macroli
sql
为了是自己对sql优化有更好的原则性,在这里做一下总结,个人原则如有不对请多多指教。谢谢!
要知道一个简单的sql语句执行效率,就要有查看方式,一遍更好的进行优化。
一、简单的统计语句执行时间
declare @d datetime ---定义一个datetime的变量set @d=getdate() ---获取查询语句开始前的时间select user_id
- Linux Oracle中常遇到的一些问题及命令总结
超声波
oraclelinux
1.linux更改主机名
(1)#hostname oracledb 临时修改主机名
(2) vi /etc/sysconfig/network 修改hostname
(3) vi /etc/hosts 修改IP对应的主机名
2.linux重启oracle实例及监听的各种方法
(注意操作的顺序应该是先监听,后数据库实例)
&nbs
- hive函数大全及使用示例
superlxw1234
hadoophive函数
具体说明及示例参 见附件文档。
文档目录:
目录
一、关系运算: 4
1. 等值比较: = 4
2. 不等值比较: <> 4
3. 小于比较: < 4
4. 小于等于比较: <= 4
5. 大于比较: > 5
6. 大于等于比较: >= 5
7. 空值判断: IS NULL 5
- Spring 4.2新特性-使用@Order调整配置类加载顺序
wiselyman
spring 4
4.1 @Order
Spring 4.2 利用@Order控制配置类的加载顺序
4.2 演示
两个演示bean
package com.wisely.spring4_2.order;
public class Demo1Service {
}
package com.wisely.spring4_2.order;
public class