当前位置: 首页 > news >正文

做气球装饰可以上哪些网站中小企业建网站多少钱

做气球装饰可以上哪些网站,中小企业建网站多少钱,易联网站制作,四川省住房城乡建设厅1#xff0c;Maven Maven是一个非常优秀的项目管理工具#xff0c;采用一种“约定优于配置#xff08;CoC#xff09;”的策略来管理项目。使用Maven不仅可以把源代码构建成可发布的项目#xff08;包括编译、打包、测试和分发#xff09;#xff0c;还可以生成报告、生…1Maven Maven是一个非常优秀的项目管理工具采用一种“约定优于配置CoC”的策略来管理项目。使用Maven不仅可以把源代码构建成可发布的项目包括编译、打包、测试和分发还可以生成报告、生成Web站点等。 1.1下载和安装Maven 1登录Apache官网上个的Maven站点Maven – Download Apache Maven下载Maven最新版本。 ​​2配置Maven的环境变量 JAVA_HOME该环境变量应指向JDK安装路径。M2_HOME该环境变量应指向Maven安装路径即压缩包解压目录。 ​将%M2_HOME%\bin变量添加到Path下。 3检验是否安装成功在cmd中输入 mvn -v。  1.2设置Maven 设置Maven行为有两种方式 全局方式通过Maven安装目录下的conf/settings.xml文件进行设置。当前用户方式通过用户Home目录的.m2\目录下的settings.xml文件进行设置。 两种行为方式只是起作用的范围不同他们都使用setting.xml作为配置文件而且这两种方式中setting.xml文件允许定义的元素也是相同的。 通常来说Maven允许设置如下参数 localRepository该参数通过localRepository.../元素设置该元素的内容是一个路径字符串该路径用于设置Maven的本地资源库路径。如果用户不设置该参数Maven本地资源库默认保存在用户Home目录的.m2/repository路径下。建议设置到其他路径下。Maven构建项目所用的插件、第三方依赖库都被集中放在本地资源库中interactiveMode该参数通过interactiveMode.../元素设置。改参数设置Maven是否处于交互模式——如果将Maven设为交互模式每当Maven需要用户输入时Maven都会提示用户输入。如果将该参数设置为false那么Maven将不会提示用户输入而是“智能”地使用默认值。offline该参数Maven是否处于离线状态。如果将该参数设置为false每当Maven找不到插件、依赖库时Maven总会尝试从网络上下载。proxies该参数用于为Maven设置代理服务器。该参数可包含多个proxy.../每个proxy.../设置一个代理服务器包括代理服务器的ID、协议、代理服务器地址、代理服务器端口、用户名、密码等信息Maven可通过代理服务器访问网络。mirrors该参数用于设置一系列Maven远程资源库的镜像。有时候连接不上Maven的国外资源库时可连接国内资源库。 mirrorsmirroridalimaven/idmirrorOfcentral/mirrorOfnamealiyun maven/nameurlhttp://maven.aliyun.com/nexus/content/repositories/central//url/mirror /mirrors 1.3pom.xml pom.xml文件被称为项目对象模型描述文件Maven使用项目对象模型的方式来管理项目。POM用于描述该项目是什么类型的、该项目的名称是什么、该项目的构建能否自定义Maven使用pom.xml文件来描述项目对象模型。因此pom.xml并不是简单的生成文件而是项目对象模型描述文件。 只要将项目的源文件按照Maven要求的规范组织并提供pom.xml文件即使pom.xml只包含极少量的信息开发者也依然可以使用Maven来编译项目、运行程序甚至可以运行测试用例、打包项目这是因为Maven采用了“约定优于配置”的原则根据此原则Maven的主要约定有如下几条 源代码应该位于${basedir}/src/main/java路径下。资源文件应该位于${basedir}/src/main/resources路径下。测试代码应该位于${basedir}/src/test路径下。编译生成的class文件应该位于${basedir}/target/classes路径下。 Maven的强大很大程度来自于它的“约定”Maven预定义了一个固定生命周期以及一组用于构建和装配软件的通用插件。如果开发者完全遵循这些约定只需要将源代码放到正确的目录下Maven即可处理剩下的事情。 POM文件的元素Maven使用pom.xml文件来描述项目对象模型因此pom.xml文件可以包含大量元素用于描述该项目。pom.xml文件包含如下元素 dependencies../该元素用于定义依赖关系。该元素可以包含0~N个dependency.../子元素每个dependency.../子元素定义一个依赖关系。dependcyManagement.../该元素用于定义依赖管理。build.../该元素用于定义构建信息。reporting.../该元素用于定义站点报告的相关信息。licenses.../该元素用于定义该项目的License信息。organization.../该元素指定该项目所属的组织信息。developers.../该元素用于配置该项目的开发者信息。contributors.../该元素用于配置该项目的贡献者信息。issueManagement.../该元素用于定义该项目的bug跟踪系统。mailingLists.../该元素用于定义该项目的邮件列表。scm.../该元素指定该项目源代码管理工具如CVSSVN等。repositories.../该元素用于定义远程资源仓库的位置。pluginRepositorie.../该元素用于定义插件资源库的位置。distributionManagement.../该元素用于部署管理。profiles.../该元素指定根据环境调整构建配置。 1.4Maven的生命周期 生命周期核心阶段描述clean生命周期pre-clean在构建之前执行预清理。clean执行清理执行该命令会删除项目路径下的target文件但是不会删除本地的maven仓库已经生成的jar文件。post-clean最后清理default生命周期compile编译项目只编译选定的目标不管之前是否已经编译过会在你的项目路径下生成一个target目录在该目录中包含一个classes文件夹里面全是生成的class文件及字节码文件。test单元测试package 项目打包完成compile、test、打包功能但没有把打好的可执行jar包war包或其它形式的包布署到本地maven仓库和远程maven私服仓库。 实际效果这个命令会在你的项目路径下一个target目录并且拥有compile命令的功能进行编译同时会在target目录下生成项目的jar/war文件。 install 安装到本地仓库compile、test、打包功能同时把打好的可执行jar包war包或其它形式的包布署到本地maven仓库但没有布署到远程maven私服仓库。 实际效果该命令包含了package命令功能不但会在项目路径下生成class文件和jar包同时会在你的本地maven仓库生成jar文件供其他项目使用如果没有设置过maven本地仓库一般在用户/.m2目录下。如果a项目依赖于b项目那么install b项目时会在本地仓库同时生成pom文件和jar文件解决了上面打包package出错的问题。 deploy部署到远程仓库compile、test、打包功能同时把打好的可执行jar包war包或其它形式的包布署到本地maven仓库和远程maven私服仓库site生命周期pre-site生成站点之前做验证site生成站点post-site生成站点之后做验证site-deploy发布站点到远程服务器 package install如果a项目依赖于b项目打包b项目时只会打包到b项目下target下编译a项目时就会报错因为找不到所依赖的b项目说明a项目在本地仓库是没有找到它所依赖的b项目这时就用到install命令了。 build compile Compile只编译选定的目标不管之前是否已经编译过。Build是对整个工程进行彻底的重新编译而不管是否已经编译过。Build过程往往会生成发布包这个具体要看对IDE的配置了Build在实际中应用很少因为开发时候基本上不用发布生产时候一般都用ANT等工具来发布。Build因为要全部编译还要执行打包等额外工 作因此时间较长。 打包过程 cleanpackage如果报错很可能就是jar依赖的问题一般此问题都出现在第一次打包的情况直接使用下面方法mvn clean install -Dmaven.test.skiptrue -T 4跳过测试执行。 1.5其他概念 Maven坐标 dependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.11/versionscopetest/scope /dependency POM需要为项目提供一个唯一标识这个标识就被称为Maven坐标。Maven坐标由如下4个元素组成 groupId该项目的开发者的标识名。artifactId执行项目名。packaging指定项目打包的类型。version指定项目的版本。scope依赖范围。 Maven资源库第一次运行Maven时Maven会自动从远程资源库下载许多文件包括各种Maven插件以及项目所依赖的库。实际上初始的Maven工具非常小这是因为Maven工具本身的功能非常有限几乎所有的功能都是由Maven插件完成的。Maven资源库用于保存Maven插件以及各种第三方框架。简单来说Maven用到的插件、项目起来的各种JAR包都会保存在资源库中。 本地资源库Maven用到的所有插件、第三方框架都会被下载到本地资源库中。只有当本地资源库找不到时才会从远程下载。开发者可以通过Maven安装目录下的conf/settings.xml文件或者用户Home目录下的.m2/setting.xml文件中的localRepository.../元素进行设置。远程资源库远程资源库通常由公司或团队进行集中维护。通过远程资源库可以让全公司的项目使用相同的JAR包系统。中央资源库默认中央资源库由Maven官方维护中央资源库包含了各种公开的Maven插件、第三方项目。几乎所有的开源项目都会选择中央资源库发布框架。 当Maven需要使用某个插件或JAR包时Maven的搜索顺序为本地资源库远程资源库中央资源库。当Maven从中央资源库下载了某个插件或JAR包时Maven都会自动在本地资源库中保存它们只有当Maven第一次使用某个插件或JAR包时才需要通过网络下载。 依赖管理在pom.xml中的dependencies.../元素内增加dependency.../元素——每个dependency.../元素定义了一个依赖框架或者依赖库。 dependency.../元素可接受如下子元素 groupId.../指定依赖框架或依赖类库所属的组织ID。artifactId.../指定依赖框架或依赖库的项目名。version.../指定依赖框架或依赖库的版本号。scope.../指定依赖库起作用的范围。该子元素可接受compile、provided、test、system、runtime、import等值。type.../指定依赖框架或依赖库的类型该元素的默认值是jar。另外还可以指定war、ejb-client、test-jar等值。optional.../指定该依赖库是否为可选的。classifier.../指定JDK版本号如jdk14,jdk15等指定被依赖的JAR包是在JDK哪个版本下编译的。exclusions.../用于排除依赖。 scope.../元素用于指定依赖库起作用的范围。该元素可指定如下值 compile默认的范围编译、测试、打包时需要。provided表示容器会在运行时提供。runtime表示编译时不需要但测试和运行时需要最终打包时会包含进来。test只用于测试阶段。system与provided类似但要求该JAR是系统自带的。import继承父POM文件中dependencyManagement配置的依赖import范围只能在dependencyManagement元素中使用。 关于Maven的依赖配置需要说明的是Maven依赖管理具有传递性比如配置文件设置了项目依赖a.jar而a.jar又依赖b.jar那么该项目无须显示声明依赖b.jarMaven会自动管理这种依赖的传递。 1.6创建项目恢复默认Maven设置 如果遇到新建项目恢复默认的Maven设置可以在File-New Projects Settings-Settings for NewProjects设置。 1.7Maven生成项目脚手架 脚手架脚手架是一种提供项目基础结构和通用功能的工具。它能快速搭建起一个项目的框架包括文件结构、目录和模块等使开发者能够专注于业务逻辑而不必从头开始构建一个完整的项目。脚手架通常用于创建Web应用程序、移动应用程序和其他类型的软件项目。它们提供一些默认的工程代码包括配置文件、依赖管理、编译和构建配置等。 使用脚手架的好处包括 快速启动项目脚手架提供了一个可用的项目框架可以立即开始编写代码而不需要自己手动设置项目结构。标准化项目结构通过使用脚手架所有项目都将具有相似的结构使团队成员之间的协作和交接更加容易。提供最佳实践脚手架通常会集成最佳实践例如代码规范、自动化测试和部署配置等使项目更加健壮且易于维护。 Maven ArchetypeMaven Archetype插件是Maven的一个重要插件它的作用是通过定义和配置项目模板快速生成和初始化新项目的基础结构。相比手动创建项目使用Archetype插件可以大大提高开发效率。 【Maven生成项目脚手架Demo】 创建项目 . ├── example-client │ ├── pom.xml │ └── src ├── example-server │ ├── pom.xml │ └── src ├── example-test │ ├── pom.xml │ └── src └── pom.xml 要在Maven中配置Archetype插件需要在项目的pom.xml文件中做如下配置 build pluginManagement plugins plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-archetype-plugin/artifactId version3.0.1/version /plugin plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-compiler-plugin/artifactId version3.6.1/versionconfiguration source1.8/source target1.8/target /configuration /plugin plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-resources-plugin/artifactId version3.0.2/versionconfiguration encodingUTF-8/encoding /configuration /plugin /plugins /pluginManagement /build 在根目录执行mvn archetype:create-from-project 在target目录执行mvn install cd target/generated-sources/archetype/ mvn install 创建脚手架项目mvn archetype:generate mvn archetype:generate -DarchetypeCataloglocal 2Git SVN是一个广泛使用的版本控制系统但SVN的主要弱点在于它必须时刻连着服务器一旦断开网络SVN就无法正常工作。SVN和Git相比两者的本质区别在于SVN是集中式的版本控制系统而Git是分布式版本控制系统。 SVN的版本库是集中存放在中央服务器上的每个开发者工作时都必须先从中央服务器同步最新的代码下载最新的版本然后开始修改修改完了再提交给服务器。Git是分布式版本控制。对于Git而言每个开发者的本地磁盘上都存放着一份完整的版本库因此开发者工作时无须联网直接使用本地版本库即可。只有需要多人相互协作时才通过“中央服务器”进行管理。 相对于SVNGit的改变相当于让每个开发者都在本地“缓存”了一份完整的资源库因此开发者对自己开发的项目文件执行添加、删除、返回之前版本时不需要通过服务器来完成。 在使用 Git 进行管理的项目中不同状态的文件分别对应着不同的保存位置。Git保存文件的位置包括Git仓库、暂存区以及工作区。其中Git仓库又分为远程仓库和本地仓库。 远程仓库远程仓库是指项目组共同维护的、托管在网络服务器上的项目仓库。本地仓库即远程仓库在本地的副本。开发者在开发之前必须要建立本地仓库在开发过程中还需要基于本地仓库对代码进行修改和维护。暂存区用户修改的项目文件在提交至本地仓库前的暂存区域。工作区用户实际编码的本地项目目录。 ​ 2.1Git下载和安装 1访问官网Git下载最新稳定版本。 2下载后得到一个Git-2.31.1-64-bit.exe的文件。  3双击安装Gti。 ​ ​ ​ ​4将git添加到Windows命令行窗口出于安全考虑不需要将Unix工具添加到Windows命令行窗口。 ​ ​5选择默认的OpenSSH工具默认的SSH库。 ​​6一路默认到安装成功检验是否安装成功。 cmd模式下输入git --version命令。 2.2Git操作 【关联GitHub】 右键Git Bash Here输入命令ssh-keygen -t rsa后缀是.pub就代表是公钥复制到GitHub没有后缀就代表是私钥。 GitHub➡Setting➡SSH and GPG keys➡New SSH key➡Add SSH key 【merge rebase】 Merge合并在合并分支时Git会创建一个新的合并提交将两个分支的历史合并在一起。这个新的合并提交有两个或更多父提交分别代表要合并的两个分支。这种方法保留了每个分支的完整历史并且是一种非破坏性的合并。 # 切换到目标分支 git checkout target_branch # 执行合并 git merge source_branch Rebase变基Rebase是将一个分支的修改应用到另一个分支上的一种方式。它会将当前分支的修改“移动”到目标分支的最新提交之后。这样看起来就像是目标分支上连续的一系列提交而不是两个分支的独立历史。Rebase改写了提交的历史因此要小心在公共分支上使用以免影响其他开发者。 # 切换到目标分支 git checkout target_branch # 执行变基 git rebase source_branch 使用merge保留历史是比较安全的方法特别是对于公共分支。使用rebase可以帮助保持清晰的提交历史但要小心在共享分支上使用以免引起混乱。 3TortoiseGit 3.1TortoiseGit下载安装 1登录TortoiseGit官网Download – TortoiseGit – Windows Shell Interface to Git下载TortoiseGit最新版本。 ​2启动安装程序除了安装目录一路默认这样就装好了鼠标右键就可看到了。  ​3切换语言不推荐先下载语言包直接运行安装。  3.2配置SSH key 生成SSH key ​将ssh-rsa复制到github的ssh key中 存储私钥 ​配置账户和ssh key 3.3创建本地资源库/克隆资源库 1选择需要版本管理的工作目录然后在该目录下鼠标右键单击“Git Create repository here...”。​ 2弹出的对话框有一个”Make it Bare“复选框如果勾选该复选框则意味着该目录初始化为”纯版本库“因此此处不要勾选该复选框。 ​3对资源库进行一些初步配置。在资源库目录的空白处单击鼠标右键打开“TortoiseGit——Setting”菜单项。 General该分类主要用于设置界面语言、字体、字体大小、颜色等通用信息。Git该分类主要用于设置Git本身的相关信息。DiffViewer该分类用于设置Diff文件比较器的比较页面。TortiseGitUDiff该分类用于设置TortoiseGitUDiff文件比较器的比较页面。 ​此处主要设置Git相关属性因此选中Git节点。输入Name、E-mail、Signing key信息这些信息将作为用户提交代码的标识就是告诉Git谁在提交代码。 ​图中对话框上方的Local单选按钮表明为当前项目设置Git的范围。当局部信息和全局信息不一致时局部信息取胜。如果Global选项和Local选项下输入的用户信息不一致则选中Effective单选按钮即可查看到实际生效的是Local选项下输入的用户信息。 克隆项目就是将所选资源库当前分支的所有内容复制到新的工作空间下。如果当前分支不是master主分支而是其他分支那么克隆操作自然是复制其他分支的内容。 进入打算克隆项目的文件夹在该文件夹单击鼠标右键在弹出的快捷菜单单击“Git Clone”菜单项。 3.4添加/修改/删除文件 Git添加文件很简单先把文件和文件夹添加到Git系统管理之下然后提交修改即可。添加操作相当于git add命令。​​ 添加文件或文件夹之后还需要执行提交操作才能真正将修改提交到版本库中。实际上Git的操作总是按“操作—提交”模式执行的此处操作包括添加文件、修改、删除等。 创建本地资源库之后Git在资源库下创建一个.git文件夹该文件被称为Git版本控制库用于记录各文件的修改历史。Git版本库中存了很多东西其中包括名为stageindex的暂存区。 开发者对文件所做的各种操作比如添加、删除、修改等都只保存在stage暂存区中只有等到执行提交时才会将暂存区中的批量修改提交到指定分支。在创建Git本地资源库时Git会自动创建唯一的master分支。 删除文件或文件夹操作同样可按“删除—提交”模式执行。通过TortoiseGit删除指定的文件或文件夹非常简单按如下步骤执行即可 通过资源管理器删除指定文件或文件夹。在资源库的空白处单击鼠标右键在弹出的快捷菜单中单击“TortoiseGit—Commit”菜单项提交修改即可。 删除文件或文件夹后必须执行提交操作否则在本地所做的删除操作不会提交到服务器提交修改同样可使用git commit命令来完成。 3.5查看/切换文件版本 通过TortoiseGit也可查看文件或文件夹的版本变更历史并比较两个版本之间的差异。查看文件或文件夹的历史非常简单在文件夹点击鼠标右键选择“TortoiseGit—Show log”菜单项即可查看。Git会集中管理整个项目的版本变更。在窗口上方选择某个提交信息在窗口中间可以看到本次提交的唯一标识和说明信息在窗口下方可以看到本次提交涉及的文件。​ 使用版本管理工具的最大好处在于开发者可以随时返回以前的某个版本。如果在开发过程中把某个文件改坏了希望重新找回该文件以前的的某个版本或者想从前面的某个阶段重新开始TortoiseGit都提供了方便的操作允许“重返”以前的某个版本。 ​Git支持如下三种重设类型 Soft软重设只将指定分支重设到指定版本不改变当前工作空间和stage暂存区。Mixed混合将指定分支重设到指定版本将stage暂存区也重设到指定版本但不改变工作空间。Hard将指定分支、stage暂存区、工作空间全部重设到指定版本 如果只想让单个文件恢复到指定版本则可以直接选择文件操作。 3.6创建/切换/合并分支 有些时候不想继续沿着开发主线开发而是希望试探性地添加一些新功能这时候就需要在原来的开发主线上创建一个分支Brancn进而在分支上进行开发避免损坏原有的稳定版本。创建分支的步骤如下在项目所在工作空间的空白处单击鼠标右键在弹出的快捷菜单中单击“TortoiseGit—Create Branch”菜单项系统弹出对话框。 为了沿着分支进行开发需要先切换到分支所在的版本。 当项目沿着分支探索性开发新功能达到一定的稳定状态之后还可以将分支和master分支进行合并从而将分支中的新功能添加到master主分支中。 4Gradle 4.1Gradle安装 【问题】有了Maven为啥还需要Gradle呢 Gradle采用增量构建只有改变的部分才会被重新构建提升构建效率。Gradle提供了更高的自定义能力可以通过编程方式进行复杂的构建任务。如果项目较简单Maven的配置可能更直观如果项目需求较复杂Gradle的灵活性和编程能力可能更合适。 1访问官网Gradle Build Tool下载GradleGradle | Releases得到gradle-8.9-bin.zip。 2解压后添加系统变量添加Path。 变量名GRADLE_HOME 变量值E:\apache\gradle-8.9 %GRADLE_HOME%\bin 3配置仓库位置GRADLE_USER_HOME 相当于配置 Gradle 本地仓库位置和 Gradle Wrapper【就像我们安装Maven 的时候修改配置文件指定本地仓库位置一样当然如果你安装过Maven 可以共用一个】 变量名GRADLE_USER_HOME 变量值E:\apache\apache-maven-3.6.3\maven-allLib 4安装验证cmd下输入gradle -v 5修改gradle远程仓库地址修改build.gradle.kts中的repositories注释中央仓库mavenCentral。配置阿里云地址 repositories {// mavenCentral()maven {url uri(https://maven.aliyun.com/repository/public)} } 4.2开发Idea插件 安装Plugin DevKit插件否则无法创建 IntelliJ Platform Plugin。重启安装完成之后建议先重启一下不然可能开发工具可能出不来。新建IDE Plugin注意jdk版本需要和idea对应。对应关系暂停gradle构建配置阿里云gradle地址。修改使用本地Idea调试修改build.gradle.kts重新构建gradle。 intellij {localPath.set(E:\\IDEA\\IntelliJ IDEA 2024.1.5)// version.set(2023.2.6)// type.set(IC) // Target IDE Platformplugins.set(listOf(/* Plugin Dependencies */)) } 防止报错删除kotlin目录新建java目录。 【plugin.xml】当前插件的相关配置构建完成之后它会报错是因为不能使用默认的模版字符。 !-- Plugin Configuration File. Read more: https://plugins.jetbrains.com/docs/intellij/plugin-configuration-file.html -- idea-plugin!-- Unique identifier of the plugin. It should be FQN. It cannot be changed between the plugin versions. --!--插件唯一Id--idorg.webank.demo/id!-- Public plugin name should be written in Title Case.Guidelines: https://plugins.jetbrains.com/docs/marketplace/plugin-overview-page.html#plugin-name --!--插件名--nameDemo/name!-- A displayed Vendor name or Organization ID displayed on the Plugins Page. --!--插件下载页作者相关信息--vendor emailsupportyourcompany.com urlhttps://www.yourcompany.comYourCompany/vendor!-- Description of the plugin displayed on the Plugin Page and IDE Plugin Manager.Simple HTML elements (text formatting, paragraphs, and lists) can be added inside of ![CDATA[ ]] tag.Guidelines: https://plugins.jetbrains.com/docs/marketplace/plugin-overview-page.html#plugin-description --!--插件功能描述需要大于40字符支持html--description![CDATA[Enter short description for your plugin here.bremmost HTML tags may be used/em]]/description!-- Product and plugin compatibility requirements.Read more: https://plugins.jetbrains.com/docs/intellij/plugin-compatibility.html --!--相关平台插件依赖一般用不到--dependscom.intellij.modules.platform/depends!-- Extension points defined by the plugin.Read more: https://plugins.jetbrains.com/docs/intellij/plugin-extension-points.html --!--插件扩展点--extensions defaultExtensionNscom.intellij/extensions /idea-plugin 【创建Action】idea中的action概念可以理解为idea中的任意一个动作点击了某个按钮就会执行它绑定的Action类的代码。 填写actionId类名功能名称功能描述添加到目标位置。创建成功之后就会生成一个Action类和在plugin中注册一个action表说明他的位置。 【运行插件】点击gradle运行idea插件它会重新启动一个idea环境来运行idea插件。
http://www.hkea.cn/news/14317018/

