二、Neo4j源码研究系列 - 单步调试
二、Neo4j源码研究系列 - 单步调试
一、背景介绍
上一篇我们已经把了neo4j的源码准备以及打包流程完成了,本篇将讲解如何对neo4j进行单步调试。对于不了解如何编译打包neo4j的读者,请阅读《一、Neo4j源码研究系列 - 源代码准备》。
大纲: 本篇内容会先介绍neo4j的代码模块,这样大家对neo4j的整体结构有一个初步的了解。后续介绍其服务的入口类,以及单步调试的方式,由于neo4j整个项目涉及的模块多且庞大,所以我们本次主要学习其bolt模块的使用内容,后续模块会慢慢介绍。
问:首先bolt是什么?
答: Bolt 是一种应用协议,通过数据库查询语言(如 Cypher)执行数据库查询。如果事先bolt是什么的东西都不知道的同学,推荐大家可以阅读下述内容,如果还是不明白,可以私信或者评论,如果确实很多还是不知道或者不清楚的,本人将写一篇关于bolt的内容帮助大家了解。
bolt介绍: https://neo4j.com/docs/bolt/current/bolt/。
二、模块说明
neo4j源码版本:4.4
目录结构说明(关键代码处于community目录下),下图中作者认为重要的或者需要特殊说明的都添加了相关介绍,如果有不清楚的或者觉得有问题的可以联系本人:
|-- community|-- batch-insert (用于批量插入)|-- bolt (neo4j自定义的客户端连接协议) 备注:本此学习使用模块|-- buffers|-- capabilities|-- codegen|-- collections (neo4j自定义的数据结构, 方便内存跟踪) 备注:neo4j很多数据结构都是自己重写的|-- command-line (neo4j的命令行工具)|-- common |-- community-it (neo4j 各个模块的集成测试) 备注:neo4j的测试非常齐全|-- concurrent (并发工具)|-- configuration|-- consistency-check (neo4j 是具有分布式模式的,该模块用于一致性检测) 备注: neo4j主要采用主备模式|-- csv|-- cypher (neo4j自定义的查询语言) 备注:目前也是图数据库主流查询语言,至少在GQL出来之前|-- cypher-shell |-- data-collector|-- dbms (数据库管理系统,每个数据库都有这个)|-- diagnostics|-- fabric (neo4j的一种新模式,采用分片存储) 备注: 如果完成,大概率解除单机瓶颈,值得关注|-- fulltext-index (neo4j的全文索引,自己实现的)|-- graph-algo (内嵌的图算法,主要是寻路类算法) 备注:neo4j完整算法模块有单独一个仓库为GDS,学习图算法可以仓库该仓库|-- graphdb-api (数据库的相关接口)|-- id-generator (neo4j id生成工具,id的相关构建信息,查看该模块)|-- import-tool (neo4j 导入工具)|-- import-util (导入工具帮助类)|-- index (neo4j的索引自己实现的,索引相关代码查阅该模块)|-- io (neo4j的io读写模块) 备注:该模块有neo4j的自定义的缓存设计“Muninn page cache",类操作系统提供的mmap。|-- kernel (核心模块,不用多说)|-- kernal-api|-- layout (数据库的整体文件结构)|-- lock|-- logging|-- lucene-index|-- monitoring (数据库的状态监控)|-- neo4j (数据库服务相关的模块) 备注:图数据库的启动入口就是在该模块|-- neo4j-exceptions (neo4j的自定义异常模块) 备注: neo4j的异常处理还是比较清晰的|-- neo4j-harness|-- procedure|-- procedure-api|-- procedure-compiler|-- push-to-cloud (将本地实例推送到neo4j的Aura) 备注:各个图数据库仓库都开始云化了|-- random-values|-- record-storage-engine (neo4j存储相关的代码,核心中的核心) |-- resource|-- schema (neo4j的图模式设计,有点类似传统的ER图, 用于确定点和边之间的关系) 备注:neo4j是schema-free的|-- security (这个模块每个数据库都需要把)|-- servers|-- server-api|-- spatial-index (主要用于地图坐标相关的) 备注:neo4j的体系是真的庞大|-- ssl|-- storage-engine-api |-- storage-engine-util|-- testing (neo4j 测试的工具类)|-- token-api|-- unsafe|-- values (neo4j各个类型值的封装) 备注:数据库存储不同值的支持,该模块也用于cyper类型值的返回和写入|-- wal (neo4j的写前日志)|-- zstd-proxy
上述的目录结构为neo4j的第一级目录,其子目录还未展开。从上述的结构,我们就可以看出neo4j产品的庞大和复杂,毕竟这个是一个图数据库产品。所以我们去阅读源码的时候需要分清主次关系,优先理清其整体脉络,而不是一开始就细扣各个实现细节,这样容易让我们陷入误区,并且缺少整体的观念。
三、代码调试
3.1 设置启动参数
服务启动入口类: CommunityEntryPoint
上述类所在目录: 位于neo4j模块,package org.neo4j.server 包下
服务启动执行参数:
参数详情: -server --home-dir=D:\neo4j-community-4.4.17-SNAPSHOT --config-dir=D:/neo4j-community-4.4.17-SNAPSHOT/conf
其启动参数校验代码位于: CommunityEntryPoint 同级目录下的 NeoBootstrapper,NeoBootstrapper的start方法主要检验挂载目录和配置文件。
参数名 | 作用 | 备注 |
---|---|---|
home-dir | neo4j数据库所在的目录 | 使用上节内容自己打包出来的安装目录 |
config-dir | neo4j数据库配置文件所在目录,图服务器启动需要读取配置文件 | 使用上节内容自己打包出来的安装目录下的配置文件 |
3.2 单步调试
以上为单步调试界面,至于如何单步调试,本篇就不做介绍了,做过开发的基本都会debug。
3.3 bolt方法-连接服务端
大家其实最想要知道的就是客户端连接服务器,然后执行语句,研究起调用流程,以下演示通过bolt协议连接服务端,执行cypher语句的流程。
1.配置连接服务器
2.输入账号密码
如果账号密码输入错误,服务端会出现下面的提示。
3.连接project
上述界面其实和browser使用方式是一样的,只是走的bolt协议,7687端口。
4.创建数据源(movie-graph)
执行:“ :guide movie-graph”
左侧将会有提示框,点击运行便可以创建movies数据。下面本人也将movies的cypher语句贴出来,大家可以直接运行该语句生成movie数据。(neo4j官网提供的很多不同类型的数据集,比如社交网络、推荐系统等等数据源,大家根据自己的需要自行下载)
Movie-graph的cypher语句
CREATE (TheMatrix:Movie {title:'The Matrix', released:1999, tagline:'Welcome to the Real World'})CREATE (Keanu:Person {name:'Keanu Reeves', born:1964})CREATE (Carrie:Person {name:'Carrie-Anne Moss', born:1967})CREATE (Laurence:Person {name:'Laurence Fishburne', born:1961})CREATE (Hugo:Person {name:'Hugo Weaving', born:1960})CREATE (LillyW:Person {name:'Lilly Wachowski', born:1967})CREATE (LanaW:Person {name:'Lana Wachowski', born:1965})CREATE (JoelS:Person {name:'Joel Silver', born:1952})CREATE(Keanu)-[:ACTED_IN {roles:['Neo']}]->(TheMatrix),(Carrie)-[:ACTED_IN {roles:['Trinity']}]->(TheMatrix),(Laurence)-[:ACTED_IN {roles:['Morpheus']}]->(TheMatrix),(Hugo)-[:ACTED_IN {roles:['Agent Smith']}]->(TheMatrix),(LillyW)-[:DIRECTED]->(TheMatrix),(LanaW)-[:DIRECTED]->(TheMatrix),(JoelS)-[:PRODUCED]->(TheMatrix)CREATE (Emil:Person {name:"Emil Eifrem", born:1978})CREATE (Emil)-[:ACTED_IN {roles:["Emil"]}]->(TheMatrix)CREATE (TheMatrixReloaded:Movie {title:'The Matrix Reloaded', released:2003, tagline:'Free your mind'})CREATE(Keanu)-[:ACTED_IN {roles:['Neo']}]->(TheMatrixReloaded),(Carrie)-[:ACTED_IN {roles:['Trinity']}]->(TheMatrixReloaded),(Laurence)-[:ACTED_IN {roles:['Morpheus']}]->(TheMatrixReloaded),(Hugo)-[:ACTED_IN {roles:['Agent Smith']}]->(TheMatrixReloaded),(LillyW)-[:DIRECTED]->(TheMatrixReloaded),(LanaW)-[:DIRECTED]->(TheMatrixReloaded),(JoelS)-[:PRODUCED]->(TheMatrixReloaded)CREATE (TheMatrixRevolutions:Movie {title:'The Matrix Revolutions', released:2003, tagline:'Everything that has a beginning has an end'})CREATE(Keanu)-[:ACTED_IN {roles:['Neo']}]->(TheMatrixRevolutions),(Carrie)-[:ACTED_IN {roles:['Trinity']}]->(TheMatrixRevolutions),(Laurence)-[:ACTED_IN {roles:['Morpheus']}]->(TheMatrixRevolutions),(Hugo)-[:ACTED_IN {roles:['Agent Smith']}]->(TheMatrixRevolutions),(LillyW)-[:DIRECTED]->(TheMatrixRevolutions),(LanaW)-[:DIRECTED]->(TheMatrixRevolutions),(JoelS)-[:PRODUCED]->(TheMatrixRevolutions)CREATE (TheDevilsAdvocate:Movie {title:"The Devil's Advocate", released:1997, tagline:'Evil has its winning ways'})CREATE (Charlize:Person {name:'Charlize Theron', born:1975})CREATE (Al:Person {name:'Al Pacino', born:1940})CREATE (Taylor:Person {name:'Taylor Hackford', born:1944})CREATE(Keanu)-[:ACTED_IN {roles:['Kevin Lomax']}]->(TheDevilsAdvocate),(Charlize)-[:ACTED_IN {roles:['Mary Ann Lomax']}]->(TheDevilsAdvocate),(Al)-[:ACTED_IN {roles:['John Milton']}]->(TheDevilsAdvocate),(Taylor)-[:DIRECTED]->(TheDevilsAdvocate)CREATE (AFewGoodMen:Movie {title:"A Few Good Men", released:1992, tagline:"In the heart of the nation's capital, in a courthouse of the U.S. government, one man will stop at nothing to keep his honor, and one will stop at nothing to find the truth."})CREATE (TomC:Person {name:'Tom Cruise', born:1962})CREATE (JackN:Person {name:'Jack Nicholson', born:1937})CREATE (DemiM:Person {name:'Demi Moore', born:1962})CREATE (KevinB:Person {name:'Kevin Bacon', born:1958})CREATE (KieferS:Person {name:'Kiefer Sutherland', born:1966})CREATE (NoahW:Person {name:'Noah Wyle', born:1971})CREATE (CubaG:Person {name:'Cuba Gooding Jr.', born:1968})CREATE (KevinP:Person {name:'Kevin Pollak', born:1957})CREATE (JTW:Person {name:'J.T. Walsh', born:1943})CREATE (JamesM:Person {name:'James Marshall', born:1967})CREATE (ChristopherG:Person {name:'Christopher Guest', born:1948})CREATE (RobR:Person {name:'Rob Reiner', born:1947})CREATE (AaronS:Person {name:'Aaron Sorkin', born:1961})CREATE(TomC)-[:ACTED_IN {roles:['Lt. Daniel Kaffee']}]->(AFewGoodMen),(JackN)-[:ACTED_IN {roles:['Col. Nathan R. Jessup']}]->(AFewGoodMen),(DemiM)-[:ACTED_IN {roles:['Lt. Cdr. JoAnne Galloway']}]->(AFewGoodMen),(KevinB)-[:ACTED_IN {roles:['Capt. Jack Ross']}]->(AFewGoodMen),(KieferS)-[:ACTED_IN {roles:['Lt. Jonathan Kendrick']}]->(AFewGoodMen),(NoahW)-[:ACTED_IN {roles:['Cpl. Jeffrey Barnes']}]->(AFewGoodMen),(CubaG)-[:ACTED_IN {roles:['Cpl. Carl Hammaker']}]->(AFewGoodMen),(KevinP)-[:ACTED_IN {roles:['Lt. Sam Weinberg']}]->(AFewGoodMen),(JTW)-[:ACTED_IN {roles:['Lt. Col. Matthew Andrew Markinson']}]->(AFewGoodMen),(JamesM)-[:ACTED_IN {roles:['Pfc. Louden Downey']}]->(AFewGoodMen),(ChristopherG)-[:ACTED_IN {roles:['Dr. Stone']}]->(AFewGoodMen),(AaronS)-[:ACTED_IN {roles:['Man in Bar']}]->(AFewGoodMen),(RobR)-[:DIRECTED]->(AFewGoodMen),(AaronS)-[:WROTE]->(AFewGoodMen)CREATE (TopGun:Movie {title:"Top Gun", released:1986, tagline:'I feel the need, the need for speed.'})CREATE (KellyM:Person {name:'Kelly McGillis', born:1957})CREATE (ValK:Person {name:'Val Kilmer', born:1959})CREATE (AnthonyE:Person {name:'Anthony Edwards', born:1962})CREATE (TomS:Person {name:'Tom Skerritt', born:1933})CREATE (MegR:Person {name:'Meg Ryan', born:1961})CREATE (TonyS:Person {name:'Tony Scott', born:1944})CREATE (JimC:Person {name:'Jim Cash', born:1941})CREATE(TomC)-[:ACTED_IN {roles:['Maverick']}]->(TopGun),(KellyM)-[:ACTED_IN {roles:['Charlie']}]->(TopGun),(ValK)-[:ACTED_IN {roles:['Iceman']}]->(TopGun),(AnthonyE)-[:ACTED_IN {roles:['Goose']}]->(TopGun),(TomS)-[:ACTED_IN {roles:['Viper']}]->(TopGun),(MegR)-[:ACTED_IN {roles:['Carole']}]->(TopGun),(TonyS)-[:DIRECTED]->(TopGun),(JimC)-[:WROTE]->(TopGun)CREATE (JerryMaguire:Movie {title:'Jerry Maguire', released:2000, tagline:'The rest of his life begins now.'})CREATE (ReneeZ:Person {name:'Renee Zellweger', born:1969})CREATE (KellyP:Person {name:'Kelly Preston', born:1962})CREATE (JerryO:Person {name:"Jerry O'Connell", born:1974})CREATE (JayM:Person {name:'Jay Mohr', born:1970})CREATE (BonnieH:Person {name:'Bonnie Hunt', born:1961})CREATE (ReginaK:Person {name:'Regina King', born:1971})CREATE (JonathanL:Person {name:'Jonathan Lipnicki', born:1996})CREATE (CameronC:Person {name:'Cameron Crowe', born:1957})CREATE(TomC)-[:ACTED_IN {roles:['Jerry Maguire']}]->(JerryMaguire),(CubaG)-[:ACTED_IN {roles:['Rod Tidwell']}]->(JerryMaguire),(ReneeZ)-[:ACTED_IN {roles:['Dorothy Boyd']}]->(JerryMaguire),(KellyP)-[:ACTED_IN {roles:['Avery Bishop']}]->(JerryMaguire),(JerryO)-[:ACTED_IN {roles:['Frank Cushman']}]->(JerryMaguire),(JayM)-[:ACTED_IN {roles:['Bob Sugar']}]->(JerryMaguire),(BonnieH)-[:ACTED_IN {roles:['Laurel Boyd']}]->(JerryMaguire),(ReginaK)-[:ACTED_IN {roles:['Marcee Tidwell']}]->(JerryMaguire),(JonathanL)-[:ACTED_IN {roles:['Ray Boyd']}]->(JerryMaguire),(CameronC)-[:DIRECTED]->(JerryMaguire),(CameronC)-[:PRODUCED]->(JerryMaguire),(CameronC)-[:WROTE]->(JerryMaguire)CREATE (StandByMe:Movie {title:"Stand By Me", released:1986, tagline:"For some, it's the last real taste of innocence, and the first real taste of life. But for everyone, it's the time that memories are made of."})CREATE (RiverP:Person {name:'River Phoenix', born:1970})CREATE (CoreyF:Person {name:'Corey Feldman', born:1971})CREATE (WilW:Person {name:'Wil Wheaton', born:1972})CREATE (JohnC:Person {name:'John Cusack', born:1966})CREATE (MarshallB:Person {name:'Marshall Bell', born:1942})CREATE(WilW)-[:ACTED_IN {roles:['Gordie Lachance']}]->(StandByMe),(RiverP)-[:ACTED_IN {roles:['Chris Chambers']}]->(StandByMe),(JerryO)-[:ACTED_IN {roles:['Vern Tessio']}]->(StandByMe),(CoreyF)-[:ACTED_IN {roles:['Teddy Duchamp']}]->(StandByMe),(JohnC)-[:ACTED_IN {roles:['Denny Lachance']}]->(StandByMe),(KieferS)-[:ACTED_IN {roles:['Ace Merrill']}]->(StandByMe),(MarshallB)-[:ACTED_IN {roles:['Mr. Lachance']}]->(StandByMe),(RobR)-[:DIRECTED]->(StandByMe)CREATE (AsGoodAsItGets:Movie {title:'As Good as It Gets', released:1997, tagline:'A comedy from the heart that goes for the throat.'})CREATE (HelenH:Person {name:'Helen Hunt', born:1963})CREATE (GregK:Person {name:'Greg Kinnear', born:1963})CREATE (JamesB:Person {name:'James L. Brooks', born:1940})CREATE(JackN)-[:ACTED_IN {roles:['Melvin Udall']}]->(AsGoodAsItGets),(HelenH)-[:ACTED_IN {roles:['Carol Connelly']}]->(AsGoodAsItGets),(GregK)-[:ACTED_IN {roles:['Simon Bishop']}]->(AsGoodAsItGets),(CubaG)-[:ACTED_IN {roles:['Frank Sachs']}]->(AsGoodAsItGets),(JamesB)-[:DIRECTED]->(AsGoodAsItGets)CREATE (WhatDreamsMayCome:Movie {title:'What Dreams May Come', released:1998, tagline:'After life there is more. The end is just the beginning.'})CREATE (AnnabellaS:Person {name:'Annabella Sciorra', born:1960})CREATE (MaxS:Person {name:'Max von Sydow', born:1929})CREATE (WernerH:Person {name:'Werner Herzog', born:1942})CREATE (Robin:Person {name:'Robin Williams', born:1951})CREATE (VincentW:Person {name:'Vincent Ward', born:1956})CREATE(Robin)-[:ACTED_IN {roles:['Chris Nielsen']}]->(WhatDreamsMayCome),(CubaG)-[:ACTED_IN {roles:['Albert Lewis']}]->(WhatDreamsMayCome),(AnnabellaS)-[:ACTED_IN {roles:['Annie Collins-Nielsen']}]->(WhatDreamsMayCome),(MaxS)-[:ACTED_IN {roles:['The Tracker']}]->(WhatDreamsMayCome),(WernerH)-[:ACTED_IN {roles:['The Face']}]->(WhatDreamsMayCome),(VincentW)-[:DIRECTED]->(WhatDreamsMayCome)CREATE (SnowFallingonCedars:Movie {title:'Snow Falling on Cedars', released:1999, tagline:'First loves last. Forever.'})CREATE (EthanH:Person {name:'Ethan Hawke', born:1970})CREATE (RickY:Person {name:'Rick Yune', born:1971})CREATE (JamesC:Person {name:'James Cromwell', born:1940})CREATE (ScottH:Person {name:'Scott Hicks', born:1953})CREATE(EthanH)-[:ACTED_IN {roles:['Ishmael Chambers']}]->(SnowFallingonCedars),(RickY)-[:ACTED_IN {roles:['Kazuo Miyamoto']}]->(SnowFallingonCedars),(MaxS)-[:ACTED_IN {roles:['Nels Gudmundsson']}]->(SnowFallingonCedars),(JamesC)-[:ACTED_IN {roles:['Judge Fielding']}]->(SnowFallingonCedars),(ScottH)-[:DIRECTED]->(SnowFallingonCedars)CREATE (YouveGotMail:Movie {title:"You've Got Mail", released:1998, tagline:'At odds in life... in love on-line.'})CREATE (ParkerP:Person {name:'Parker Posey', born:1968})CREATE (DaveC:Person {name:'Dave Chappelle', born:1973})CREATE (SteveZ:Person {name:'Steve Zahn', born:1967})CREATE (TomH:Person {name:'Tom Hanks', born:1956})CREATE (NoraE:Person {name:'Nora Ephron', born:1941})CREATE(TomH)-[:ACTED_IN {roles:['Joe Fox']}]->(YouveGotMail),(MegR)-[:ACTED_IN {roles:['Kathleen Kelly']}]->(YouveGotMail),(GregK)-[:ACTED_IN {roles:['Frank Navasky']}]->(YouveGotMail),(ParkerP)-[:ACTED_IN {roles:['Patricia Eden']}]->(YouveGotMail),(DaveC)-[:ACTED_IN {roles:['Kevin Jackson']}]->(YouveGotMail),(SteveZ)-[:ACTED_IN {roles:['George Pappas']}]->(YouveGotMail),(NoraE)-[:DIRECTED]->(YouveGotMail)CREATE (SleeplessInSeattle:Movie {title:'Sleepless in Seattle', released:1993, tagline:'What if someone you never met, someone you never saw, someone you never knew was the only someone for you?'})CREATE (RitaW:Person {name:'Rita Wilson', born:1956})CREATE (BillPull:Person {name:'Bill Pullman', born:1953})CREATE (VictorG:Person {name:'Victor Garber', born:1949})CREATE (RosieO:Person {name:"Rosie O'Donnell", born:1962})CREATE(TomH)-[:ACTED_IN {roles:['Sam Baldwin']}]->(SleeplessInSeattle),(MegR)-[:ACTED_IN {roles:['Annie Reed']}]->(SleeplessInSeattle),(RitaW)-[:ACTED_IN {roles:['Suzy']}]->(SleeplessInSeattle),(BillPull)-[:ACTED_IN {roles:['Walter']}]->(SleeplessInSeattle),(VictorG)-[:ACTED_IN {roles:['Greg']}]->(SleeplessInSeattle),(RosieO)-[:ACTED_IN {roles:['Becky']}]->(SleeplessInSeattle),(NoraE)-[:DIRECTED]->(SleeplessInSeattle)CREATE (JoeVersustheVolcano:Movie {title:'Joe Versus the Volcano', released:1990, tagline:'A story of love, lava and burning desire.'})CREATE (JohnS:Person {name:'John Patrick Stanley', born:1950})CREATE (Nathan:Person {name:'Nathan Lane', born:1956})CREATE(TomH)-[:ACTED_IN {roles:['Joe Banks']}]->(JoeVersustheVolcano),(MegR)-[:ACTED_IN {roles:['DeDe', 'Angelica Graynamore', 'Patricia Graynamore']}]->(JoeVersustheVolcano),(Nathan)-[:ACTED_IN {roles:['Baw']}]->(JoeVersustheVolcano),(JohnS)-[:DIRECTED]->(JoeVersustheVolcano)CREATE (WhenHarryMetSally:Movie {title:'When Harry Met Sally', released:1998, tagline:'Can two friends sleep together and still love each other in the morning?'})CREATE (BillyC:Person {name:'Billy Crystal', born:1948})CREATE (CarrieF:Person {name:'Carrie Fisher', born:1956})CREATE (BrunoK:Person {name:'Bruno Kirby', born:1949})CREATE(BillyC)-[:ACTED_IN {roles:['Harry Burns']}]->(WhenHarryMetSally),(MegR)-[:ACTED_IN {roles:['Sally Albright']}]->(WhenHarryMetSally),(CarrieF)-[:ACTED_IN {roles:['Marie']}]->(WhenHarryMetSally),(BrunoK)-[:ACTED_IN {roles:['Jess']}]->(WhenHarryMetSally),(RobR)-[:DIRECTED]->(WhenHarryMetSally),(RobR)-[:PRODUCED]->(WhenHarryMetSally),(NoraE)-[:PRODUCED]->(WhenHarryMetSally),(NoraE)-[:WROTE]->(WhenHarryMetSally)CREATE (ThatThingYouDo:Movie {title:'That Thing You Do', released:1996, tagline:'In every life there comes a time when that thing you dream becomes that thing you do'})CREATE (LivT:Person {name:'Liv Tyler', born:1977})CREATE(TomH)-[:ACTED_IN {roles:['Mr. White']}]->(ThatThingYouDo),(LivT)-[:ACTED_IN {roles:['Faye Dolan']}]->(ThatThingYouDo),(Charlize)-[:ACTED_IN {roles:['Tina']}]->(ThatThingYouDo),(TomH)-[:DIRECTED]->(ThatThingYouDo)CREATE (TheReplacements:Movie {title:'The Replacements', released:2000, tagline:'Pain heals, Chicks dig scars... Glory lasts forever'})CREATE (Brooke:Person {name:'Brooke Langton', born:1970})CREATE (Gene:Person {name:'Gene Hackman', born:1930})CREATE (Orlando:Person {name:'Orlando Jones', born:1968})CREATE (Howard:Person {name:'Howard Deutch', born:1950})CREATE(Keanu)-[:ACTED_IN {roles:['Shane Falco']}]->(TheReplacements),(Brooke)-[:ACTED_IN {roles:['Annabelle Farrell']}]->(TheReplacements),(Gene)-[:ACTED_IN {roles:['Jimmy McGinty']}]->(TheReplacements),(Orlando)-[:ACTED_IN {roles:['Clifford Franklin']}]->(TheReplacements),(Howard)-[:DIRECTED]->(TheReplacements)CREATE (RescueDawn:Movie {title:'RescueDawn', released:2006, tagline:"Based on the extraordinary true story of one man's fight for freedom"})CREATE (ChristianB:Person {name:'Christian Bale', born:1974})CREATE (ZachG:Person {name:'Zach Grenier', born:1954})CREATE(MarshallB)-[:ACTED_IN {roles:['Admiral']}]->(RescueDawn),(ChristianB)-[:ACTED_IN {roles:['Dieter Dengler']}]->(RescueDawn),(ZachG)-[:ACTED_IN {roles:['Squad Leader']}]->(RescueDawn),(SteveZ)-[:ACTED_IN {roles:['Duane']}]->(RescueDawn),(WernerH)-[:DIRECTED]->(RescueDawn)CREATE (TheBirdcage:Movie {title:'The Birdcage', released:1996, tagline:'Come as you are'})CREATE (MikeN:Person {name:'Mike Nichols', born:1931})CREATE(Robin)-[:ACTED_IN {roles:['Armand Goldman']}]->(TheBirdcage),(Nathan)-[:ACTED_IN {roles:['Albert Goldman']}]->(TheBirdcage),(Gene)-[:ACTED_IN {roles:['Sen. Kevin Keeley']}]->(TheBirdcage),(MikeN)-[:DIRECTED]->(TheBirdcage)CREATE (Unforgiven:Movie {title:'Unforgiven', released:1992, tagline:"It's a hell of a thing, killing a man"})CREATE (RichardH:Person {name:'Richard Harris', born:1930})CREATE (ClintE:Person {name:'Clint Eastwood', born:1930})CREATE(RichardH)-[:ACTED_IN {roles:['English Bob']}]->(Unforgiven),(ClintE)-[:ACTED_IN {roles:['Bill Munny']}]->(Unforgiven),(Gene)-[:ACTED_IN {roles:['Little Bill Daggett']}]->(Unforgiven),(ClintE)-[:DIRECTED]->(Unforgiven)CREATE (JohnnyMnemonic:Movie {title:'Johnny Mnemonic', released:1995, tagline:'The hottest data on earth. In the coolest head in town'})CREATE (Takeshi:Person {name:'Takeshi Kitano', born:1947})CREATE (Dina:Person {name:'Dina Meyer', born:1968})CREATE (IceT:Person {name:'Ice-T', born:1958})CREATE (RobertL:Person {name:'Robert Longo', born:1953})CREATE(Keanu)-[:ACTED_IN {roles:['Johnny Mnemonic']}]->(JohnnyMnemonic),(Takeshi)-[:ACTED_IN {roles:['Takahashi']}]->(JohnnyMnemonic),(Dina)-[:ACTED_IN {roles:['Jane']}]->(JohnnyMnemonic),(IceT)-[:ACTED_IN {roles:['J-Bone']}]->(JohnnyMnemonic),(RobertL)-[:DIRECTED]->(JohnnyMnemonic)CREATE (CloudAtlas:Movie {title:'Cloud Atlas', released:2012, tagline:'Everything is connected'})CREATE (HalleB:Person {name:'Halle Berry', born:1966})CREATE (JimB:Person {name:'Jim Broadbent', born:1949})CREATE (TomT:Person {name:'Tom Tykwer', born:1965})CREATE (DavidMitchell:Person {name:'David Mitchell', born:1969})CREATE (StefanArndt:Person {name:'Stefan Arndt', born:1961})CREATE(TomH)-[:ACTED_IN {roles:['Zachry', 'Dr. Henry Goose', 'Isaac Sachs', 'Dermot Hoggins']}]->(CloudAtlas),(Hugo)-[:ACTED_IN {roles:['Bill Smoke', 'Haskell Moore', 'Tadeusz Kesselring', 'Nurse Noakes', 'Boardman Mephi', 'Old Georgie']}]->(CloudAtlas),(HalleB)-[:ACTED_IN {roles:['Luisa Rey', 'Jocasta Ayrs', 'Ovid', 'Meronym']}]->(CloudAtlas),(JimB)-[:ACTED_IN {roles:['Vyvyan Ayrs', 'Captain Molyneux', 'Timothy Cavendish']}]->(CloudAtlas),(TomT)-[:DIRECTED]->(CloudAtlas),(LillyW)-[:DIRECTED]->(CloudAtlas),(LanaW)-[:DIRECTED]->(CloudAtlas),(DavidMitchell)-[:WROTE]->(CloudAtlas),(StefanArndt)-[:PRODUCED]->(CloudAtlas)CREATE (TheDaVinciCode:Movie {title:'The Da Vinci Code', released:2006, tagline:'Break The Codes'})CREATE (IanM:Person {name:'Ian McKellen', born:1939})CREATE (AudreyT:Person {name:'Audrey Tautou', born:1976})CREATE (PaulB:Person {name:'Paul Bettany', born:1971})CREATE (RonH:Person {name:'Ron Howard', born:1954})CREATE(TomH)-[:ACTED_IN {roles:['Dr. Robert Langdon']}]->(TheDaVinciCode),(IanM)-[:ACTED_IN {roles:['Sir Leight Teabing']}]->(TheDaVinciCode),(AudreyT)-[:ACTED_IN {roles:['Sophie Neveu']}]->(TheDaVinciCode),(PaulB)-[:ACTED_IN {roles:['Silas']}]->(TheDaVinciCode),(RonH)-[:DIRECTED]->(TheDaVinciCode)CREATE (VforVendetta:Movie {title:'V for Vendetta', released:2006, tagline:'Freedom! Forever!'})CREATE (NatalieP:Person {name:'Natalie Portman', born:1981})CREATE (StephenR:Person {name:'Stephen Rea', born:1946})CREATE (JohnH:Person {name:'John Hurt', born:1940})CREATE (BenM:Person {name: 'Ben Miles', born:1967})CREATE(Hugo)-[:ACTED_IN {roles:['V']}]->(VforVendetta),(NatalieP)-[:ACTED_IN {roles:['Evey Hammond']}]->(VforVendetta),(StephenR)-[:ACTED_IN {roles:['Eric Finch']}]->(VforVendetta),(JohnH)-[:ACTED_IN {roles:['High Chancellor Adam Sutler']}]->(VforVendetta),(BenM)-[:ACTED_IN {roles:['Dascomb']}]->(VforVendetta),(JamesM)-[:DIRECTED]->(VforVendetta),(LillyW)-[:PRODUCED]->(VforVendetta),(LanaW)-[:PRODUCED]->(VforVendetta),(JoelS)-[:PRODUCED]->(VforVendetta),(LillyW)-[:WROTE]->(VforVendetta),(LanaW)-[:WROTE]->(VforVendetta)CREATE (SpeedRacer:Movie {title:'Speed Racer', released:2008, tagline:'Speed has no limits'})CREATE (EmileH:Person {name:'Emile Hirsch', born:1985})CREATE (JohnG:Person {name:'John Goodman', born:1960})CREATE (SusanS:Person {name:'Susan Sarandon', born:1946})CREATE (MatthewF:Person {name:'Matthew Fox', born:1966})CREATE (ChristinaR:Person {name:'Christina Ricci', born:1980})CREATE (Rain:Person {name:'Rain', born:1982})CREATE(EmileH)-[:ACTED_IN {roles:['Speed Racer']}]->(SpeedRacer),(JohnG)-[:ACTED_IN {roles:['Pops']}]->(SpeedRacer),(SusanS)-[:ACTED_IN {roles:['Mom']}]->(SpeedRacer),(MatthewF)-[:ACTED_IN {roles:['Racer X']}]->(SpeedRacer),(ChristinaR)-[:ACTED_IN {roles:['Trixie']}]->(SpeedRacer),(Rain)-[:ACTED_IN {roles:['Taejo Togokahn']}]->(SpeedRacer),(BenM)-[:ACTED_IN {roles:['Cass Jones']}]->(SpeedRacer),(LillyW)-[:DIRECTED]->(SpeedRacer),(LanaW)-[:DIRECTED]->(SpeedRacer),(LillyW)-[:WROTE]->(SpeedRacer),(LanaW)-[:WROTE]->(SpeedRacer),(JoelS)-[:PRODUCED]->(SpeedRacer)CREATE (NinjaAssassin:Movie {title:'Ninja Assassin', released:2009, tagline:'Prepare to enter a secret world of assassins'})CREATE (NaomieH:Person {name:'Naomie Harris'})CREATE(Rain)-[:ACTED_IN {roles:['Raizo']}]->(NinjaAssassin),(NaomieH)-[:ACTED_IN {roles:['Mika Coretti']}]->(NinjaAssassin),(RickY)-[:ACTED_IN {roles:['Takeshi']}]->(NinjaAssassin),(BenM)-[:ACTED_IN {roles:['Ryan Maslow']}]->(NinjaAssassin),(JamesM)-[:DIRECTED]->(NinjaAssassin),(LillyW)-[:PRODUCED]->(NinjaAssassin),(LanaW)-[:PRODUCED]->(NinjaAssassin),(JoelS)-[:PRODUCED]->(NinjaAssassin)CREATE (TheGreenMile:Movie {title:'The Green Mile', released:1999, tagline:"Walk a mile you'll never forget."})CREATE (MichaelD:Person {name:'Michael Clarke Duncan', born:1957})CREATE (DavidM:Person {name:'David Morse', born:1953})CREATE (SamR:Person {name:'Sam Rockwell', born:1968})CREATE (GaryS:Person {name:'Gary Sinise', born:1955})CREATE (PatriciaC:Person {name:'Patricia Clarkson', born:1959})CREATE (FrankD:Person {name:'Frank Darabont', born:1959})CREATE(TomH)-[:ACTED_IN {roles:['Paul Edgecomb']}]->(TheGreenMile),(MichaelD)-[:ACTED_IN {roles:['John Coffey']}]->(TheGreenMile),(DavidM)-[:ACTED_IN {roles:['Brutus "Brutal" Howell']}]->(TheGreenMile),(BonnieH)-[:ACTED_IN {roles:['Jan Edgecomb']}]->(TheGreenMile),(JamesC)-[:ACTED_IN {roles:['Warden Hal Moores']}]->(TheGreenMile),(SamR)-[:ACTED_IN {roles:['"Wild Bill" Wharton']}]->(TheGreenMile),(GaryS)-[:ACTED_IN {roles:['Burt Hammersmith']}]->(TheGreenMile),(PatriciaC)-[:ACTED_IN {roles:['Melinda Moores']}]->(TheGreenMile),(FrankD)-[:DIRECTED]->(TheGreenMile)CREATE (FrostNixon:Movie {title:'Frost/Nixon', released:2008, tagline:'400 million people were waiting for the truth.'})CREATE (FrankL:Person {name:'Frank Langella', born:1938})CREATE (MichaelS:Person {name:'Michael Sheen', born:1969})CREATE (OliverP:Person {name:'Oliver Platt', born:1960})CREATE(FrankL)-[:ACTED_IN {roles:['Richard Nixon']}]->(FrostNixon),(MichaelS)-[:ACTED_IN {roles:['David Frost']}]->(FrostNixon),(KevinB)-[:ACTED_IN {roles:['Jack Brennan']}]->(FrostNixon),(OliverP)-[:ACTED_IN {roles:['Bob Zelnick']}]->(FrostNixon),(SamR)-[:ACTED_IN {roles:['James Reston, Jr.']}]->(FrostNixon),(RonH)-[:DIRECTED]->(FrostNixon)CREATE (Hoffa:Movie {title:'Hoffa', released:1992, tagline:"He didn't want law. He wanted justice."})CREATE (DannyD:Person {name:'Danny DeVito', born:1944})CREATE (JohnR:Person {name:'John C. Reilly', born:1965})CREATE(JackN)-[:ACTED_IN {roles:['Hoffa']}]->(Hoffa),(DannyD)-[:ACTED_IN {roles:['Robert "Bobby" Ciaro']}]->(Hoffa),(JTW)-[:ACTED_IN {roles:['Frank Fitzsimmons']}]->(Hoffa),(JohnR)-[:ACTED_IN {roles:['Peter "Pete" Connelly']}]->(Hoffa),(DannyD)-[:DIRECTED]->(Hoffa)CREATE (Apollo13:Movie {title:'Apollo 13', released:1995, tagline:'Houston, we have a problem.'})CREATE (EdH:Person {name:'Ed Harris', born:1950})CREATE (BillPax:Person {name:'Bill Paxton', born:1955})CREATE(TomH)-[:ACTED_IN {roles:['Jim Lovell']}]->(Apollo13),(KevinB)-[:ACTED_IN {roles:['Jack Swigert']}]->(Apollo13),(EdH)-[:ACTED_IN {roles:['Gene Kranz']}]->(Apollo13),(BillPax)-[:ACTED_IN {roles:['Fred Haise']}]->(Apollo13),(GaryS)-[:ACTED_IN {roles:['Ken Mattingly']}]->(Apollo13),(RonH)-[:DIRECTED]->(Apollo13)CREATE (Twister:Movie {title:'Twister', released:1996, tagline:"Don't Breathe. Don't Look Back."})CREATE (PhilipH:Person {name:'Philip Seymour Hoffman', born:1967})CREATE (JanB:Person {name:'Jan de Bont', born:1943})CREATE(BillPax)-[:ACTED_IN {roles:['Bill Harding']}]->(Twister),(HelenH)-[:ACTED_IN {roles:['Dr. Jo Harding']}]->(Twister),(ZachG)-[:ACTED_IN {roles:['Eddie']}]->(Twister),(PhilipH)-[:ACTED_IN {roles:['Dustin "Dusty" Davis']}]->(Twister),(JanB)-[:DIRECTED]->(Twister)CREATE (CastAway:Movie {title:'Cast Away', released:2000, tagline:'At the edge of the world, his journey begins.'})CREATE (RobertZ:Person {name:'Robert Zemeckis', born:1951})CREATE(TomH)-[:ACTED_IN {roles:['Chuck Noland']}]->(CastAway),(HelenH)-[:ACTED_IN {roles:['Kelly Frears']}]->(CastAway),(RobertZ)-[:DIRECTED]->(CastAway)CREATE (OneFlewOvertheCuckoosNest:Movie {title:"One Flew Over the Cuckoo's Nest", released:1975, tagline:"If he's crazy, what does that make you?"})CREATE (MilosF:Person {name:'Milos Forman', born:1932})CREATE(JackN)-[:ACTED_IN {roles:['Randle McMurphy']}]->(OneFlewOvertheCuckoosNest),(DannyD)-[:ACTED_IN {roles:['Martini']}]->(OneFlewOvertheCuckoosNest),(MilosF)-[:DIRECTED]->(OneFlewOvertheCuckoosNest)CREATE (SomethingsGottaGive:Movie {title:"Something's Gotta Give", released:2003})CREATE (DianeK:Person {name:'Diane Keaton', born:1946})CREATE (NancyM:Person {name:'Nancy Meyers', born:1949})CREATE(JackN)-[:ACTED_IN {roles:['Harry Sanborn']}]->(SomethingsGottaGive),(DianeK)-[:ACTED_IN {roles:['Erica Barry']}]->(SomethingsGottaGive),(Keanu)-[:ACTED_IN {roles:['Julian Mercer']}]->(SomethingsGottaGive),(NancyM)-[:DIRECTED]->(SomethingsGottaGive),(NancyM)-[:PRODUCED]->(SomethingsGottaGive),(NancyM)-[:WROTE]->(SomethingsGottaGive)CREATE (BicentennialMan:Movie {title:'Bicentennial Man', released:1999, tagline:"One robot's 200 year journey to become an ordinary man."})CREATE (ChrisC:Person {name:'Chris Columbus', born:1958})CREATE(Robin)-[:ACTED_IN {roles:['Andrew Marin']}]->(BicentennialMan),(OliverP)-[:ACTED_IN {roles:['Rupert Burns']}]->(BicentennialMan),(ChrisC)-[:DIRECTED]->(BicentennialMan)CREATE (CharlieWilsonsWar:Movie {title:"Charlie Wilson's War", released:2007, tagline:"A stiff drink. A little mascara. A lot of nerve. Who said they couldn't bring down the Soviet empire."})CREATE (JuliaR:Person {name:'Julia Roberts', born:1967})CREATE(TomH)-[:ACTED_IN {roles:['Rep. Charlie Wilson']}]->(CharlieWilsonsWar),(JuliaR)-[:ACTED_IN {roles:['Joanne Herring']}]->(CharlieWilsonsWar),(PhilipH)-[:ACTED_IN {roles:['Gust Avrakotos']}]->(CharlieWilsonsWar),(MikeN)-[:DIRECTED]->(CharlieWilsonsWar)CREATE (ThePolarExpress:Movie {title:'The Polar Express', released:2004, tagline:'This Holiday Season... Believe'})CREATE(TomH)-[:ACTED_IN {roles:['Hero Boy', 'Father', 'Conductor', 'Hobo', 'Scrooge', 'Santa Claus']}]->(ThePolarExpress),(RobertZ)-[:DIRECTED]->(ThePolarExpress)CREATE (ALeagueofTheirOwn:Movie {title:'A League of Their Own', released:1992, tagline:'Once in a lifetime you get a chance to do something different.'})CREATE (Madonna:Person {name:'Madonna', born:1954})CREATE (GeenaD:Person {name:'Geena Davis', born:1956})CREATE (LoriP:Person {name:'Lori Petty', born:1963})CREATE (PennyM:Person {name:'Penny Marshall', born:1943})CREATE(TomH)-[:ACTED_IN {roles:['Jimmy Dugan']}]->(ALeagueofTheirOwn),(GeenaD)-[:ACTED_IN {roles:['Dottie Hinson']}]->(ALeagueofTheirOwn),(LoriP)-[:ACTED_IN {roles:['Kit Keller']}]->(ALeagueofTheirOwn),(RosieO)-[:ACTED_IN {roles:['Doris Murphy']}]->(ALeagueofTheirOwn),(Madonna)-[:ACTED_IN {roles:['"All the Way" Mae Mordabito']}]->(ALeagueofTheirOwn),(BillPax)-[:ACTED_IN {roles:['Bob Hinson']}]->(ALeagueofTheirOwn),(PennyM)-[:DIRECTED]->(ALeagueofTheirOwn)CREATE (PaulBlythe:Person {name:'Paul Blythe'})CREATE (AngelaScope:Person {name:'Angela Scope'})CREATE (JessicaThompson:Person {name:'Jessica Thompson'})CREATE (JamesThompson:Person {name:'James Thompson'})CREATE(JamesThompson)-[:FOLLOWS]->(JessicaThompson),(AngelaScope)-[:FOLLOWS]->(JessicaThompson),(PaulBlythe)-[:FOLLOWS]->(AngelaScope)CREATE(JessicaThompson)-[:REVIEWED {summary:'An amazing journey', rating:95}]->(CloudAtlas),(JessicaThompson)-[:REVIEWED {summary:'Silly, but fun', rating:65}]->(TheReplacements),(JamesThompson)-[:REVIEWED {summary:'The coolest football movie ever', rating:100}]->(TheReplacements),(AngelaScope)-[:REVIEWED {summary:'Pretty funny at times', rating:62}]->(TheReplacements),(JessicaThompson)-[:REVIEWED {summary:'Dark, but compelling', rating:85}]->(Unforgiven),(JessicaThompson)-[:REVIEWED {summary:"Slapstick redeemed only by the Robin Williams and Gene Hackman's stellar performances", rating:45}]->(TheBirdcage),(JessicaThompson)-[:REVIEWED {summary:'A solid romp', rating:68}]->(TheDaVinciCode),(JamesThompson)-[:REVIEWED {summary:'Fun, but a little far fetched', rating:65}]->(TheDaVinciCode),(JessicaThompson)-[:REVIEWED {summary:'You had me at Jerry', rating:92}]->(JerryMaguire)WITH TomH as aMATCH (a)-[:ACTED_IN]->(m)<-[:DIRECTED]-(d) RETURN a,m,d LIMIT 10;
5.断点调试cypher语句
在bolt模块的org.neo4j.fabric.bolt.BoltFabricDatabaseService类的executeQuery方法添加断点。(neo4j会间隔的执行系统查询,大家跳过即可)
在Desktop执行下述语句:
match(n) return n limit 10
进行相关调试:
我们执行的语句已经断下来了哦,到这里我们就完成了neo4j的调试了,下个章节我们将介绍其执行的流程。
四、感想
写文章有时是分享、有时是总结,但是如果要写好一篇文章需要投入的大量的精力和个人时间,并且你还看不到任何收益和回报,这也是为什么有些人写到后面基本就不写了,毕竟这个行为逆人性。有点吐槽了,不管怎么样,希望大家可以学到东西吧,文章本人还是会不定期的更新。
相关文章:
二、Neo4j源码研究系列 - 单步调试
二、Neo4j源码研究系列 - 单步调试 一、背景介绍 上一篇我们已经把了neo4j的源码准备以及打包流程完成了,本篇将讲解如何对neo4j进行单步调试。对于不了解如何编译打包neo4j的读者,请阅读《一、Neo4j源码研究系列 - 源代码准备》。 大纲: …...
基于Qt WebEngine 的Web仪器面板GUI程控技术
随着IIoT的发展,很多工业仪器也具备了远程管理的GUI。与早期使用串口进行命令交互不同,这些GUI可以直接在远程呈现数据。 作为希望对仪器、软件进行二次开发的小公司来说,会遇到GUI人工操作转自动化的需求。在无法通过串口等传统接口进行自动…...
海康摄像头使用RTSP
1.协议格式。海康威视IP摄像头rtsp协议地址如下:rtsp://[username]:[passwd][ip]:[port]/[codec]/[channel]/[subtype]/av_stream主码流:rtsp://admin:12345192.168.1.64:554/h264/ch1/main/av_streamrtsp://admin:12345192.168.1.64:554/MPEG-4/ch1/mai…...
编程语言分类
目录 ❤ 机器语言 机器语言的编程 ❤ 汇编语言 ❤ 高级语言(编程语言) 编译型 解释型 ❤ 动态语言和静态语言 ❤ 强类型定义语言和弱类型定义语言 ❤ 主流语言介绍 C语言 C java python JavaScript SQL PHP python从小白到总裁完整教程目录:https://blog…...
[nodejs开发] typescript引入js模块或文件
首先更改tsconfig.json 中的compilerOptions属性:"moduleResolution": "Node"假设有一个abc.js其内容如下:var Circle (function () {function Circle() {}Circle.prototype.draw function () {console.log("Cirlce is drawn…...
小帮软件机器人应用于通信集团财务数据填报、编制、稽核、银企对账
某大型通信集团是国有控股通信运营服务提供商,主要从事国内外通信设施服务业务、固定通信业务、移动通信业务、数据通信业务、网络接入业务、卫星国际专线业务和通信业务相关系统集成业务,管辖20多家子(分)公司、服务运营和支持网…...
37. CF-Weights Distributing
链接 这是一个比较经典的题目。容易想到求出两段路径重合的部分,然后贪心的放权值。那么跑三次最短路,枚举重合部分的端点即可。 正解没什么好说的。这题有趣的地方在于,如果数据比较弱,可能会把一些错误做法放过去。 一种错误…...
百丽时尚×优维科技×道客战略启动「云原生一体化项目」
3月7日,由百丽时尚集团(以下简称:百丽时尚)联合优维科技、道客共同举办的「云原生一体化项目启动会」在深圳百丽国际大厦圆满落幕,项目合作三方齐聚一堂,就云原生一体化建设战略方案达成合作共识࿰…...
小诺开源技术
小诺开源技术 文章目录小诺开源技术前言页面演示介绍文档学习建议登录地址下载地址前言 近期接触了小诺开源技术的一个前端框架,底层是蚂蚁框架,感觉很好用,不过需要稍微学习并适应一下,推荐给大家,本篇仅用于学习&am…...
AidLux AI应用案例悬赏选题 | 纺织品表面瑕疵检测
AidLux AI 应用案例悬赏征集活动 AidLux AI 应用案例悬赏征集活动是AidLux推出的AI应用案例项目合作模式,悬赏选题将会持续更新。目前上新的选题涉及泛边缘、机器人、工业检测、车载等领域,内容涵盖智慧零售、智慧社区、智慧交通、智慧农业、智能家居等…...
UE官方教程笔记02-实时渲染基础下
对官方教程视频[官方培训]02-实时渲染基础下 | 陈拓 Epic的笔记没听懂的地方就瞎写反射实时渲染中反射是一个非常有挑战的特性UE中有多种不同的方案,各有各的优势和缺点反射捕获屏幕空间反射平面反射LumenRT Reflection反射捕获在指定位置捕获一张Cube Map需要预计算…...
grep命令——在文件中搜索指定的文本模式
grep是英文词组“global search regular expression and print out the line”的缩写,意思是全局搜索正则表达式,并将结果输出。 通常将grep命令与正则表达式搭配使用,命令选项作为搜索过程中的补充或对输出结果的筛选,命令模式十…...
数据结构刷题(二十二):90子集II、491递增子序列、46全排列
1.子集II题目链接思路:这是一道标准的组合问题数组排序去重。依然是使用回溯。注意:去重代码只需要判断同一树层上是否有重复,同组合总和II(https://blog.csdn.net/xiaomingming99/article/details/129396344)解法&…...
AI+人类,实现高效网络安全
导语 聊天机器人和生成式人工智能(如 ChatGPT)突然成为主流让很多人感到担忧。很多人开始担忧,人工智能取代人的时代已经到来。 幸运的是,事实并非如此。 更有可能的情况是,人类将与 AI 合作创建工作角色的混合模型。…...
牛客小白月赛68【A-E】
文章目录A.Tokitsukaze and New Operation【模拟】B.Tokitsukaze and Order Food Delivery【模拟、特判】C.Tokitsukaze and Average of Substring【暴力、前缀】D.Tokitsukaze and Development Task【记忆化搜索】E.Tokitsukaze and Colorful Chessboard【预处理,二…...
WIFI P2P架构
WI-FI P2P定义架构3个组件组织结构技术标准P2P DiscoveryDevice Discovery(扫描)流程p2p probe 管理帧Group Formation(组网)GO Negotiation(GON)流程P2P Public Action管理帧Provision Discoveryÿ…...
架构师之中台思维_系统发展之路_结果和抽象之间平衡的艺术
父文章 如何成为一名架构师,架构师成长之路_golang架构师成长之路_个人渣记录仅为自己搜索用的博客-CSDN博客 任何系统的发展都是如此. 1. 业务增长 2. 烟囱增长 _ 结果优先 _ 太快去抽象抽象不好 3. 太多的烟囱, 3.1 抽象复用为平台 3.2 面对更多新的业务,提供不同的枚举值…...
23届非科班选手秋招转码指南
1.秋招情况介绍 1.1自我介绍 我是一名23届非科班转码选手,本硕均就读于某211院校机械专业,秋招共计拿下12份offer,包括大疆创新、海康威视、联发科技、理想汽车、中电28、阳光电源等各行业、各种性质企业的意向。主要的投递岗位为嵌入式软件…...
《传感器技术》考试学习笔记
文章目录一、选择题二、简答题1.什么是传感器?传感器的共性是哪些?2.差动变气隙式传感器电感传感器的灵敏度推导过程是什么(推导公式)?与单极性进行比较它们的优缺点是哪些?3.霍尔传感器如何进行微位移测量…...
第十五章 opengl之高级OpenGL(模板测试)
OpenGL模板测试模板函数物体轮廓模板测试 当片段着色器处理完一个片段后,模板测试就会开始执行。类似于深度测试,模板测试也可能会丢弃片段。被保留的片段会进入深度测试,可能会丢弃更多的片段。 模板测试是根据模板缓冲来进行的。一个模板缓…...
【C语言蓝桥杯每日一题】—— 单词分析
【C语言蓝桥杯每日一题】—— 单词分析😎前言🙌单词分析🙌总结撒花💞😎博客昵称:博客小梦 😊最喜欢的座右铭:全神贯注的上吧!!! 😊作者…...
Web2:Tomcat
二.Web2:Tomcat 1.Tomcat的配置 2.Tomcat的工作方式 3.Tomcat服务器的虚拟映射 4.Tomcat部署到IDEA中使用 二.Web2:Tomcat 1.Tomcat的配置 ①安装下载Tomcat 配置好JAVA_HOME启动时保证端口号8080不被占用 ②下载后的目录结构 bin 启动或关闭to…...
C++语法规则2(C++面向对象)
继承 面向对象程序设计中最重要的一个概念是继承。继承允许我们依据另一个类来定义一个类,这使得创建和维护一个应用程序变得更容易。这样做,也达到了重用代码功能和提高执行效率的效果。 当创建一个类时,您不需要重新编写新的数据成员和成…...
第八批国家药品集中采购-(附药品集采目录明细下载)
2023年3月2日,‘国家组织药品联合采购办公室’发出了《全国药品集中采购文件》,宣告了第八批国家组织药品集中采购工作正式开展,其公告中还包含三个附表分别为‘采购品种目录’、‘各地区首年约定采购量’、‘各采购品种首年约定采购量’&…...
政府工作报告连提9年科技创新 企业研发如何“又快又好”
今年的政府工作报告, “科技创新” 这一描述连续出现7次,这也是自2015年开始, “科技创新” 这一概念在全国“两会”政府工作报告中连续九年被提到。政府工作报告指出,科技政策要聚焦自立自强,完善新型举国体制&#x…...
GM8773C 是一款 1:2 DSI 桥接芯片,可实现 4 路进 8 路出转换器功能、视频分离器功能。
GM8773C 是一款 1:2 DSI 桥接芯片,可实现 4 路进 8 路出转换器功能、视频分离器功能。芯片内集成了一个 4 路单一链路的 MIPI DSI 接收器和 8 路双链路 MIPI DSI 发送器。 接 收 器 每 路 可 以 支 持 到 2.0Gbps/lane , 可 以 最 高 支 持 到…...
Java常用包名和说明
包名主要功能java.applet提供了创建applet需要的所有类java.awt.*提供了创建用户界面以及绘制和管理图形、图像的类java.beans.*提供了开发Java Beans需要的所有类java.io提供了通过数据流、对象序列以及文件系统实现的系统输入、输出java.lang.*Java编程语言的基本类库java.ma…...
dva01-初识
背景 React 本身只是一个 DOM 的抽象层,使用组件构建虚拟 DOM。如果开发大应用,还需要解决一个问题。 通信:React 只提供了一种传参手段,后续数据变化非常麻烦,无法适用于大应用。数据流:每次要更新数据&…...
信捷 XDH Ethercat A_WRITE指令
本指令修改指令轴的当前位置。 什么时候需要用本指令呢?换句话说,用本指令后,坐标原点修改了偏移了。如果在回原点后,往前走了一段距离x,如果是用绝对模式执行把位置修改成0,那么下一次开始每次做绝对运动A_MOVEA&…...
Spring Cloud ( Eureka集群的搭建 )
操作步骤: 添加主机映射创建Eureka服务 导入依赖编写启动类编写yml复制服务实例测试一、添加主机映射 以 Windows系统为例,如果要构建集群,需要修改 hosts 文件,为其添加主机名的映射。 打开C:\Windows\System32\drivers\etc\h…...
张家港做网站/百度官网网站首页
java缓冲流本身不具IO功能,只是在别的流上加上缓冲提高效率,像是为别的流装上一种包装。当对文件或其他目标频繁读写或操作效率低,效能差。这时使用缓冲流能够更高效的读写信息。因为缓冲流先将数据缓存起来,然后一起写入或读取出…...
opkg 做网站的包叫什么名字/广州seo优化排名推广
前段时间开始了与博通公司(Broadcom Corporation) 的 EDI对接项目。帮助客户与博通建立EDI连接。今天开始准备在这里记录下实施过程中的一些小心得。 开始之前我们先来科普一下EDI吧。 什么是EDI呢? 即 Electronic Data Interchange 电子数据交换,可以实现两个企业…...
特性设计的网站/长沙弧度seo
现在,电脑对大家是越来越重要了,为什么会有这样的说法呢?因为不论是在生活、还是工作中,我们都离不开对电脑的使用。要是不经常使用那还行,可要是长时间在电脑前进行办公的话,那么大家都会希望在用的过程中…...
做导购网站赚钱吗/长春网站建设开发
xiaoxin juju needs help 题意:给你一个字符串,求打乱字符后,有多少种回文串。 (题于文末) 知识点: n个元素,其中a1,a2,,an互不相同&am…...
想建立什么网站吗/自制网页
初次接触C#的服务器端正则表达式相关验证 后续将会在这个基础上 将这个C#的服务器端正则表达式相关内容 集结在这里 入门示例如下 //验证 string strFileName "S_123456_200701.zip" System.Text.RegularExpressions.Regex strReg new …...
手机膜+东莞网站建设/中国刚刚发生8件大事
今天是编辑周刊的日子。所以文章很多和周刊一样。微信不能发链接,点了也木有用,所以请记得“阅读原文”~ 发个动图娱乐下: 使用 SVG 动画制作游戏 使用 GASP 补间动画加 Flexbox、SVG 技术实现一款酷炫狂拽的动画。 Node 模块加载层级优化 No…...