幼儿饰品瑜伽美体用品微软
投稿投诉
微软创意
爱情通信
用品婚姻
爱好看病
美体软件
影音星座
瑜伽周边
星座办公
饰品塑形
搞笑减肥
幼儿两性
智家潮品

如何阅读Spring源码,阅读前需要做哪些准备

  环境准备下载源码
  下载地址:https:github。comspringprojectsspringframeworktreev6。0。3
  选择版本:
  选择spring源码版本
  选择压缩包下载,直接通过gitclonehttp地址下载比较慢,直接下载压缩包。
  下载spring源码zip包
  解压源码压缩包
  spring源码目录结构
  查看gradle对应版本,查看目录gradlewrapper。properties文件(gradlewrappergradlewrapper。properties)
  修改wrapper。properties配置文件
  查看当前spring源码版本,所依赖的gradle版本
  spring源码依赖的gradle环境准备
  Java环境:jdk17
  Gradle环境:gradle7。6bin。zip
  下载gradle,下载地址:https:gradle。orgreleases,选择上面spring框架依赖的版本
  下载gradle
  解压gradle
  解压后的gradle
  配置环境变量,执行命令vim。bashprofile
  环境变量中添加gradle配置
  使配置生效,执行:source。bashprofile
  查看gradle版本
  查看gradle版本
  修改镜像源
  修改gradle镜像源
  在build。gradle中添加阿里云镜像。
  修改成阿里云镜像源
  修改settings。gradle中的阿里云镜像
  修改setting。gradle
  修改settings。gradle阿里云仓库镜像配置
  修改成阿里镜像源maven{urlhttps:maven。aliyun。comrepositorypublic}阿里云镜像仓库编译源码
  在项目根目录,进行预编译,。gradlew:springoxm:compileTestJava
  编辑源码
  编译中,编译需要一段时间。
  源码编译中
  编译完成
  源码编译完成需要注意的配置preferencesgradle配置
  修改idea中gradle配置Projectstructureproject
  修改idea中Projectstructure配置ProjectstructureModules
  修改idea中Projectstructure配置特别需要注意的配置文件根目录settings。gradlepluginManagement{repositories{maven{urlhttps:maven。aliyun。comrepositorygradleplugin}maven{urlhttps:maven。aliyun。comrepositoryspringplugin}maven{urlhttps:maven。aliyun。comrepositorypublic}阿里云镜像仓库mavenCentral()gradlePluginPortal()maven{urlhttps:repo。spring。iorelease}}}plugins{idcom。gradle。enterpriseversion3。11。1idio。spring。ge。conventionsversion0。0。7}includespringaopincludespringaspectsincludespringbeansincludespringcontextincludespringcontextindexerincludespringcontextsupportincludespringcoreincludespringcoretestincludespringexpressionincludespringinstrumentincludespringjclincludespringjdbcincludespringjmsincludespringmessagingincludespringormincludespringoxmincludespringr2dbcincludespringtestincludespringtxincludespringwebincludespringwebfluxincludespringwebmvcincludespringwebsocketincludeframeworkbomincludeframeworkdocsincludeframeworkplatformincludeintegrationtestsrootProject。namespringrootProject。children。each{projectproject。buildFileName{project。name}。gradle}settings。gradle。projectsLoaded{gradleEnterprise{buildScan{FilebuildDirsettings。gradle。rootProject。getBuildDir()buildDir。mkdirs()newFile(buildDir,buildscanuri。txt)。text(buildscannotgenerated)buildScanPublished{scanif(buildDir。exists()){newFile(buildDir,buildscanuri。txt)。text{scan。buildScanUri}}}}}}includespringrenjie001includespringrenjie002根目录下build。gradleplugins{idio。spring。nohttpversion0。0。10idio。freefair。aspectjversion6。5。0。3applyfalsekotlinVersionismanagedingradle。propertiesidorg。jetbrains。kotlin。plugin。serializationversion{kotlinVersion}applyfalseidorg。jetbrains。dokkaversion1。7。20idorg。asciidoctor。jvm。convertversion3。3。2applyfalseidorg。asciidoctor。jvm。pdfversion3。3。2applyfalseidorg。unbrokendome。xjcversion2。0。0applyfalseidcom。github。benmanes。versionsversion0。42。0idcom。github。johnrengelman。shadowversion7。1。2applyfalseidde。undercouch。downloadversion5。1。0idme。champeau。jmhversion0。6。8applyfalse}ext{moduleProjectssubprojects。findAll{it。name。startsWith(spring)}javaProjectssubprojectsproject(:frameworkbom)project(:frameworkplatform)}configure(allprojects){projectrepositories{maven{urlhttps:maven。aliyun。comnexuscontentgroupspublic}maven{urlhttps:maven。aliyun。comrepositorypublic}maven{urlhttps:maven。aliyun。comrepositorygoogle}maven{urlhttps:maven。aliyun。comrepositoryspring}maven{urlhttps:maven。aliyun。comnexuscontentrepositoriesjcenter}}configurations。all{resolutionStrategy{cacheChangingModulesFor0,secondscacheDynamicVersionsFor0,seconds}}}configure(〔rootProject〕javaProjects){projectgrouporg。springframeworkapplyplugin:javaapplyplugin:javatestfixturesapplyplugin:checkstyleapplyplugin:org。springframework。build。conventionsapplyfrom:{rootDir}gradletoolchains。gradleapplyfrom:{rootDir}gradleide。gradleconfigurations{dependencyManagement{canBeConsumedfalsecanBeResolvedfalsevisiblefalse}matching{it。name。endsWith(Classpath)}。all{it。extendsFrom(dependencyManagement)}}test{useJUnitPlatform()include(〔Tests。class,Test。class〕)systemProperty(java。awt。headless,true)systemProperty(testGroups,project。properties。get(testGroups))systemProperty(io。netty。leakDetection。level,paranoid)systemProperty(io。netty5。leakDetectionLevel,paranoid)systemProperty(io。netty5。leakDetection。targetRecords,32)systemProperty(io。netty5。buffer。lifecycleTracingEnabled,true)systemProperty(io。netty5。buffer。leakDetectionEnabled,true)jvmArgs(〔addopensjava。basejava。langALLUNNAMED,addopensjava。basejava。utilALLUNNAMED〕)}checkstyle{toolVersion10。5。0configDirectory。set(rootProject。file(srccheckstyle))}tasks。named(checkstyleMain)。configure{maxHeapSize1g}tasks。named(checkstyleTest)。configure{maxHeapSize1g}dependencies{dependencyManagement(enforcedPlatform(dependencies。project(path::frameworkplatform)))testImplementation(org。junit。jupiter:junitjupiterapi)testImplementation(org。junit。jupiter:junitjupiterparams)testImplementation(org。junit。platform:junitplatformsuiteapi)testImplementation(org。mockito:mockitocore)testImplementation(org。mockito:mockitojunitjupiter)testImplementation(io。mockk:mockk)testImplementation(org。assertj:assertjcore)PullinthelatestJUnit5LauncherAPItoensurepropersupportinIDEs。testRuntimeOnly(org。junit。jupiter:junitjupiterengine)testRuntimeOnly(org。junit。platform:junitplatformlauncher)testRuntimeOnly(org。junit。platform:junitplatformsuiteengine)testRuntimeOnly(org。apache。logging。log4j:log4jcore)testRuntimeOnly(org。apache。logging。log4j:log4jjul)testRuntimeOnly(org。apache。logging。log4j:log4jslf4jimpl)JSR305onlyusedfornonrequiredmetaannotationscompileOnly(com。google。code。findbugs:jsr305)testCompileOnly(com。google。code。findbugs:jsr305)checkstyle(io。spring。javaformat:springjavaformatcheckstyle:0。0。31)}ext。javadocLinks〔https:docs。oracle。comenjavajavase17docsapi,https:jakarta。eespecificationsplatform9apidocs,https:docs。oracle。comcdE1322201wlsdocs90javadocs,CommonJhttps:www。ibm。comdocsapiv1contentSSEQTP8。5。5com。ibm。websphere。javadoc。docwebapidocs,https:docs。jboss。orgjbossasjavadoc4。0。5connector,https:docs。jboss。orgjbossasjavadoc7。1。2。Final,https:www。eclipse。orgaspectjdocreleasedaspectj5rtapi,https:www。quartzscheduler。orgapi2。3。0,https:fasterxml。github。iojacksoncorejavadoc2。10,https:fasterxml。github。iojacksondatabindjavadoc2。10,https:fasterxml。github。iojacksondataformatxmljavadoc2。10,https:hc。apache。orghttpcomponentsclient5。2。xcurrenthttpclient5apidocs,https:projectreactor。iodocstestreleaseapi,https:junit。orgjunit4javadoc4。13。2,TODOUncommentlinktoJUnit5docsoncewehavesortedoutthefollowingwarninginthebuild。warning:Thecodebeingdocumentedusespackagesintheunnamedmodule,butthepackagesdefinedinhttps:junit。orgjunit5docs5。9。1apiareinnamedmodules。https:junit。orgjunit5docs5。9。1api,https:www。reactivestreams。orgreactivestreams1。0。3javadoc,https:javadoc。iostaticio。rsocketrsocketcore1。1。1,https:r2dbc。iospec1。0。0。RELEASEapi,TheexternalJavadoclinkforJSR305mustcomelasttoensurethattypesfromJSR250(suchasPostConstruct)arestillsupported。ThisisduetothefactthatJSR250andJSR305bothdefinetypesinjavax。annotation,whichresultsinasplitpackage,andthejavadoctooldoesnotsupportsplitpackagesacrossmultipleexternalJavadocsites。https:www。javadoc。iodoccom。google。code。findbugsjsr3053。0。2〕asString〔〕}configure(moduleProjects){projectapplyfrom:{rootDir}gradlespringmodule。gradle}configure(rootProject){descriptionSpringFrameworkapplyplugin:io。spring。nohttpapplyplugin:org。springframework。build。apidiffnohttp{source。excludetestoutputallowlistFileproject。file(srcnohttpallowlist。lines)defrootPathfile(rootDir)。toPath()defprojectDirsallprojects。collect{it。projectDir}{rootDir}buildSrcprojectDirs。forEach{dir〔bin,build,out,。settings〕。collect{rootPath。relativize(newFile(dir,it)。toPath())}。forEach{source。excludeit}〔。classpath,。project〕。collect{rootPath。relativize(newFile(dir,it)。toPath())}。forEach{source。excludeit}}}tasks。named(checkstyleNohttp)。configure{maxHeapSize1g}}gradlewrappergradlewrapper。propertiesdistributionBaseGRADLEUSERHOMEdistributionPathwrapperdistsdistributionUrlfile:UsersxxxDownloadsgradle7。6bin。zipnetworkTimeout10000zipStoreBaseGRADLEUSERHOMEzipStorePathwrapperdists阅读源码新建模块
  新建测试模块添加配置
  添加本地spring源码依赖plugins{idjava}grouporg。springframeworkversion6。0。3repositories{mavenCentral()}dependencies{testImplementationorg。junit。jupiter:junitjupiterapi:5。8。1testRuntimeOnlyorg。junit。jupiter:junitjupiterengine:5。8。1api(project(:springcontext))api(project(:springinstrument))}test{useJUnitPlatform()}文件目录
  项目结构添加类文件packagecom。renjie;importorg。springframework。context。ApplicationContext;importorg。springframework。context。support。ClassPathXmlApplicationContext;Author:renjiecreateTime:2022年12月29日10:58:40publicclassMyApplication{publicstaticvoidmain(String〔〕args){ApplicationContextcontextnewClassPathXmlApplicationContext(springbean。xml);Useruser(User)context。getBean(user);System。out。println(user。toString());}}packagecom。renjie;Author:renjiecreateTime:2022年12月29日11:02:04publicclassUser{privateStringname;privateStringage;publicStringgetName(){returnname;}publicvoidsetName(Stringname){this。namename;}publicStringgetAge(){returnage;}publicvoidsetAge(Stringage){this。ageage;}OverridepublicStringtoString(){returnUser{namename,ageage};}}添加配置文件lt;?xmlversion1。0encodingUTF8?beansxmlnshttp:www。springframework。orgschemabeansxmlns:xsihttp:www。w3。org2001XMLSchemainstancexsi:schemaLocationhttp:www。springframework。orgschemabeanshttp:www。springframework。orgschemabeansspringbeans。xsdbeaniduserclasscom。renjie。Userpropertynameagevalue22propertynamenamevalue小明beanbeans运行结果
  新模块运行结果编辑遇到的错误问题一:版本不存在StartingaGradleDaemon(subsequentbuildswillbefaster)FAILURE:Buildfailedwithanexception。Where:SettingsfileUsersxxxxDownloadsspringframework6。0。3settings。gradleline:12Whatwentwrong:Plugin〔id:io。spring。ge。conventions,version:0。0。11〕wasnotfoundinanyofthefollowingsources:GradleCorePlugins(pluginisnotinorg。gradlenamespace)PluginRepositories(couldnotresolvepluginartifactio。spring。ge。conventions:io。spring。ge。conventions。gradle。plugin:0。0。11)Searchedinthefollowingrepositories:maven(https:maven。aliyun。comrepositorypublic)MavenRepoGradleCentralPluginRepositoryTry:Runwithstacktraceoptiontogetthestacktrace。Runwithinfoordebugoptiontogetmorelogoutput。Runwithscantogetfullinsights。Getmorehelpathttps:help。gradle。orgBUILDFAILEDin38s
  io。spring。ge。conventions的0。0。11版本并不存在,修改成0。0。7
  修改版本
  修改版本问题二:代码未上传代码仓库fatal:notagitrepository(oranyoftheparentdirectories):。gitTask:buildSrc:compileJavaFAILEDUsersxxxDownloadsspringframework6。0。3buildSrcsrcmainjavaorgspringframeworkbuildKotlinConventions。java:44:错误:找不到符号freeCompilerArgs。addAll(List。of(Xsuppressversionwarnings,Xjsr305strict,optinkotlin。RequiresOptIn));符号:方法of(java。lang。String,java。lang。String,java。lang。String)位置:接口java。util。List1个错误FAILURE:Buildfailedwithanexception。Whatwentwrong:Executionfailedfortask:buildSrc:compileJava。Compilationfailed;seethecompilererroroutputfordetails。Try:Runwithstacktraceoptiontogetthestacktrace。Runwithinfoordebugoptiontogetmorelogoutput。Getmorehelpathttps:help。gradle。orgBUILDFAILEDin2s1actionabletask:1executedBuildscanbackgroundactionfailed。org。gradle。process。internal。ExecException:Processcommandgitfinishedwithnonzeroexitvalue128atorg。gradle。process。internal。DefaultExecHandleExecResultImpl。assertNormalExitValue(DefaultExecHandle。java:415)atorg。gradle。process。internal。DefaultExecAction。execute(DefaultExecAction。java:38)atorg。gradle。process。internal。DefaultExecActionFactory。exec(DefaultExecActionFactory。java:202)atio。spring。ge。conventions。gradle。WorkingDirectoryProcessOperations。exec(WorkingDirectoryProcessOperations。java:45)atio。spring。ge。conventions。gradle。ProcessOperationsProcessRunner。run(ProcessOperationsProcessRunner。java:41)atio。spring。ge。conventions。core。BuildScanConventions。run(BuildScanConventions。java:166)atio。spring。ge。conventions。core。BuildScanConventions。addGitMetadata(BuildScanConventions。java:113)atio。spring。ge。conventions。gradle。GradleConfigurableBuildScan。lambdabackground0(GradleConfigurableBuildScan。java:104)atcom。gradle。enterprise。gradleplugin。internal。extension。a4。run(SourceFile:174)atjava。util。concurrent。ExecutorsRunnableAdapter。call(Executors。java:511)atjava。util。concurrent。FutureTask。run(FutureTask。java:266)atjava。util。concurrent。ThreadPoolExecutor。runWorker(ThreadPoolExecutor。java:1149)atjava。util。concurrent。ThreadPoolExecutorWorker。run(ThreadPoolExecutor。java:624)atjava。lang。Thread。run(Thread。java:748)Abuildscanwasnotpublishedasyouhavenotauthenticatedwithserverge。spring。io。Formoreinformation,pleaseseehttps:gradle。comhelpgradleauthenticatingwithgradleenterprise。
  异常一:
  org。gradle。process。internal。ExecException:Processcommandgitfinishedwithnonzeroexitvalue128,错误是由于下载下来的源代码没有放到git仓库中,将代码放到在即的git仓库就行。
  异常二:
  Abuildscanwasnotpublishedasyouhavenotauthenticatedwithserverge。spring。io。不做身份验证,注释对应包
  注释问题三:jdk版本不一致,spring6。0以上需要jdk版本为17
  添加本地jdk17版本的jdk
  buildKotlinConventions。java:44:错误:找不到符号
  参考:https:www。cnblogs。comhaoxianruip16975079。html
  问题三:StartingaGradleDaemon,1incompatibleDaemoncouldnotbereused,usestatusfordetailsFAILURE:Buildfailedwithanexception。Whatwentwrong:Couldnotdeterminethedependenciesoftask:springcore:javapoetRepackJar。Couldnotresolvealldependenciesforconfiguration:springcore:javapoet。Usinginsecureprotocolswithrepositories,withoutexplicitoptin,isunsupported。SwitchMavenrepositorymaven3(http:repo。springsource。orgpluginsrelease)toredirecttoasecureprotocol(likeHTTPS)orallowinsecureprotocols。Seehttps:docs。gradle。org7。6dslorg。gradle。api。artifacts。repositories。UrlArtifactRepository。htmlorg。gradle。api。artifacts。repositories。UrlArtifactRepository:allowInsecureProtocolformoredetails。Try:Runwithstacktraceoptiontogetthestacktrace。Runwithinfoordebugoptiontogetmorelogoutput。Getmorehelpathttps:help。gradle。orgBUILDFAILEDin24s6actionabletasks:1executed,5uptodate
  配置gradle的zip
  问题四:Gradle下载的依赖包位置
  Mac系统默认下载到:
  Users(用户名)。gradlecachesmodules2files2。1或。gradlecachesmodules2files2。1

