1. 基于Spring MVC的圖片上傳應用

Spring MVC是一種基于Java的應用程序開發(fā)框架,非常適合用于開發(fā)Web應用程序。在本實例中,我們將利用Spring MVC框架和AJAX技術(shù)實現(xiàn)一個比較基礎(chǔ)的圖片上傳功能。
在圖片上傳的過程中,我們可以使用Spring的MultipartResolver將圖片文件解析成多部分對象,然后通過交互式AJAX技術(shù)將上傳進度展示給用戶,在用戶完成上傳之后再將文件保存到后臺服務器上。
首先,我們需要在Spring MVC的配置文件中開啟上傳功能:
“`
“`
接著,需要在前端頁面進行文件上傳表單的編寫:
“`
“`
最后,定義后臺上傳函數(shù),將文件保存到服務器:
“`
@RequestMapping(value = “upload.do”, method = RequestMethod.POST)
@ResponseBody
public String upload(HttpServletRequest request) throws IOException {
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
MultipartFile file = multipartRequest.getFile(“file”);
if (file != null) {
String contentType = file.getContentType();
String[] allowedTypes = {“image/jpeg”, “image/png”, “image/gif”};
boolean allowed = Arrays.asList(allowedTypes).contains(contentType);
if (allowed) {
String filename = file.getOriginalFilename();
String suffix = filename.substring(filename.lastIndexOf(“.”));
Random random = new Random();
String newFileName = System.currentTimeMillis() + “” + random.nextInt(1000) + suffix;
File newFile = new File(request.getSession().getServletContext().getRealPath(“/upload”) + “/” + newFileName);
FileUtils.copyInputStreamToFile(file.getInputStream(), newFile);
return “ok”;
}
}
return “error”;
}
“`
2. 基于Spring Boot的簡易博客系統(tǒng)
Spring Boot是一款基于Spring框架的快速應用開發(fā)框架,可以有效降低初期開發(fā)的復雜度。在本實例中,我們將利用Spring Boot搭建一個簡易的個人博客系統(tǒng)。
在博客系統(tǒng)的開發(fā)過程中,我們需要考慮博客的發(fā)布、修改、刪除、查詢等功能。而在Spring Boot中使用MyBatis作為ORM框架,可以極大地簡化我們的開發(fā)過程。
首先,我們需要在配置文件中進行數(shù)據(jù)庫的配置:
“`
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/blogdb
spring.datasource.username=root
spring.datasource.password=****
“`
接著,定義MyBatis的實體類和Mapper文件:
“`
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Blog {
private int id;
private String title;
private String content;
private Date createTime;
}
@Mapper
@Repository
public interface BlogMapper {
List selectBlogs();
Blog selectBlogById(int id);
int insertBlog(Blog blog);
int updateBlog(Blog blog);
int deleteBlogById(int id);
}
“`
最后,在Controller中編寫路由函數(shù),將博客系統(tǒng)的各種功能進行整合:
“`
@Controller
public class BlogController {
@Autowired
private BlogMapper blogMapper;
@RequestMapping(value = “/”, method = RequestMethod.GET)
public ModelAndView index() {
ModelAndView mv = new ModelAndView(“index”);
List blogs = blogMapper.selectBlogs();
mv.addObject(“blogs”, blogs);
return mv;
}
@RequestMapping(value = “/blog/{id}”, method = RequestMethod.GET)
public ModelAndView blog(@PathVariable(name = “id”) int id) {
ModelAndView mv = new ModelAndView(“blog”);
Blog blog = blogMapper.selectBlogById(id);
mv.addObject(“blog”, blog);
return mv;
}
//…其他路由函數(shù)
}
“`
以上便是兩個基于java項目開發(fā)實例的例子,希望可以為讀者們提供一些有價值的參考!
]]>技術(shù)棧:springboot+mybatis+layui+shiro+jquery
二,教務管理系統(tǒng)是一個基于網(wǎng)絡的在線管理平臺 , 幫助學校管理教務系統(tǒng),用一個帳號解決學校教務教學管理,
靈活的定制符合學校自己實際情況的教務系統(tǒng)。
功能介紹
教務管理系統(tǒng)分為微信小程序和3個子系統(tǒng),3個子系統(tǒng)分別是管理員系統(tǒng)、教師系統(tǒng)和學生系統(tǒng),分別對應
擁有不同權(quán)限的角色:管理員、教師和學生;
(1)管理員系統(tǒng):管理員可以管理課程、管理教師、管理學生、發(fā)布校園公告、校建管理、教評問題管理、分配權(quán)限等功能;
(2)教師系統(tǒng):教師登錄教師系統(tǒng),可以查看自己所教授的課程信息、查看某門課程所選學生信息、給學生打分以及修改自己的登錄密碼;
(3)學生系統(tǒng):學生根據(jù)姓名和密碼登錄自己的學生系統(tǒng),可以查看所有的課程信息、查看已選課程、查看已修課程、選課以及退課等操作。
(4)微信小程序:主要實現(xiàn)了學生的成績查詢、學生信息查詢、網(wǎng)上教評、學生選課、退課等功能。
模塊說明
4.1、小程序模塊 4.1.1、小程序登錄:調(diào)用在idea封裝的登錄接口;
4.1.2、小程序查看成績:用js通過學生入學時間來判斷學期,然后按學期進行條件查詢;
4.1.3、小程序退選課程:先查學生所選的課程,以及是否沒成績,如果沒成績,可以退課;
4.1.4、小程序我的信息:根據(jù)學生的學號來查詢學生自身的信息;
4.1.5、微信小程序校園公告:查詢出校園要發(fā)布的公告,顯示出來。
微信小程序課表查詢:根據(jù)登錄學生的學號和學生所在的班級,查詢出他所選的課程以及課程上課地點和上課時間。
4.1.6、微信小程序選課:查詢出學生所有可以選的網(wǎng)上課程和課程的所有信息,顯示出來,點擊選擇按鈕進行選擇,
如果人數(shù)沒滿,則成為自己的課程。
4.1.7、微信小程序掌上教評:根據(jù)所登錄學生的學號和班級查詢出所教他所有課程的教師,只能對這些教師進行教評
。教評獲得的分數(shù)將插入對應教師的成績和教評記錄表。
4.2、PC端模塊
4.2.1、權(quán)限管理:查詢所有權(quán)限,可以添加一個新的權(quán)限,擁有不同權(quán)限資源,也可以通過權(quán)限的id修改權(quán)限所擁有的不同權(quán)限資源。
4.2.2、角色管理:查詢所有角色信息,可以添加一個新的角色,查詢所有的權(quán)限,返回list集合,遍歷在頁面的權(quán)限分配上,分配不同權(quán)限,也可以修改角色所擁有的權(quán)限。
4.2.3、用戶管理:查詢所有用戶信息,可以添加一個新用戶,查詢所有的角色,返回list集合,遍歷在頁面的角色分配上,不同用戶分配不同角色,也可以修改該用戶的角色。
4.2.4、學生成績查詢:管理員查詢所有學生,通過系部、專業(yè)、年級、班級、學期進行分類查詢。
4.2.5、教師成績查詢:管理員查詢教評總成績和教評總?cè)藬?shù),通過查詢計算,獲得所需要的教師成績。
4.2.6、教師查詢學生成績:通過教師登錄工號,查詢教師所教的班級及學生的成績。
4.2.7、新聞發(fā)布:學校的新聞以及公告可以通過此功能實現(xiàn),通常是教學方面的新聞,發(fā)布時可自定義發(fā)布人。新聞的編輯采用目前最為流行的筆記記錄語言:Markdown,可直接使用該語言進行圖文編排。發(fā)布后即可在官網(wǎng)首頁看到。
4.2.8、新聞管理:新聞管理主要用來管理已經(jīng)發(fā)布的新聞,包括編輯和刪除操作,通常用來修改錯別字或修改發(fā)布部門(人)。
4.2.9、學校建設(shè):主要建設(shè)系部、專業(yè)、年級、班級,并且必須按照該順序進行建設(shè)。
4.2.10、學生教評:學生教評是學生對教師一個學期的評價,給教師評分。
4.2.11、教師授課:實現(xiàn)對每個教師所授課程的管理,保證了每個教師的課不沖突、不重復。
4.2.12、學生信息查詢、修改:管理員可對所有學生信息進行查詢以及修改,教師可對所教學生信息進行查詢及修改。
4.2.13、教師信息查詢、修改:管理員可對所有教師信息進行查詢修改。
4.2.14、學生退學情況查詢:對已退學的學生進行查詢,可查看學生信息、退學時間及退學原因等。
4.2.15、學生、教師錄入:管理員可以進行教師錄入和學生錄入,教師無法錄入教師,只能錄入學生。
4.2.16、學生個人成績查詢:學生登錄賬號,根據(jù)學號查詢該生所有成績。
4.2.17、學生選課管理:查詢出所有學生和該學生所選的課程,可以搜索單個學生或者有下拉框進行條件查詢??梢詫W生所選的課程進行強制退課和強制換課處理,必修不可使用該功能。
4.2.18、學生退課:根據(jù)所登錄學生的學號查詢出他所選的所有選修課程,在學校規(guī)定的時間內(nèi)可以進行退課處理。過了學校規(guī)定時間不可進行退課。
4.2.19、課程管理:管理員可以進行對課程的增刪改查。
4.2.20、學生成績錄入:先查出學生所選課程,然后根據(jù)學期錄入。
4.2.21、學生成績修改:查出該學生所錄入的最大學期成績,然后根據(jù)課程編號修改。
三,源碼下載:關(guān)注+點贊 + 私信 :教務
]]>演示地址:http://122.9.47.113:20001
演示賬號:demo2
演示密碼:123456
1、訓練設(shè)置
2、機構(gòu)管理-培訓機構(gòu)管理
3、教練管理-可添加教練后臺管理賬號,設(shè)置教練權(quán)限
4、角色管理-角色權(quán)限可細分到按鈕、列表、數(shù)據(jù)
5、管理員管理-創(chuàng)建后臺系統(tǒng)角色管理員,支持多角色
1、學員管理-創(chuàng)建學員,可綁定機構(gòu)和教練
2、簽約-學員簽約,購買課程,可選次數(shù)卡、時段卡
3、學員詳情-可查看學員簽約記錄、上課記錄、評價記錄、請假記錄
可查看所有學員的訓練頻次,支持一對一、一對多
訓練排課,支持單次課、多次課,可按固定規(guī)則排課,按日歷排課
可查看學員評價記錄
1、訓練統(tǒng)計-已訓練統(tǒng)計分析,教練已訓練統(tǒng)計,教練已訓練排行,學員已訓練統(tǒng)計
2、學員分析-學員增長分析,訓練項目合約統(tǒng)計
3、評價分析-學員、教練評價分析
1、財務統(tǒng)計-總計統(tǒng)計、新簽金額統(tǒng)計、續(xù)費金額統(tǒng)計
2、財務管理-合約記錄、繳費記錄、繳費對賬
留言私信獲取源碼
]]>
在元宇宙的概念出現(xiàn)之前長達三年的時間里,身為阿宅的我都把觀看 “虛擬主播” 的直播當做自己的興趣。
虛擬主播,是以 “二次元” 形象打游戲、唱歌、聊天,進行各種直播活動的虛擬主播們,他們被稱為 “Virtual(虛擬)YouTuber ”,簡稱 Vtuber 或 Vtb。在中國,因為直播平臺從 Youtube 轉(zhuǎn)移到 Bilibili,中國本土的虛擬主播被稱為 Vup (虛擬 up 主)。
不管什么時候,只要打開 Youtube 或者 Bilibili 的虛擬主播專區(qū),隨便點進一個直播間,你都可以看到一個可愛鮮活的虛擬生物正在那里一邊打著游戲或唱著歌,一邊實時與評論區(qū)的觀眾互動著。Ta 或漂亮或帥氣,可能背上還有一對天使翅膀,甚至本身就是一只毛茸茸的動物,身體動作間發(fā)絲也隨之輕輕搖動著,眨著五顏六色的眼睛,身體隨著呼吸一起一伏,有時候按下預設(shè)好的動畫按鍵,還能做出臉紅或者哭泣的特殊表情。
如果在直播間打賞禮物,你心儀的那個 Ta 又會笑起來,用虛擬角色的臉念出你的名字,對你說 “謝謝”,甚至接著你的話茬在直播間里聊起天。
虛擬 UP 主嘉然,A-soul 成員之一 | 圖源網(wǎng)絡
看這些 “皮套人” 的直播,包括觀看匿名版上永不休止的討論與爭吵都已經(jīng)是我的日常。我也曾試著給自己制作了一個“皮套”,短暫地作為不知名虛擬主播活動過,做一些讀書電臺和游戲?qū)崨r,只是水平太差,最后直播了三個月就自主“畢業(yè)” 了。不過這期間我收獲了一些朋友,有些甚至已經(jīng)是現(xiàn)實里見過面的好友。
就在 2022 年 5 月 10 日,中國的虛擬主播圈產(chǎn)生了一條地震級的新聞:頂流虛擬主播女團 A-soul 突然宣布團內(nèi)成員 “珈樂” 即將畢業(yè)。同一天,作為珈樂的扮演者的私人賬號被曝出,里面記錄的從事這一行業(yè)之艱辛完全顛覆了粉絲的想象,讓這場討論從一個虛擬主播的 “畢業(yè)” 延伸至現(xiàn)實中事關(guān)整個虛擬行業(yè)的勞動壓榨問題,以及對于虛擬人格扮演者的人權(quán)問題的討論。一時間圈內(nèi)的所有人似乎都在討論這個話題,更有許多 A-soul 他們粉絲自發(fā)組織了對于運營的抗議活動。
這次事件中所產(chǎn)生的影響 Fanart | 圖源微博(具體出處不明)
說起這次事件的前因后果,我們還是要從虛擬主播這個特殊角色開始聊起。
我游玩過很多第一視角的二次元游戲,但是虛擬主播也與動畫游戲不一樣,不是預設(shè)好的對話選項和回答,也不是游戲主人公和游戲角色的互動。你知道,起碼在被主播念出名字的這一刻,屏幕后的你是真的被你愛的那個二次元人物所認知了。
當然,虛擬主播其實都是真人。或許很多人會誤解虛擬主播是一款游戲 AI ,但其實 AI 技術(shù)還遠沒有發(fā)展到能自然地直播互動的地步。
他們不是 AI ,也不同于初音未來那樣使用音源庫和模型進行歌舞創(chuàng)作的虛擬歌姬軟件。雖然虛擬主播的名字前同樣加著 “虛擬” 二字,但那是指直播間里他們的二次元形象,每一個虛擬主播的背后,操控著漂亮 “二次元皮套” 與你互動的,都是一個和你一樣的真人。
說得更簡單一些,只要現(xiàn)在你動手給自己畫一個二次元形象,再下載一個 Live2d 軟件,把你繪制的形象制作成模型(當然你也可以花錢雇傭動畫師,想要擁有一個最基礎(chǔ)的模型遠比你想象的簡單和便宜),接著下載一個 Facerig 之類的免費動捕軟件,最后打開家用電腦的攝像頭 ——來,對著電腦屏幕笑一下吧,你就可以看到屏幕上的二次元人物正和你一起微笑、眨眼、歪頭。好了,從現(xiàn)在開始你也是虛擬主播了。
至于在屏幕后唱歌說話的那個人,則被稱為 “中之人”。中之人的字面意思是 “里面的人”,廣泛來講,你也可以管動畫角色的配音演員叫中之人。只是為了最大程度地維護這個二次元的世界,虛擬主播的圈子里默認不會談及中之人的存在。雖然我們都知道虛擬主播的皮套下面是真人在演繹,可誰也不會說,這是虛擬主播圈的默契與基本禮儀,是構(gòu)成這個行業(yè)的基石。
只要進入直播間,按下開播按鈕,你代表的就不是你,而是那個二次元世界里的生物。
這也是我曾經(jīng)想要成為虛擬主播的原因。我曾經(jīng)夢想,在這里我們可以拋下肉體,成為僅僅漂浮在數(shù)據(jù)與電子海洋里的“虛構(gòu)生物“。我曾經(jīng)夢想,在這里我們可以成為現(xiàn)實里無法成為的那個樣子,做現(xiàn)實中做不到的事,觀眾也能對我們做現(xiàn)實里不能做的事。
我的朋友 “宇宙騎士”(化名)是一名現(xiàn)在還在活動的虛擬主播,她覺得自己曾經(jīng)在這個行業(yè)里看到了新的創(chuàng)作可能性,想要通過 “虛擬主播” 的媒介和最新的技術(shù)來做一些不一樣的創(chuàng)作,所以給自己繪制了一個 “皮套”,甚至進入虛擬主播公司做過一段時間的職業(yè)主播。我們都曾經(jīng)心懷雀躍地夢想過,就在這個時代,我們所活的這個今天,我們將會一步跨入科幻小說里所描繪的那個世界。
當然,你也許發(fā)現(xiàn)了,我在這里用的都是過去式。
“只是畫大餅罷了!” 現(xiàn)在再提及這個話題時,宇宙騎士不屑地嗤笑了起來。她說在她看來,虛擬主播這個行業(yè)的壽命也差不多到盡頭了。虛擬主播是有極限的,因為我們還是不能創(chuàng)造出一個真正的 Ai 主播,或者真正的虛擬,真正的元宇宙。
根據(jù) 2021 年輕的網(wǎng)絡統(tǒng)計,現(xiàn)在世界上約有四萬個虛擬主播。
有一則現(xiàn)實里的笑話是,某位虛擬主播的人發(fā)推特吐槽,自己在大學課堂上用電腦趕工制作自己的虛擬主播模型,被鄰座的同學給發(fā)現(xiàn)了。結(jié)果一聊才發(fā)現(xiàn),對方正是另一名虛擬主播。
2016 年,第一個虛擬主播 “絆愛” 誕生。從這個以 “AI” 作為自己的名字,其實卻需要聲優(yōu)在后面實時演出的虛擬女孩出現(xiàn)開始,虛擬主播的存在便在日本的二次元愛好者之間飛速傳開并擁有了大量擁躉。又因為制作簡單,成本極低等等原因,一時間網(wǎng)上涌現(xiàn)出大量虛擬主播們。
除了有公司加持的絆愛以外,這段時期產(chǎn)生的虛擬主播大多是普通的二次元愛好者自發(fā)扮演的,這也就涉及到二次元愛好者原本的生態(tài)圈的問題。在虛擬主播誕生以前,很多二次元愛好者因為不善言辭,露臉會不好意思,或者總之就是嫌麻煩不想露面等等原因,在制作視頻或者發(fā)布自己唱的歌時就會選擇繪制一個二次元形象來替代自己出鏡。因此虛擬主播的出現(xiàn)對性格大多比較內(nèi)向的宅男宅女們來說則是剛好。
當然,也有更多人以前并沒有制作視頻經(jīng)驗,甚至沒有特殊的才藝,僅僅是因為自己也喜歡虛擬主播,所以自己也想成為虛擬主播,我和宇宙騎士都屬于這一類。誠然我們的才藝顯然比不上前者,也自然做不出什么明星偶像的氛圍,我們是素人。看 “素人” 的直播的感覺,會更像在和網(wǎng)友聊天,這才是大部分底層虛擬主播的現(xiàn)狀,大多屬于玩票性質(zhì)。
以前就有在進行類似視頻音頻創(chuàng)作活動,后來轉(zhuǎn)行成虛擬主播的行為被稱為 “轉(zhuǎn)生”,又因為使用了新的虛擬形象,所以以前的賬號被稱為 “前世”。同樣的,為了維護現(xiàn)在的這個虛擬形象的 “人設(shè)”,所以挖掘中之人的 “前世” 及其他過去的事,也是圈內(nèi)默認的禁止事項。只不過總有好事者會根據(jù)聲音的相似度等線索去挖掘那些隱私。
當然,那些熱衷于發(fā)掘 “前世”賬號,然后發(fā)到匿名討論版上的人,大多只是為了找樂子??梢坏┥婕罢掌?,挖掘中之人的真實信息是比挖掘前世賬號嚴重得多的禁忌,因為它很容易就會變成網(wǎng)絡人肉行為,甚至危害到中之人們在現(xiàn)實里的人身安全。可要說誰最擅長這些網(wǎng)絡跟蹤,誰會花最多的時間在網(wǎng)上到處搜尋信息,還不以獲取金錢為目的,也恰巧是他們,與虛擬主播的受眾群體重疊度很高的一些深度二次元 “宅” 們。
更別提,虛擬主播圈也有私聯(lián)現(xiàn)象的存在。真的會有觀眾會想見一見自己心儀的皮套下的那個人,宇宙騎士甚至提到,在她任職于虛擬主播公司時,經(jīng)紀人會誘勸她們與打賞比較多的富裕觀眾見面吃飯,“也不會勉強,但會說這樣做對你好”。甚至早在招人簡章里,就明確對外貌提出了要求,為的就是不讓真人照片流露出來后粉絲的幻想破滅,乃至于以中之人的外貌來吸引粉絲。“很多企業(yè)都在這么做,這是一種營業(yè)手段”,她這么說。
我也開通著好幾個虛擬主播的 Youtube 會員,哪怕我沒有時間看直播了,依然安心為他們 “納稅”,偶爾上去打錢。盡管我其實看過他們的中之人信息,乃至于匿名版里流傳的照片,甚至知道許多主播私生活里的所謂 “黑料”。一方面,我清楚虛擬的幻夢并不存在,另一方面,我依然能心安理得地享受這個虛假的夢。正因為我們是花錢的人,所以比誰都清楚自己是在為什么花錢:觀眾當然知道這個會對自己說話,念出自己名字的虛擬主播不是真正的二次元生物。皮下的 “中之人” 不可能真是一個完美的人,大多數(shù)人會選擇自己不去接觸那些有關(guān)中之人真實信息的內(nèi)容,或者像我一樣,哪怕知道了也會分開看待。只要不聽不看不知道,就能不受打擾地享受虛擬主播帶來的快樂。
對于中之人的諱莫如深,說到底是為了避免將現(xiàn)實里的煩惱帶到二次元的安樂窩里。起碼在這個直播間里,這是二次元的世界,觀眾可以忘卻現(xiàn)實里令人疲憊的一切。
哪怕這種體驗要付出真金白銀。
但是這是自發(fā)的,幾乎所有虛擬主播的直播都能免費觀看,而之所以付費打賞,比起精美的皮套,更多的是為了感謝中之人的辛苦演出。這些錢都是為了支持中之人能繼續(xù)提供直播。
有人會為虛擬主播花錢,當然也會有人想要分到這些錢,這些人可就不局限于最早的那一批二次元愛好者們了。像偶像事務所一樣,運營虛擬偶像的事務所、公司與小規(guī)模的社團都紛紛成立。
對觀眾來說,在虛擬主播越來越多的當下,比起勢單力薄,能力良莠不齊的 “個人勢”(個人獨立進行直播活動),“企業(yè)勢”(隸屬于事務所進行活動)虛擬主播往往擁有相對精美的模型,和足以進入事務所的 “準偶像” 級能力,更容易在眾多虛擬主播中脫穎而出。
日本知名虛擬主播公司彩虹社的本部成員合照,截止 2019 年底,來源萌娘百科
現(xiàn)如今全世界最大的兩家虛擬主播公司 Hololive 和彩虹社都成立于日本,前者誕生于 2017 年,由互聯(lián)網(wǎng)技術(shù)公司轉(zhuǎn)型而來,現(xiàn)在在活動的虛擬藝人有 72 人,其中營業(yè)額最高的女性虛擬主播潤羽露西亞在 2021 年的營業(yè)額達到了 1.73 億日元,緊隨其后的女性虛擬主播桐生可可也創(chuàng)下了 1.72 億日元的記錄,兩位從出道開始計算的總營業(yè)額都各自到達了兩億四千萬日元以上。
彩虹社則創(chuàng)立于 2018 年,現(xiàn)在旗下在活動的虛擬主播有 200 人。根據(jù)互聯(lián)網(wǎng)上的統(tǒng)計,四年之間,以運營彩虹社為中心的株式會社 ANYCOLOR 的營收飛速增長,從第一財年(2017 年)的1662 萬日元到如今的第五財年,前三個季度( 2021.5.1-2022.1.31 )就達到了 101 億日元,約合人民幣 5 億以上。今年四月,ANYCOLOR 已向東京證券交易所提交上市申請,且已被批準,沒有意外會成為虛擬主播界首家上市公司。
彩虹社社長田角陸和旗下虛擬主播劍持刀也的立牌合影。田角陸生于1996年的,在早稻田大學讀大二時創(chuàng)立彩虹社。短短 2 年后,他便被福布斯日本評為 “三十位改變世界的三十歲以下人物” 之一。| 圖源:anycolor.co.jp
為了進軍全球市場, Hololive 和 彩虹社都在這兩年分別推出了使用英語直播的虛擬主播組合,彩虹社旗下男性英語虛擬主播 VoxAkuma 在中國彈幕視屏網(wǎng)站 Bilibili 的首次直播時長一個小時,就收獲了超百萬人民幣以上的打賞。
當然,不論是海外的企業(yè)還是中國本土的企業(yè),都沒有放手中國國內(nèi)虛擬主播市場的意思。
最初期的中國虛擬主播圈主要由 B 站上愛好者自主搬運、譯制的日本虛擬主播的直播錄像構(gòu)成,雖然其中也包含部分國內(nèi)的二次元愛好者進行的虛擬主播活動,但使用中文進行直播活動的本土主播們反而一直都沒能獲得如日本主播那樣的大量人氣。這或許是因為對于國內(nèi)的二次元愛好者來說,“二次元角色都是說日語的” 是一件最正常不過的事,因此直到現(xiàn)在,中國的虛擬主播行業(yè)一直都處于一個不溫不火的階段。
盡管 Hololive 與彩虹社也曾各自試圖在中國開展虛擬主播業(yè)務,但是前者已經(jīng)因政治問題退出了中國市場,而后者與中國視頻網(wǎng)站 Bilibili 合作開設(shè)的虛擬主播企劃 VituaReal 雖然在經(jīng)營上步入正軌,卻也最終沒能顯示出像是日本 Hololive 或者彩虹社本部那樣在行業(yè)內(nèi)獨占鰲頭的盛況。
不管是 VituaReal,微笑科技推出的你“虛擬次元計劃”,CCTV-新科動漫推出的 “新科娘”,甚至一些電視臺選秀節(jié)目,都沒能打造出中國虛擬主播的頂流,或者 “第一大箱”(“箱” 指虛擬主播公司或社團)。
或許直到 “A-soul” 的出現(xiàn)。
樂華旗下虛擬偶像組合A-soul | 圖源:A-soul官方微博
2020 年,國內(nèi)知名娛樂公司宣布即將推出一個由五位虛擬主播女孩,向晚 Ava、貝拉 Bella、珈樂 Carol、嘉然 Diana、乃琳 Eileen 組成的虛擬女團。
這不是樂華第一次試水虛擬主播行業(yè)了,在出道宣傳視頻上,以極高技術(shù)力制作出的精美 3D 模型女孩們又唱又跳,儼然是二次元版本的優(yōu)質(zhì)偶像女團。不同于虛擬主播常見的 Live2d 皮套,3D 模型因為成本高昂,演出者還需要身穿極其沉重的全身動捕服,目前只有少數(shù)知名虛擬主播才能擁有。
樂華宣稱這個虛擬女團已經(jīng)籌備了兩年,看起來誠意十足,PV 的最后,黑底白字大大寫著 “永不塌房”,似乎可以解釋這個老牌娛樂公司是為什么投入大筆資金在虛擬女團上。虛擬美少女,永遠不會變老,永遠年輕漂亮,永遠不會傳出緋聞,永遠完美的人工偶像,從公司到偶像消費者,多少人對于這樣的概念夢寐以求,似乎我們的生活很快就會進入科幻小說里的時代。
樂華的夢想很美好,但是虛擬主播觀眾起先并不買賬,其中很大的原因出在樂華身上。二次元愛好者向來自成一個圈子,既然自己的小眾愛好不被大眾所接受,那自己也絕對不接受大眾。尤其是對于三次元特色的 “飯圈”,虛擬主播觀眾們,或者說二次元們,似乎從來都是抱著嗤之以鼻的態(tài)度,不屑與之為伍。
老牌娛樂公司樂華的名字在虛擬主播圈內(nèi)顯得如此扎眼,加上這個公司本身也素來緋聞纏身,不論是出于 “二次元的自尊心”,還是擔心資本力量把自己視為好割的韭菜干一票就跑,A-soul 官宣的當初,幾乎所有人都對這個企劃冷嘲熱諷。
加深了這種猜忌的,是 A-soul 的中之人問題。
與一直以來的虛擬主播不同,她們似乎并沒有那么”二次元“。這五個原本作為樂華娛樂旗下的偶像練習生而被培養(yǎng)的女孩們,或許在唱歌跳舞上都很優(yōu)秀,卻不是那么了解二次元的世界,也不知道該如何與說著許多二次元“黑話”的觀眾們互動。對于直播間內(nèi)觀眾們接二連三拋出的互聯(lián)網(wǎng)成文梗,她們不知如何作答,也不太會玩流行的網(wǎng)絡游戲,直播間的情況一度可以說是 “跨服聊天”。這個情況在團隊的唱歌擔當珈樂的身上尤其明顯,她有漂亮的歌聲,可在首播直播間里卻幾乎不會說話,磕磕巴巴。
兩項原因加起來,虛擬主播觀眾對于這個企劃的提防與反感就更深了?!岸卧?們試圖用自己的方式來抵抗,比如刻意玩梗、說 “抽象話”,特地去各種無關(guān)場合提及 A-soul 的名字試圖招致反感等等,來試圖把這個企劃搞臭,期待她們早點成為一個笑話。
“圣嘉然” 這個有名的網(wǎng)絡梗就來源于此?;蛟S你沒有看過嘉然的直播,甚至不知道這個處處被提及的女孩到底是誰,但是如果你上網(wǎng)沖浪足夠多,總能在各種地方,比如電競直播甚至是校園墻里看到她的名字。
某位 A-soul 觀眾為虛擬主播“嘉然”撰寫的粉絲小文章,因為感情非常真摯,行文又很夸張而成為了一種 “?!?而流傳
玩梗只是一時的,當最初的騷動逐漸平息,更多人反而被這些 “梗” 吸引來看 A-soul 的直播。無論心里有再多嫌隙,他們還是會驚異于 A-soul 展現(xiàn)出的頂尖技術(shù)力,以及老牌事務所與真正的偶像練習生們展現(xiàn)出的職業(yè)級態(tài)度、努力與營業(yè)素質(zhì)。現(xiàn)如今大部分的虛擬主播依然是兼職或出于個人愛好而直播,年輕的少年少女們很容易因為情緒敏感又或者個人生活的私事就突然一言不發(fā)地退出虛擬直播業(yè),又或者在網(wǎng)上親自 “下場” 吵架。
但 A-soul 對此的態(tài)度截然不同,虛擬女團的定位是 “永不塌房” 的職業(yè)偶像。你說我們不夠二次元,好,那就去練,像是女團成員花上無數(shù)個小時在練功房練習唱歌跳舞一樣,我們就花時間去練去學習你們口中的 “二次元”。
對于首播表現(xiàn)最不理想的珈樂,A-soul 企劃親自招募了 30 名志愿粉絲對她進行封閉式的內(nèi)測直播訓練:封閉式打網(wǎng)絡游戲,學習和粉絲說話,甚至是練習如何長時間對著沒有一人的直播間和空氣聊天。集中訓練后,珈樂的不善言辭等問題得到了明顯改善。這 30 位粉絲被戲稱為 “ 三十皇珈騎士”,而后皇珈騎士便延伸為所有珈樂粉絲的名稱。
珈樂投稿于 Bilibili 的歌唱代表作《紅色高跟鞋》,可以看到滿屏的彈幕里充滿了對這個女孩的喜愛
畢竟誰能拒絕一個真的在為了打動自己而如此努力的女孩呢?尤其是她還有著漂亮的二次元皮套,美麗的歌喉,還有動人的舞蹈。
這種養(yǎng)成女團的羈絆感令二次元觀眾們也難以拒絕。
而最早因粉絲的那段 “好想做嘉然小姐的狗” 而出名的嘉然,因為她在直播間里永遠是那么溫柔、善良,富有同情心,也開始得到更多的觀眾的喜愛和傳播。某段廣為流傳的直播錄像里,嘉然在讀粉絲來信,其中一位粉絲送來了自己的日記,記錄自己在工廠上班的疲憊生活,只有看虛擬主播能成為慰藉云云。屏幕上的二次元女孩本來只是以歡快的語調(diào)朗讀著,可讀到這里時,念著念著,突然轉(zhuǎn)過了身體(或者說模型),隔著屏幕都能聽到她哭泣的聲音。
嘉然說話有點口音,感覺呆呆的,每天發(fā)日常問今天吃什么,但是當她讀著粉絲日記哭出聲的瞬間,就連一批 “樂子人”也不由得為此動容,“圣嘉然” 似乎從一個梗變成了一句真心實意的夸獎。
“我覺得她是一個被愛得很好的女孩”, 一位嘉然粉絲在匿名留言板里這么說,“感覺嘉然和其他那些為了賺錢做虛擬女主播,搞得和某魚某牙主播似的那種,不一樣。她肯定被愛得很好,在很好的一個家庭環(huán)境里長大。從小也就學學唱歌跳舞什么的那些,沒有生存壓力,所以才有多余的愛分給別人。她真的是一個被關(guān)愛著長大的女孩子,所以才有純潔的內(nèi)心和靈魂,和這世界上的大部分人不一樣。”
只是很可惜,現(xiàn)實并非粉絲們想象的那樣。他們心里想象出的那種,被現(xiàn)實世界關(guān)愛的很好于是有很多愛能分給別人的完美幸運女孩,在現(xiàn)實里并不存在。
2022 年 5 月 10 日,這一天我和平常一樣打開自己的微博和 Bilibili,準備看點虛擬主播打發(fā)時間。但是一條消息突然迎面沖在了我的臉上:
A-soul 官方突然宣布,珈樂 Carol 即將畢業(yè)。
這一切來的太過突然,距離 A-soul 的誕生剛剛過去了兩年,這兩年間似乎一切都在走上正軌,數(shù)據(jù)和流水都蒸蒸日上,無論是成為 Bilibili 百大主播,“最強艦隊”(艦隊:指 Bilibili 月費會員數(shù),月費從每月一百多到一千多人民幣不等),還是日用品代言,A-soul 儼然已經(jīng)做到了 “國內(nèi)第一大箱”,而被宣布畢業(yè)的珈樂在這個團體內(nèi)也是人氣上游者。雖然早在 4 月中旬,就有疑似內(nèi)部人士透露過珈樂會畢業(yè)的消息,但直到 5 月 10 號這個消息公布時為止,沒有任何人相信風光無二的國內(nèi)第一虛擬女團的歌手擔當會在這時宣布畢業(yè)。
“身體和學業(yè)原因” 不過是虛擬主播粉絲早已見慣了的一種說辭, A-soul 的中之人都是隸屬于娛樂公司的職業(yè)偶像,這是所有人都知道的不爭事實。盡管有著禁止公開討論中之人情報的 “默認規(guī)則” 存在,但在如此有沖擊性的消息面前,粉絲們立刻著手從茫茫的互聯(lián)網(wǎng)海洋里尋找珈樂中之人的 Bilibili 小號,個人微博賬號等等,試圖從這些蹤跡里找出自己喜歡的女孩身上到底發(fā)生了什么事。
這并不難,當天下午,網(wǎng)友就發(fā)現(xiàn)了珈樂中之人的網(wǎng)易云小號 “三松許”。她發(fā)布在其中的內(nèi)容,是這個我們至今不知道名字的小偶像從出道開始記錄下的,一點一滴的 “真實的她”
生日活動營業(yè)額超百萬人民幣,光是賣主題虛擬皮膚(類似 QQ 空間皮膚)都能賣出一千萬元的虛擬偶像的中之人,她的真實生活與粉絲想象的那種頂流偶像般光鮮亮麗的生活截然不同,甚至可以說是遭到了嚴重的職場霸凌。
賬號內(nèi)的部分截圖。根據(jù) 5 月 11 日珈樂的畢業(yè)直播,這個賬號里的內(nèi)容基本已經(jīng)被親口鑒定為真。
從這些只言片語中,我們可以看出,珈樂的中之人一直是超負荷工作的狀態(tài),壓力過大導致的暫時性失聲與失聰,胸腰椎疾病,即使有親屬與醫(yī)生的警告,卻不得不繼續(xù)高強度的舞蹈訓練直到凌晨三點,些許日常照片里可以看到草率包扎的傷口。而 “沒有錢” 等等經(jīng)濟上的坎坷更加不像是這個頂流女團成員應該說出的話。
“真的 痛恨”、“知道那些自殘自殺的人是怎么涌起這股念頭了” 等等,又暴露出了中之人的心理健康問題已經(jīng)非常嚴重,而更讓粉絲感到憤怒的是在這些信息中所展現(xiàn)出的 A-soul 運營方的作為:“屋外黑,屋里更黑”,“希望不要耗我時間,情緒,既然推我走就干凈結(jié)束”,“約談被人張口閉口真人出道的罵”。
根據(jù)此前早在四月就透露出珈樂畢業(yè)消息的內(nèi)部人士和其他網(wǎng)絡上的爆料,A-soul 中之人的工資僅有每月 7000 元人民幣,沒有提成。女孩們身為各自坐擁數(shù)十萬粉絲,國內(nèi)最頂尖的虛擬主播頂流,穿戴動捕服每天又唱又跳,幾乎全年無休地高強度直播,在杭州這個一線城市的工資僅價值七千。在團隊運營轉(zhuǎn)至字節(jié)跳動后,中之人的收入漲到了 1.1 萬元,加上提成的百分之一,也就是說喜愛 A-soul 的粉絲們?yōu)榇碎_通的月費 138 元的會員,到了中之人手上僅有 1.38 元人民幣。而這甚至還是有條件的,是只有 2020 年簽署的兩年合同到期后繼續(xù)續(xù)約才有的。
珈樂拒絕了續(xù)約,隨后遇到的或許就是被營運方以真人出道威脅。此前不久,她剛剛遇到了中之人暴露的 “開盒危機”,雖然沒有引起更大的波瀾,但是從這次曝光出的消息看來,向外暴露她個人隱私的人很可能也是在公司的授意下而為之。
盡管具體的合同內(nèi)容尚且可知,但現(xiàn)有的信息已經(jīng)足夠令 A-soul 粉絲憤怒。雖然最初是被虛擬主播的精美皮套吸引而來,但是沒有人能接受那個每日陪伴自己,親口對自己的說話的女孩遭到這樣的對待。虛擬主播的粉絲之間流傳著一句話,叫 “為皮(指虛擬模型)而來,為魂(指中之人)而留”。對于虛擬主播觀眾而言,他們更多是為了皮套下那個 “有趣的靈魂” 而自愿付費。但這些為愛發(fā)電的打賞甚至一點也沒到達他們?yōu)橹垢顿M的那個“魂”的手上,這是粉絲所不能接受的。
我看到 Bilibili 主頁上,A-soul 的粉絲后援團自發(fā)團結(jié)起來,起草了宣言與長文要求官方說明真相,改善中之人待遇,保證中之人的合法權(quán)益,又或者許多粉絲主動取消了對于 A-soul 成員的關(guān)注,甚至一些 “技術(shù)宅” 拿出了可以在直播間自動發(fā)布彈幕評論的程序。5 月 11 日,珈樂的畢業(yè)直播中,滿屏都是自動留言機器人刷的留言:不去鳥巢了,我們回家。
就像日本偶像以武道館或者東京巨蛋作為目標一樣,A-soul 的粉絲也曾懷揣著要讓這個虛擬主播女團登上鳥巢舞臺的遠大夢想。
虛擬的濾鏡頃刻間像是夢一樣褪去,在現(xiàn)實的一地雞毛面前,那些閃閃發(fā)光的頂流偶像光環(huán)和 “她一定是被保護的很好”的稱贊變得像是最大的諷刺。有人找出了當時嘉然讀著打工人粉絲來信流淚的剪輯,在評論區(qū)留言 “以為是共情力強,原來是感同身受”,“她總說著今天吃什么,又說喜歡泡面,我還以為是大明星沒有架子,還挺開心的。沒想到是真的只能吃泡面”。
“沒有圣嘉然,只有普通人?!?/span>
這樣的事也不是第一次發(fā)生了。
曾經(jīng),我試圖給國內(nèi)某虛擬主播公司投簡歷時,我看到一百道基礎(chǔ)知識考題問卷的最后有這么一道題:“道明寺ここあ所處 vtuber 團體因為什么導致風評跌落?”
這里指的就是震驚 V 圈的游戲部事件。
2019 年 4 月 5 號,一條簡短的求救信息突然出現(xiàn)在日本的 LUNA TV 和知名匿名討論版 5ch 中,發(fā)布賬號高度疑似知名虛擬主播企劃 “游戲部” 主播中之人的推特小號。
幾乎沒有任何互動的推文里,號主訴說自己被職場霸凌,被辱罵為廢物等的慘痛經(jīng)歷,又或者處在被嚴密監(jiān)控的環(huán)境下,言行隨時被人監(jiān)視,又或者通宵之后只能睡 4 個小時又起來上班,甚至還有 “好想把聲帶切下來給別人” 這樣的發(fā)言。偶爾只有一兩個人會在賬號下留言,可以看出,是四位在現(xiàn)實里關(guān)系密切身處同一個職場的人在互相安慰著。
隨著推特中投稿的音聲內(nèi)容比對,這四人很快被確認,正是當時以精美有趣的 3D 動畫投稿紅極一時,彼時日本的頂流虛擬主播企劃 “游戲部” 的成員。
來自于萌娘百科“游戲部企劃藝人欺凌事件”
這么一看或許與三年后的 A-soul 事件極其相似,同樣是隸屬大公司的頂流虛擬偶像企劃,同樣是以高技術(shù)力與精美模型見長,同樣是大量人力物力共同支撐起的企劃,也同樣的,是中之人在整個企劃里待遇極其糟糕,甚至得不到基本的尊重的問題。
乃至于直播內(nèi)容都是造假的。雖然游戲部企劃以 “快樂地玩游戲” 為賣點,但卻為了視頻效果逼迫不擅長某類游戲的中之人連續(xù) 48 小時 “耐久” 上分,甚至請來游戲代打預先錄制好游玩游戲的視頻內(nèi)容,再讓中之人對著錄好的內(nèi)容的配音。
我對此有些震驚,主要在于那些中之人原本就很擅長打游戲,為什么要造這種假呢?事后詢問 V 圈資歷比我深夜長的多的宇宙騎士,她對此沒有什么特別的感想,吐槽了一會兒日本黑心企業(yè)后,她只是說,”這種其實是為了防止中之人在紅了以后直接跑路,或者中之人超過皮套的知名度了。這是企業(yè)出于自身利益所不愿意看見的。就比如說中之人特色過于明顯,公司以后在換人的時候就不太好換了。這樣做,哪怕以后你離開公司,想要靠著上一個皮套的名聲去其他地方求職,你也做不到,你沒有任何可以聲稱是自己做的的成績。“
4 月 6 日,對相關(guān)事件的討論就登上了日本推特趨勢榜第一。在虛擬主播行業(yè)剛剛起步不久的 2019 年,這次事件作為首起被爆出來的惡性職場欺凌事件引發(fā)了海量的關(guān)注,幾乎把當時業(yè)內(nèi)的所有公司和知名主播都卷了進去,甚至游戲部背后公司的投資人都站了出來要求說明。Unlimited 公司在壓力之下接連發(fā)布了多次聲明,幾番推推扯扯之下,運營方終于承認了中之人推特小號里的內(nèi)容全部屬實,并為此道歉。
但是道歉已經(jīng)沒有任何意義,在那之后,原本的中之人陸陸續(xù)續(xù)在半年內(nèi)順利完成了解約,紅極一時的游戲部企劃也就此解散了。
游戲部企劃藝人欺凌事件已經(jīng)成為討論虛擬主播中之人的合法權(quán)益時的一個經(jīng)典反例,在之后不久發(fā)生的 “絆愛” 更換中之人的事件中,網(wǎng)友也因游戲部的前車之鑒而完全拒絕買賬。對自己也身為中之人的宇宙騎士來說,“絆愛” 事件在她看來甚至遠比游戲部還惡性,因為哪怕原本的中之人已經(jīng)站出來大喊說我不想畢業(yè),想繼續(xù)作為絆愛活動,最后還是“被畢業(yè)” 了。她想要維護絆愛這個虛擬的美好形象,但是這不被公司允許,他們甚至不允許中之人有自己的想法出現(xiàn)。“如果說你不想作為中之人被換掉,好,那就直接榨干你的商業(yè)價值然后讓你畢業(yè)”,宇宙騎士的最后一句話說得格外冷淡。
因為職業(yè)的特殊性,虛擬主播的無法公開拋頭露面,也無法以自己的名義夸耀自己所做下的成就,也因此,比起一般藝人,在面臨勞動糾紛時,他們更加缺少渠道去維權(quán)。在這樣的背景之下,歷史總是會重演,被稱為 “ V 圈最大惡性事件” 的游戲部事件是被曝出的第一起,但是絕對不會是這個行業(yè)內(nèi)的最后一起。
我曾經(jīng)詢問宇宙騎士對于企業(yè)勢主播是怎么看的,她回答我,這就好像一個手機游戲里的角色立繪,雖然最后呈現(xiàn)的是一個角色,但是角色的臉是一個人畫的,動作是另一個人畫的,背景和動態(tài)又是其他人,最后拼成了一個。而虛擬主播也是如此,最終呈現(xiàn)在觀眾面前的虛擬形象,除了中之人以外,還有美術(shù),有設(shè)定,有劇本,有技術(shù)團隊,有運營團隊,這些都投入了很多人力物力與資金,最終才打造出他們被人看到的可愛模樣。
因此哪怕是個人勢的虛擬主播,大部分從業(yè)者對于行業(yè)內(nèi)大資本公司的存在并沒有那么排斥?!澳阒辈サ钠脚_,你使用的設(shè)備,你推流的軟件等等,都是不同的企業(yè)為你提供的,企業(yè)的存在是必然且必要的,不如說有這些企業(yè)才有你?!边@是另一位默默無聞的虛擬主播小 A (化名)對我說的話。確實無法否認,現(xiàn)有的更方便、更快捷的虛擬主播直播軟件來源于虛擬主播公司所開發(fā)出的技術(shù),以及他們的存在對于產(chǎn)業(yè)的推動。
宇宙騎士說著這個話題,又聊到,“其實在曝之前我就猜到了,那些中之人不會拿到太多錢。因為這就是資本的特性。她們也很可憐,穿著動捕服也很辛苦,而且每天蹦蹦跳跳的真的很累。怎么說呢,有一種所勞者多,所得者末的感覺吧?!?/span>
對于虛擬主播觀眾來說,提供給他們快樂和陪伴的是中之人有趣的靈魂,但是對于經(jīng)營這項事業(yè)的公司來說,制作出虛擬主播皮套的技術(shù)性崗位才是企劃的核心,中之人似乎只是一個誰上都可以的 “動捕工具人” 罷了。
游戲部企劃的負責人曾經(jīng)辱罵企劃的中之人 “現(xiàn)實里不過是個廢物尼特,愿意用你就該感恩戴德。你這樣的人要多少有多少”。那 A-soul 呢?那五個女孩只是可以隨便被替換的女孩之一嗎?甚至于,我們呢?
可以替換的人要多少有多少,聽起來更像是在說機械上的零件,而不是被人所愛的小偶像。甚至,這不像在看待一個活著的人類。我們似乎也會在其他地方聽到相同的話,他們這么稱呼工廠里的工人,這么稱呼寫字樓里的白領(lǐng),這么稱呼世界上所有的你和我。對于龐大的社會機器來說,我們似乎都只是一個可以被替換的零件罷了。這或許才是 A-soul 粉絲們面對這次事件展現(xiàn)出空前團結(jié)力的原因,他們在虛擬主播的命運里看到了自己。“觀眾已經(jīng)沒有那么好騙了?!庇钪骝T士如此說道,接著她說,“我覺得虛擬主播這個行業(yè)的壽命快到盡頭了?!?/strong>
我不知道她是在說粉絲不再會輕易為資本買單,還是說人們不再會被 “虛擬” 這個看起來輕飄飄的詞所騙到:即使在虛擬二次元世界也沒有 “成為想成為的人” 的自由。也或許,世界上并不存在那樣的二次元世界。
元宇宙和虛擬偶像的夢想似乎才剛剛開始,但是又似乎已經(jīng)結(jié)束。2022 年,距離互聯(lián)網(wǎng)誕生正好過去了 60 個年頭,時至今日,真正的網(wǎng)絡天使并不存在。當我們想要獲得一個只要你愛 Ta 那 Ta 就會愛你的,方便快捷的二次元天使時,那背后總有另一個人正在為了取悅你而付出,甚至感到痛苦。這就是服務業(yè)的本質(zhì),人類是如何消費另一個人類的。
這也是我對于虛擬主播感到最糾結(jié)的地方。我從三年前開始關(guān)注虛擬主播,他們給我?guī)砹撕芏嗫鞓?,這個二點五次元的世界帶給了我現(xiàn)實里無法取得的慰藉與愛。但是,我在購買另一個人,這樣的本質(zhì)并不會改變。虛擬主播皮下的中之人并不是 AI ,也不是二次元宇宙的住民,是和我一樣的人類,摘掉虛擬后偶像光環(huán)后,ta 甚至可能是比觀眾更年輕、更弱勢的群體。
當?shù)弥?A-soul 的消息時,我最大的憤怒和痛苦并不針對于公司運營,而是對我自己。這樣的痛苦我也在第一次得知游戲部事件時感受過。現(xiàn)在是第二次,只要虛擬主播行業(yè)還存在,以后一定還有更多次。資本的壓迫固然是這里最大的問題,但是作為個人,身為普通觀眾的我,難道就可以免于對這個消費人類的行業(yè)里發(fā)生的罪惡負責嗎?
5 月 10 日,A-soul 事件曝出的當晚,我在網(wǎng)絡上拼命瀏覽著粉絲們的發(fā)言直到深夜,從我常去的微博超話逛到匿名論壇。帶給我最大沖擊的,反倒不是珈樂畢業(yè)的消息,也不是那些對運營的聲討長文,而是來源于一個普通粉絲的微博:
“唯有一點,我不能接受我的快樂是建立在她們的痛苦上的?!?/strong>
評論區(qū):“所以我對你的愛,成為了抽打在你身上的鞭子是么,那我存在的意義是什么?”
實際上,我感到人的欲望正是在這樣的服務業(yè)里膨脹了。如果沒有虛擬偶像,
]]>用戶前端系統(tǒng)主要實現(xiàn)以下功能:
(1)用戶注冊登錄:用戶在進入系統(tǒng)之前需要填寫資料,如手機號碼、用戶名稱和密碼等進行注冊。
(2)個人信息管理:用戶注冊完成后,填寫手機號碼、用戶密碼等信息登錄系統(tǒng)。
(3)查看商品類型:用戶在系統(tǒng)中可以瀏覽系統(tǒng)所展示的生鮮商品類型,用戶可以根據(jù)生鮮類型來查找生鮮商品。
(4)瀏覽商品信息:用戶在商城中可以查看生鮮商品的信息,如生鮮商品的圖片、生鮮商品的詳情、生鮮商品的價格等等信息。
(5)搜索商品:在生鮮商品中因為商品繁多,因此需要有搜索框為用戶提供快捷尋找商品的方法。
(6)商品加入購物車:用戶在查看到自己喜歡的商品后,可以將商品先加入購物車,方便用戶一起下單,也可以直接下單購買。
(7)在線購買商品:用戶選擇好需要的生鮮商品后,可以在線進行下單,完成夠買。
(8)購買訂單管理:購買后的訂單用戶可以查看,也可以對訂單進行取消和刪除操作。
(9)商品評價:用戶購買商品的整個流程結(jié)束后,用戶可以對商品進行評價,點評商品的質(zhì)量等等內(nèi)容。
后臺管理系統(tǒng)主要實現(xiàn)以下功能:
(1)管理員登錄:管理員通過后臺設(shè)置的賬戶信息登錄商城后臺管理系統(tǒng)。
(2)管理員管理:管理員可以在后臺中添加多個普通管理員,這些普通管理員的信息由系統(tǒng)管理員進行添加和修改或刪除等。
(3)用戶信息管理:用戶成為生鮮商城的用戶后,會填寫一些自己的個人信息,如自己的用戶名、手機號碼等等。管理員可以對這些用戶的信息進行查詢和刪除用戶操作
(4)商品類型管理:管理員需要對生鮮商品進行商品類型分類,以幫助用戶更快捷的找到自己喜歡商品。
(5)商品信息管理:管理員需要把生鮮商品上傳到商城中,還需要對商品的信息進行填寫,如商品的名稱、介紹、價格等等信息。
(6)用戶購買訂單管理:用戶購買后會產(chǎn)生交易訂單,管理員在后臺可以查看到訂單,并對訂單進行處理發(fā)貨等操作。
系統(tǒng)部分截圖如下:
用戶前端系統(tǒng)部分功能截圖如下所示:
1、商城首頁——登錄頁——注冊頁 如下圖所示:
2、用戶分類頁——商品詳情頁 如下圖所示:
3、購物車頁——訂單結(jié)算頁——個人中心頁 如下圖所示:
后臺管理系統(tǒng)部分功能截圖如下所示:
1、管理員登錄頁如下圖所示:
2、管理員管理頁如下圖所示:
3、生鮮商品管理頁如下圖所示:
4、用戶訂單管理頁如下圖所示:
以上是本生鮮購物商城系統(tǒng)的部分功能截圖,如需獲取源碼,點贊+關(guān)注+私信?。。?/span>
]]>
1.上課模式你自己準備找那種模式的成都目前就分為兩種模式遠程視頻以及Java面授班,其實某種程度上看視頻和自學基本沒差,視頻遠程進度很快,沒有基礎(chǔ)的人基本上都是聽天書,并且氛圍很差,跟看電影一樣,一群人望著屏幕里面的人,不懂也沒辦法及時問。
2.師資力量很多廣州Java培訓為了節(jié)約成本就會請很多兼職的老師,如果一個培訓機構(gòu)連自己全職的老師都沒那這個培訓機構(gòu)可想而知。
3.試聽選好培訓機構(gòu)之后一定要去試聽下但是試聽一定要看是專門弄的試聽班級還是插入真實班級群,達內(nèi)千峰都是專門安排的這種根本沒必要去因為講的再好也不是你以后上課的老師
如果同學們還在猶豫沒有選好的話,可以先報名動力節(jié)點Java培訓的Java實驗班,先來免費學習15天,進行專業(yè)評測后,教學總監(jiān)通過面談進一步了解學員性格,心態(tài)等綜合素質(zhì),預測學員就業(yè)薪資,給出最終的學習建議,為學員把好學習關(guān)鍵一關(guān)。實驗班結(jié)束后,學完自主選擇是否繼續(xù)Java學習。
動力節(jié)點Java實驗班:http://www.bjpowernode.com/zt/syb
]]>寫這篇主要是想復盤一下我的兩次面試經(jīng)歷,一個是B站的后端開發(fā)崗,另一個是百度的搜索研發(fā)。文章涵蓋了MySQL、Golang、 計算機網(wǎng)絡、Elasticsearch、 分布式、搜索的一些知識。
作者:郁南
1.你之前是負責搜索的,那我想聽一下你們搜索系統(tǒng)的大致流程
說實在還挺驚訝面試官會問這個的,因為對方是一個后端工程師,所以就沒講多細致,答得很general,大體來說就是,query分析->粗排召回->精排算特征-> learning to rank計算score ->返回結(jié)果,每個再展開來說一些即可。面試官問這個相當于在問項目,確定簡歷的真實性,所以這個沒啥參考價值。
2.MySQL的事務隔離級別有哪些?
總共是四大隔離級別,理解以后用自己的話答就好了
面試官還是比較滿意這個答案的,但接下來面試官問道:
3.以上事務隔離是如何實現(xiàn)的?
老實回答,這題我不會,面試官提示MVCC,我還是不會hhh?;厝シ艘恍┵Y料,在這里補充一下答案。所謂的MVCC就是MultipleVersion Concurrency Control,多版本并發(fā)控制,從名字上也可以看出來,它是使用版本號來對數(shù)據(jù)進行并發(fā)控制的。實際上,在數(shù)據(jù)表的每一列,都存儲兩個隱藏列,一個是trx_id,代表事務的ID,另一個是roll_pointer,指向其上一個版本的記錄,如此組成一個記錄的版本鏈,接下來就可以講ReadView了,它存儲著一種用來記錄當前活躍狀態(tài)的讀寫事務,用于判定該transaction可見到的數(shù)據(jù)版本。
4.MySQL索引的原理是什么?
B+樹,本質(zhì)上它是將瘦長的平衡二叉樹,改造成一個矮扁的平衡多叉樹從而減少IO查詢次數(shù),平均查詢復雜度仍能保證O(logN),另外與B樹不同的是,除了葉子結(jié)點外,其他結(jié)點均不存儲數(shù)據(jù),另外葉子結(jié)點之間,用鏈表方式相連以加速查詢。當然視面試官的反應,可以再補充B+樹的插入和刪除操作。
5.MySQL建立索引時,應該注意什么?
這個按照自己的經(jīng)驗來回答了,三點:1.對區(qū)分度高的列做索引, 對于那種只有兩三個值得索引并沒有多大意義。2.建立聯(lián)合索引時要滿足最左匹配原則,例如SELECT * FROM TABLE WHERE A=1 AND B=2 AND C=3,此時需要對ABC建聯(lián)合索引, 對ABC單獨建三個索引是沒用的。面試官又問,那我對BAC建聯(lián)合索引就命中不了索引了嗎?我說是的,被面試官懟了一下,其實MySQL在很久以前就在查詢優(yōu)化器里加入了這個feature,是可以命中的。3.只對需要作為查詢條件的列建索引,否則會拖慢插入速度。
6.MySQL存儲引擎由哪些?他們有什么區(qū)別?應用場景是怎樣的
也是一道經(jīng)典MySQL題了,主要分為Innodb和MyISAM,最主要的區(qū)別在于InnoDB采用的簇集索引,MyISAM采用的是非簇集索引。
對于非簇集索引來說,葉子結(jié)點存放的值實際上是data域的地址,data和 索引是完全分離的。
7.用戶從輸入URL到看到瀏覽器展示結(jié)果,經(jīng)過了哪些過程?越詳細越好。
8.redis的數(shù)據(jù)類型有哪些?在哪些場景使用?
string, set, list, hash dict, zset
string就是經(jīng)常用的key value鍵值對;
hash dict可以表示一個對象,是一個field和value的映射表;
set就是集合,用hash來實現(xiàn)的;
list本質(zhì)上是個雙端隊列, 可以實現(xiàn)從左邊add也可以從右邊add
zset是有序集合, 用跳表來實現(xiàn),可以用來實現(xiàn)實時排行榜。
9.redis設(shè)置過期時間的原理是怎樣的?
這個我沒有看過,但是我猜了兩種策略,給猜對了:1.惰性刪除,像限流器那樣,只有在get的時候去檢查它是否expire,如果過期,就刪除。2.定時刪除。 具體的我沒想對,回去看了一下,官方給出的答案是這樣的:
Specifically this is what Redis does 10 times per second:
Test 20 random keys from the set of keys with an associated expire.
Delete all the keys found expired.
If more than 25% of keys were expired, start again from step 1.
也就是說,每秒做10次這樣的行為: 從所有設(shè)置過期時間的key中, 隨機選擇20個key,刪除所有過期的key, 如果25%的key都過期了,就回到步驟1再做一次。
10.你剛才提到了限流器,如何實現(xiàn)一個限流器?
限流器的原理就是令牌桶,按照一定的時間往桶里加入Token,如果桶已經(jīng)滿了丟棄令牌。每個新請求就消耗一個token, 如果token沒了就拒絕服務請求。新請求來臨時,會請求從桶中拿走一個Token,如果沒有Token可拿了就阻塞或者拒絕服務請求,它的所有計算本質(zhì)上都是惰性計算。
11.Goroutine為什么這么輕?
簡單來說,因為它是發(fā)生在操作系統(tǒng)的用戶態(tài)的,不需要進入內(nèi)核態(tài)進行系統(tǒng)調(diào)用,操作系統(tǒng)的上下文切換會帶來很大的開銷,切g(shù)oroutine和線程一樣,共享堆,不共享棧。
Golang的垃圾回收是怎么做的?
很早之前看過,剛好被問到了就回答得比較順利。三色并發(fā)標記,基本思想是把內(nèi)存中的所有對象分為黑白灰三類,一開始所有對象都是白色對象,然后把所有可達對象標記為灰色,再從所有灰色對象出發(fā),將所有觸及到的對象標記為灰色,自身灰色標記為黑色對象,如此循環(huán)往復,直到?jīng)]有灰色對象為止,由于每次標記剩下的都是不可達的白色對象,所以直接將白色對象刪除即可。
本文分享給需要面試刷題的朋友,也祝愿大家順利拿到自己想要的offer,這份資料主要包含了Java基礎(chǔ),數(shù)據(jù)結(jié)構(gòu),jvm,多線程等等,由于篇幅有限,以下只展示小部分面試題
有需要的伙伴可以關(guān)注、點贊、評論 私信回復我:“大廠”關(guān)鍵字,就可以拿到上述資料了!
]]>彥祖,都看到這了,點贊,收藏,叨叨一下扒~
2022年一過完春節(jié),深圳就爆發(fā)疫情,3月份居家辦公。于是我開始投遞簡歷,陸陸續(xù)續(xù)也接到了一些公司的面試。有一家公司,我個人特別喜歡,后面面試也都通過了,如愿的拿到了offer,本來到這里一切都是順風順水,事情都按照自己的想法在進行著,對自己的未來充滿了期望。
時間推進到入職新公司的前一天,那天我正在排隊做核酸,突然接到了新公司hr的電話,我當時就有一種不太好的預感。果然,她跟我說因為疫情的原因,公司這邊得取消offer。當時我整個人都傻了,工作這么久以來,從來就沒有聽說過取消offer這種神操作的。我當時已經(jīng)向原來的公司提了離職,工作也交接完了,這就意味著在疫情最嚴重的時候,我失業(yè)了。
那天晚上沒有胃口吃飯,晚上睡覺的時候也失眠了。命運仿佛跟我開了一個巨大的玩笑,不過這次我是真的笑不出來。不過后面的事情并沒有我想象的那么糟糕,因為當時還是疫情期間,我沒法到公司拿離職證明,所以并沒有完全離職,然后甲方的領(lǐng)導因為我平時工作比較認真努力,也表示可以繼續(xù)留下來工作,于是我就厚著臉皮繼續(xù)留在原來的公司了。
然而事情到這里還沒有完,因為我內(nèi)心還是很焦慮,雖然現(xiàn)在沒有失業(yè),但我當初換工作的初衷并沒有變,我還是想離開外包,找到一家自研的公司。于是,我就又開始投遞簡歷,這一次就沒有上一次面試那么順利了,等了一個星期才陸陸續(xù)續(xù)約到了幾個面試,而且因為計劃完全被打亂,心態(tài)也被搞崩潰了,面試并不是很順利,那陣子真的是非常的難熬,加上疫情也沒有結(jié)束,整天都待在出租屋里面,真的是巨大的折磨。
好在自己平時有多積累一些面試題,基礎(chǔ)也比較好一點,后面終于還是找到了一份自研的新工作。
最終還是向原來的公司提了離職,外包公司的好處可能就在這里,真的很隨意,能不能走,離不離職,完全是甲方領(lǐng)導的一句話,只要你跟甲方的領(lǐng)導關(guān)系好,工作起來還是很舒服的。因為我平時工作態(tài)度是比較好的,做事也是比較積極,所以領(lǐng)導對我還是比較關(guān)照的,所以后面還是放我走,我最終才終于入職到了新的公司。
現(xiàn)在再回想那段時光,感覺確實是很煎熬,可能也是因為我的人生閱歷還不是很豐富,對于某些大佬來說就是小菜一碟。不過每個人都是這樣成長起來的,有這樣的經(jīng)歷,對自己后面的發(fā)展和成長都是一筆巨大的財富。如果你此時正在低谷,或者遭遇挫折,一定要調(diào)整好自己的心態(tài),相信自己。如果你此時一切順利的話,一定要居安思危,多多學習。
]]>
她叫小魚,2019年畢業(yè)于新鄉(xiāng)師范學院,學的是會計專業(yè),2020年4月份選擇轉(zhuǎn)行來到云和數(shù)據(jù)選擇了java開發(fā)專業(yè),2021年4月入職一家鄭州本地企業(yè)月薪6500,2022年3月跳槽她在新公司拿到的OFFER是12K!
“我勸過她女孩子學UI設(shè)計比較好,WEB前端開發(fā)也很適合她,但是她太拗了偏要學JAVA?!碑敃r接待她的咨詢老師一臉苦笑著回憶道?!爱敃r我沒多考慮,我覺得我的英語成績很好,聽別人說JAVA工程師薪水高我就想試試!”小魚談及剛來云和數(shù)據(jù)的時候那時自己的愿望就是那么樸素,“我當時就是想往后多掙點錢補貼家用, 爸爸媽媽韓貨都比較辛苦。”再來到云和數(shù)據(jù)錢小魚其實也到過很多鄭州的本地培訓機構(gòu)了解過,甚至在其中一家繳納了定金,但之后她依舊覺得很不踏實,最終在一個高年級校友的介紹下來到了云和數(shù)據(jù)?!拔耶敃r試聽的時候第一感覺是老師的要求很嚴,對課堂氣憤的把控也很到位。雖然很多知識點我當時聽不太明白,但是老師把那些代原本眼花繚亂的代碼變得讓我看得懂了,這就很好!”回想起最初的java試聽課小魚笑著說。就是這樣小魚開始了java開發(fā)的學習生活。
“小魚是個很拼的女孩!”java金牌講師楊老師如是評價道,“晚自習她總是最后一個走的,很多時候你不趕她她就不走,每個知識點都要反復練習很多遍,我看過她的筆記本,跟我講課時的教案都差不多!”但學習的過程不但枯燥而且也并非一帆風順,JAVA開發(fā)的難點在于應用,你掌握了基礎(chǔ)知識是不夠的,必須張果她們讓代碼成為你的工具去解決實際問題,這對學員個人的邏輯思維和應變能力都是一個考驗,小魚也同樣站在了這個門檻前?!靶◆~第七周的測驗成績不理想,我感覺她好幾天都很失落?!盝AVA講師劉老師說道?!澳菚r我記得我很難受,看著周圍同學大都順利的解決問題我突然感覺到自己很蠢,當時自己懷疑過自己的選擇,懷疑過自己是狗適合JAVA開發(fā)?!被貞涍^往小魚滿臉惆悵,“當時老師找到我,晚自習面對面的教手把手的練那道坎我終于是跨過去了!”
5個月的學習生涯很快便結(jié)束了,小魚開始踏上求職之路。她并沒有像其他很多同學那樣前往北上廣深那樣的大城市求職而是選擇在鄭州本地找,“爸爸身體不好,太遠了不好照顧?!鄙頌榧抑歇毰男◆~終究還是在鄭州本地找到了第一份工作。期初她的薪資不高,鄭州本地的互聯(lián)網(wǎng)薪資水平畢竟比不上那些超一線城市,但小魚依舊很拼996的工作時間她早已習以為常甚至連續(xù)幾個月連軸轉(zhuǎn),這期間她也從未停止過提升自己的能力,不管再累她每天都抽出時間來到數(shù)云圈或是觀看一些教學視頻,或是和數(shù)云圈里的技術(shù)大咖們交流一下遇到的技術(shù)難點。隨著經(jīng)驗的積累和能力的提升小魚漸漸不滿足于眼下的收入,在2021年10月她成功跳槽并很快成為新公司的技術(shù)骨干之一,現(xiàn)在她的待遇是五險一金13薪月薪12K。
“一開始新公司的新同事覺得我就是個吉祥物,”小魚忍不住笑了起來,“我記得當時拎著筆記本到技術(shù)部報道的時候,那個胖胖的同事還看著我說‘你走錯了,銷售部再往里走左拐’?!苯Y(jié)果半月后那個胖胖的同事就給她打下手了。
這就是小魚一個女程序員的蛻變經(jīng)歷,也祝愿更多的女孩能在程序員這個職業(yè)上發(fā)光發(fā)熱頂起半邊天。
]]>