相关文章:

  • 公司设计品牌公司专业seo培训
  • 专业网站建设企业最好的微网站建设价格
  • 怀集网站建设华为用了哪些网络营销方式
  • 自己做网站用php最快么博物馆网页设计案例
  • 自己能否建设网站可以建网站的路由器
  • 做网站对服务器什么要求高网络工程师要学多久
  • 县信用平台网站建设情况怎样做电影网站
  • 工具站seo网站建设服务费用
  • 新乡网站建设多少钱青岛市网站建设公司
  • 黑龙江建设银行交通违法网站成都网站优化实战
  • 网站风格设计描述网站建设负责那内容上传吗
  • 企业门户网站功能列表萝岗区网站建设推广
  • 普通网站和营销型网站的区别成都市网站建
  • 租用服务器网站下载手机app
  • 南昌网站建设q479185700惠网站建设价格需要多少钱
  • 宁波网站seo报价手机上制作网页
  • 上海营销型网站建设费用怎么建立属于自己的网站
  • asp网站发邮件快递空包网站建设
  • 学做效果图网站有哪些软件怎么用手机做游戏
  • 网站后台怎么做飘窗机票旅游网站开发
  • 网站w3c标准网站名称需要备案吗
  • 做的比较简约的网站织梦教育咨询企业网站模板
  • 沈阳网站制作机构wordpress图片本地化工具
  • 平原网站建设电话智博常州网站建设
  • 有哪些用960gs做的网站58同城网站建设要多少钱
  • 服务器做网站配置手机网站建
  • 做网络写手最好进那个网站只做外贸的公司网站
  • 怎样做汽车之家视频网站学校定制网站建设公司
  • 共享网站的详细规划查看wordpress插件
  • 石岩做网站的公司中国能源建设集团有限公司是什么级别