图了解简笔画人物的方法轻轻松松助你学绘画简笔画从简单的点、线学起,一步一步深入,渐渐掌握学画构图技巧,为将来的美术学习打基础,同时还能起到愉悦身心的功能,培养孩子丰富的想像力,锻炼眼、脑、手的协调力。提起简笔画……图许仙白娘子的爱情故事流传千年感人至深白娘子与许仙的爱情故事一直在民间流传,至今已经有千年之久。白素贞为了许仙,不惜触犯天条,水漫金山。肯定也有很多朋友因为棒打鸳鸯的法海而气得牙痒痒!想必大家一定都听过白娘子……从立夏到三伏天,晨起喝这碗汤,大补阳气祛寒湿立夏到了,很多朋友经过一个冬天、一个春天,体内积聚的病气会比较多。特别是长年坐办公室的,不仅仅是冬天、春天留下了一身的寒湿,还有去年夏天吹空调留下来的寒湿更重。其实夏天是……医院叫号显示屏走红,家长起名太任性,网友脑袋被门夹了吧时代在进步,如今的家长也很追赶潮流,对于网络词汇,可能比学生知道的还要多,若这样能拉近与学生之间的距离,倒也是件不错的事,但有利也有弊,若家长的思想过于开放,恐怕会给学生带来困……图历史悠久的汉服文化找到适合你自己的那套服饰汉服是古代中国服饰的统称,中国有几千年的历史了,每个朝代都有不同风格样式的服饰,可以看出汉服的种类繁多,汉服因此也形成了一种文化。让小编带大家去了解一下吧!人们对汉服二字……平安扣适合什么人戴nbsp了解它美好的寓意平安是每个人心底的心愿,因此,寄托了如此深意的平安扣就显得弥足珍贵。所以饰品中就出现了平安扣这个东西了。每一个人佩戴平安扣的寓意就是不一样的。平安扣是很普通的饰品,款式简……图DIY达人手把手教你马克杯制作你也能做出好看的创意礼品杯子在我们的日常生活中必不可少。而这其中的马克杯早已经不单单是解决人们喝水的功能了,它已经变成彰显个性的物品。如果能有一个自己参与创作的马克杯,那一定很酷。马克杯已经成为……python从入门到出门,我就走了一步1hr理想很美好,想着学一下python,搭建一个网站。第一步安装,之后我就出门了,因为安装也没有搞定。沮丧中,大神们,快来帮帮我,看看问题出在哪里了。电脑是mac……湖南RCEP脉动东边长沙西边新晃同时大动作RCEP的脉动,贯穿湖南东西。4月14日,首届湖南(怀化)RCEP经贸博览会新闻发布会在长沙举行。同一时刻,湖南最西边的新晃侗族自治县同频共振,正式启动怀化市首个县……新版iOS翻车怎么办?苹果堵住降级退路,网友学学小米11苹果手机现在的体验真是糟糕,系统存在问题不允许用户降级,再一次遭到广大网友吐槽也在情理之中。自从升级iOS16。4。1版本以来,先后大规模出现天气应用崩溃、WiFi无法使用、电……图多才多艺的白居易的诗有哪些让你成为一个饱读诗书的人白居易也算是历史上比较有名的诗人,他是新乐府诗的倡导者之一,对后来的古文运动也有一定的贡献,他的诗风格体裁多样。今天就让小编带大家去品读白居易的诗。白居易的诗大都很通俗易……手镯应该戴在哪只手上nbsp从这几个角度解析一下手镯是很多女性都非常喜欢的饰品,一般名贵材料制作的有玉、金的和银的等多种。不管是什么材质制作戴在腕间都能彰显一种时尚和多金。那么手镯应该戴在哪只手上呢?不知道大家都喜欢什……
人到中年进入不惑之年,看到这个为我量身定作的题目,回眸渐行渐远的已逝青春,心绪涌动,久久难以释怀。曾几何时,我也年轻过,也曾盲目地意气风发过,料想今生不当将军省长,当个局长乡长还……塞尔比颜丙涛将比丁俊晖早拿世界冠军,沉稳决定了他是中国之星塞尔比:颜丙涛肯定比丁俊晖更早拿世界冠军,他更适合长局制比赛,他的沉稳风格决定了他才是中国斯诺克的未来之星。中国虎颜丙涛自2016年转入职业以来已经斩获了加里大师赛冠军和……基于springboot的支持http接口dubbo接口的T一、背景由于大多数公司都是使用Java作为后端开发语言,因此为了更好的与研发的框架对接、测试,掌握一套Java的自动化测试框架也逐渐成为测试人员的必修课。同时随着现……为什么一到秋冬季节,皮肤就容易干痒?最近天气干燥,或许大家都感受到了皮肤紧绷、干痒、脱屑等问题,老年人、婴幼儿以及长时间面对电脑辐射的办公族等群体在秋冬交替之际皮肤更为敏感,而且越用手去抓挠干痒的症状越强烈,严重……天猫双11菜鸟驿站加码无人配送,小蛮驴增至700台覆盖400我们宿舍是每天抢约小蛮驴,直接给送到楼下,特别是一些比较重的包裹,就很方便。贵州大学的何同学介绍,自己住的宿舍楼离菜鸟驿站1公里远,日常收快递基本靠无人车。学校里的小蛮驴从早送……盘点C罗最漂亮的前女友,最终分手的理由让人唏嘘曾经力压贝克汉姆夫妻伊琳娜谢克和克里斯蒂亚诺罗纳尔多,他们是曾经多么有吸引力的情侣。他们甚至被评为2014年最炙手可热的足球情侣,使大卫贝克汉姆和维多利亚贝克汉姆位居第二……执行过程中经调查得知转移财产的情况,向债务人发送的催告通知书催告通知书耍赖基金管理(北京)有限公司::贵公司系河南有债文旅产业发展有限公司(以下简称:有债公司)的发起人,有债公司注册成立于101年月12日,注册资本为亿元,贵……几块钱一瓶的维生素B2,却是治疗4种病的良药?维生素是一个大家族,常见的有维生素A,维生素C,维生素E,维生素B1,维生素B2,因为现代人饮食结构的变化,很多人出现了维生素B2摄入不足的现象。人体无法合成维生素b2,……拓普集团在宁波前湾新区拿地,建设新能源汽车部件智慧工厂拓普集团10月12日公告,2022年10月11日,宁波拓普集团股份有限公司全资子公司拓普滑板底盘(宁波)有限公司按照法定程序参与宁波前湾新区二宗国有建设用地使用权的挂牌出让竞拍……10月14号今日黄金CPI高烧不退,黄金崩盘暴跌超40美金北京时间周四(10月14日)亚市早盘,美元指数交投于112。5附近,黄金透露出下行的风险,一路回吐涨幅,目前在1660美元下方盘整,报价1659美元。周四美国公布的强于预期的C……清末时期的云南昆明,官宦人家子女成群,吴三桂的大刀霸气出镜地处我国西南地区的云南昆明,四季如春,鲜花常开,故有春城之美名。昆明是一座拥有2200多年建城史的古代城市,因其漫长的历史和深厚的文化底蕴,跻身国家第一批历史文化名城的行列。……布里斯班,要凉了?CoreLogic的房屋价值指数显示,布里斯班的房价在10月份下跌了2,跌幅超过任何其他首府城市,创下有记录以来最大的月度跌幅!从加息潮中的避风港,几乎一夜之间成为……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网