关于intellij-idea:ideaspringboot热更新

学习java曾经有一段时间了, 因为长时间应用php开发的起因,觉的idea开发java时每次都要从新编译再重新启动切实是受不了, 太浪费时间了, google下发现了个解决的路子 1、spring-boot-devtools因为应用的是spring-boot开发的, 天然就会用到spring-boot-devtools, maven依赖如下: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency>增加这个依赖后, 我的项目发生变化的时候会进行热部署(留神不是热加载哦). 当我门代码发生变化后, 手动build下我的项目达到热部署的成果(也能够通过设置idea达到主动build的成果), 然而仍然要期待很久, 这不是我须要的; 对于spring-boot-devtools的具体介绍能够看下https://pdai.tech/md/spring/springboot/springboot-x-hello-dev... 2、idea其实自带的就有这里先说下环境 macos + idea的版本2022.02(不同版本的设置有所不同) stpe1、IntelliJ Idea -> settings -> HotSwap step2、Edit Configurations, 找到对应spring-boot我的项目的modify Options, 并依照下图操作 配置结束后, 当idea启动后再产生更改的时候, 只须要build一下能够了. 这里的build就是热更新,速度还是比拟快的, 参考快捷键:Mac -> Command + F9 Windows -> Ctrl + F9 ps: 集体比拟喜爱手动build来触发热更新, 这样对改变范畴多个文件的时候更敌对(因为保留一次触发一次也是麻烦), 如此一来开发速度失去了极大的晋升 3、踩坑点1、应用idea自带的热更新的话, 记得把spring-boot-devtools 这个依赖去掉哦, 否则从新编译我的项目会从新进行热部署哦 前面有的话再补充 4、成果展现https://www.bilibili.com/video/BV1Vj421D795/?aid=1651243817&c... 5、参考:https://cloud.tencent.com/developer/article/1683029

February 29, 2024 · 1 min · jiezi

关于intellij-idea:五个很实用的IDEA使用技巧

日常开发中,置信宽广 Java 开发者都应用过 IntelliJ IDEA 作为开发工具,IntelliJ IDEA 是一款优良的 Java 集成开发环境,它提供了许多弱小的性能和快捷键,能够帮忙开发者进步编码效率和品质。除了一些常见的技巧,如主动导包、智能补全、重构工具等。IntelliJ IDEA 还有一些鲜为人知的技巧,可能很多开发者都没有留神到或者应用过。本文就在为你介绍博主罕用的五个 IntelliJ IDEA 应用技巧,心愿可能给你带来一些工作效率上的晋升。本文内容纲要如下: 正文对齐疾速创立包目录/文件夹快付复制类代码生成 Java 类多实例启动分支比拟留神:本文的示例截图以及操作演示都是基于 IntelliJ IDEA 2023.2 版本而来。过低版本可能不尽相同,大家留神。正文对齐日常开发中,置信大家在增加正文时都晓得应用快捷键 ctrl + / ,不过大家可能会遇见上面这种状况, public DiamondJumpContext(List<DiamondJumpType> diamondJumpTypes) {//增加正文 for (DiamondJumpType diamondJumpType : diamondJumpTypes) {// map.put(diamondJumpType.getType(), diamondJumpType); } }能够看到,应用快捷键 ctrl + / 增加正文代码或者正文已有代码时,默认是在首行地位,无奈与下方 for 循环代码主动对齐,造成了视觉上的不美观,那如何解决这个问题嘞?其实解决办法就藏在 IDEA 里,我来通知大家如何设置。 关上 IDEA 设置 Editor -> Code Style -> Java -> Code Generation,找到下方的 Comment code 区域, 勾销 Line comment at first column 的默认勾选,将 Add a space at line comment start 以及 Enforce on reformat 打上勾就能够了。如下图所示, ...

September 20, 2023 · 2 min · jiezi

关于intellij-idea:IDEA启动多个实例

一、勾选并行运行选项 动画演示 二、启动多个实例启动实例,批改接口,启动实例,批改接口,启动实例

September 20, 2023 · 1 min · jiezi

关于intellij-idea:IDEA一个项目启动多个实例以集群启动

在微服务开发场景下,服务大多是以集群形式部署的。在本地开发时 有时候会须要以集群的形式启动我的项目,同时启动多个实例来测试一些相干性能(例如分布式锁),此时不须要打包之后再仍到测试环境去启动多个实例,在IDE中就能够同时启动多个实例。首先用idea关上我的项目,不必关上多个idea,因为你会发现同一个我的项目目录idea只能关上一个,即便你抉择当前目录再去关上一个,idea也不会关上新的窗口。 而后启动程序,点击Edit Configurations 抉择要启动的启动类,点击Copy Configurations 指定新复制的服务启动端口,不要和已有服务抵触,点击ok 抉择新复制的服务启动,此时同一个我的项目,曾经启动了两个服务 须要留神的是:新复制的服务端口不要和已运行服务的端口抵触

September 19, 2023 · 1 min · jiezi

关于intellij-idea:IDEA-Maven-源修改为国内阿里云镜像的正确方式

前言因为家喻户晓的起因,maven的库在中国大陆十分慢。我在百度上搜到的大部分文章都是间接在~/.m2/settings.xml 退出以下内容。 <mirrors> <mirror> <id>aliyunmaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>https://maven.aliyun.com/repository/public </url> </mirror> </mirrors>其实这样设置,我发现其实镜像并没有扭转,还是maven的地方库。 正确的设置形式在maven库的官网上http://maven.apache.org/settings.html,是倡议咱们这样设置的。然而我发现,有时候,阿里云maven源有的包下载不了。所以我倡议设置如果阿里云下载不了,就去下载地方库。所以我的设置如下: <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <localRepository/> <interactiveMode/> <usePluginRegistry/> <offline/> <pluginGroups/> <servers/> <mirrors> <mirror> <id>aliyunmaven</id> <mirrorOf>central</mirrorOf> <name>阿里云公共仓库</name> <url>https://maven.aliyun.com/repository/central</url> </mirror> <mirror> <id>repo1</id> <mirrorOf>central</mirrorOf> <name>central repo</name> <url>http://repo1.maven.org/maven2/</url> </mirror> <mirror> <id>aliyunmaven</id> <mirrorOf>apache snapshots</mirrorOf> <name>阿里云阿帕奇仓库</name> <url>https://maven.aliyun.com/repository/apache-snapshots</url> </mirror> </mirrors> <proxies/> <activeProfiles/> <profiles> <profile> <repositories> <repository> <id>aliyunmaven</id> <name>aliyunmaven</name> <url>https://maven.aliyun.com/repository/public</url> <layout>default</layout> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> <repository> <id>MavenCentral</id> <url>http://repo1.maven.org/maven2/</url> </repository> <repository> <id>aliyunmavenApache</id> <url>https://maven.aliyun.com/repository/apache-snapshots</url> </repository> </repositories> </profile> </profiles></settings>IDEA 中的操作步骤关上IntelliJ IDEA->Settings ->Build, Execution, Deployment -> Build Tools > Maven ...

September 7, 2023 · 1 min · jiezi

关于intellij-idea:译IntelliJ-IDEA-20232-最新变化JetBrains-IDE-中的-AI-助手

本文翻译自IntelliJ IDEA官网博客: https://blog.jetbrains.com/idea/2023/06/ai-assistant-in-jetbr... 前言 本周所有基于 IntelliJ 的 IDE 和 .NET 工具的 EAP 版本都蕴含一个次要新性能:AI Assistant。本博文重点介绍咱们基于 IntelliJ 的 IDE,并且行将推出专门的 .NET 工具博文。 生成式人工智能和大型语言模型正在迅速扭转软件开发工具的格局,将这项技术集成到咱们的产品中的决定对咱们来说是天经地义的。咱们构建人工智能助手性能的办法次要集中在两个方面: 将 AI 辅助融入外围 IDE 用户工作流程。将 AI 性能与代码了解深度集成,这始终是 JetBrains IDE 的强项。AI 性能由 JetBrains AI 服务提供反对。该服务将作为产品用户的您通明地连贯到不同的大语言模型 (LLM),并在许多 JetBrains 产品中启用特定的 AI 驱动性能。该服务推出时反对 OpenAI,并另外托管 JetBrains 创立的许多较小模型。将来,咱们打算将其扩大到更多提供商,让咱们的用户可能获得最佳的选项和模型。 人工智能聊天 应用AI Assistant工具窗口与 LLM 进行对话、提出问题或迭代工作。IDE 将提供一些特定于我的项目的上下文,例如我的项目中应用的语言和技术。一旦您对后果感到称心,请应用“在插入符号处插入片段”性能将 AI 生成的代码放入编辑器中,或者间接复制它。 要向 AI 询问特定代码片段,请在编辑器中抉择它,而后从AI 操作菜单(可在编辑器上下文菜单中应用或应用Alt+Enter快捷键拜访)调用操作。应用抉择操作的新聊天容许您提供本人的提醒或申请。您能够依据须要抉择“解释代码”、“倡议重构”或“查找潜在问题”来输出其余规范 AI 帮忙提醒。 文档生成 如果您须要应用 LLM 生成申明文档,请调用AI 操作菜单并抉择生成文档操作。目前 Java、Kotlin 和 Python 反对此性能。 对于 Java 和 Kotlin,当您应用生成文档正文存根的规范办法时,倡议生成文档: type /**。IDE 将生成正文的动态已知局部(例如@paramJava 中的标签),AI 将为您生成理论的文档文本。 ...

September 5, 2023 · 1 min · jiezi

关于intellij-idea:记-Intellj-Idea-几款常用插件

Key Promoter X一款揭示你所做的操作,哪些能够用快捷键代替。能够勾销某些快捷键揭示,也能够重置统计。 Presentation Assistant与下面插件一样。 JRebel and XRebel一款热调试神奇。 Free Mabatis Tool能够疾速从代码跳转到mapper.xml及从mapper.xml返回。

September 1, 2023 · 1 min · jiezi

关于intellij-idea:idea撤销git-commit

执行commit后,还没执行push时,想要撤销这次的commit,该怎么办? 一、idea操作如下:找到VCS--Git--Reset HEAD,不同的idea版本地位可能不一样,我的是IntelliJ IDEA 2018.2.2 在To Commit中的HEAD前面加上^,点击Reset即可撤回最近一次的尚未push的commit 解释: Reset Type 有三种: Mixed(默认形式),保留本地源码,回退 commit 和 index 信息,最罕用的形式Soft 回退到某个版本,只回退了 commit 的信息,不撤销git add file,不删除工作空间的改变代码 。如果还要提交,间接 commitHard 彻底回退,本地源码也会变成上一个版本内容,不保留之前 commit 的代码HEAD^ 示意上一个版本,即上一次的commit,也能够写成HEAD~1如果进行两次的commit,想要都撤回,能够应用HEAD~2二、git命令行撤回commit的根本命令如下:git reset --soft HEAD^ 这样就胜利撤销了commit,如果想要连着add也撤销的话,--soft改为--hard hard:删除工作空间的改变代码,撤销commit且撤销add。 命令详解: HEAD^ 示意上一个版本,即上一次的commit,也能够写成HEAD~1如果进行两次的commit,想要都撤回,能够应用HEAD~2--soft不删除工作空间的改变代码 ,撤销commit,不撤销git add file另外一点,如果commit正文写错了,先要改一下正文,有其余办法也能实现,如: git commit --amend这时候会进入vim编辑器,批改实现你要的正文后保留即可。

August 23, 2023 · 1 min · jiezi

关于intellij-idea:IDEA-如何制作代码补丁IDEA-生成-patch-和使用-patch

什么是降级补丁?比方你本地修复的 bug,须要把增量文件发给客户,很多场景下大家都须要手工整理批改的文件,并整顿好目录,这个很麻烦。那有没有简略的技巧呢?看看 IDEA 生成 patch 和应用 patch 的应用。介绍下 IDEA 的 patch工作中用到的补丁大抵能够分为两种,一种是 patch 文件,即补丁文件拿过去利用某些命令将这个补丁打入以后代码中,另一种是批改前和批改后的文件比照包,这个比照包能够让咱们疾速查看到批改点的同时看到批改的上下文。这里如何用 IDEA 来生成 patch 和应用 patch。 IDEA 的 patch 应用步骤一、通过 IDEA 生成 patch抉择批改列表,右键生成 patch 设置补丁的名字和编码(不然导入会乱码) 二、查看生成的补丁这个补丁记录了每个文件的更改 用记事本关上能够看到批改痕迹 三、导入应用补丁先关上新我的项目,通过右上角的 VCS 的利用补丁按钮导入补丁 导入胜利,看到了批改内容 四、如何通过命令导入补丁 pathsvn patch 默认跳转利用首页革新.patch 备注:执行 SVN 命令提醒谬误 is too old (format 8, created by Subversion 1.4),则须要执行命令: svn upgrade 参考博客: https://blog.csdn.net/bobozai86/article/details/80525626https://jetbrains.com.zh.xy2401.com/help/pycharm/using-patches.html

August 17, 2023 · 1 min · jiezi

关于intellij-idea:Intellij-IDEA-插件开发-京东云技术团队

写在后面很多idea插件文档更多的是介绍如何创立一个简略的idea插件,本篇文章从开发环境、demo、生态组件、增加依赖包、源码解读、网络申请、渲染数据、页面交互等方面介绍,是一篇可能满足根本的插件开发工程要求的文章。 如有疏漏欢送斧正,如想深刻理解欢送探讨。 一、简介IntelliJ IDEA 与 IntelliJ Platform IntelliJ IDEA 简称 IDEA,是 Jetbrains 公司旗下的一款 JAVA 开发工具,反对 Java、Scala、Groovy 等语言的开发,同时具备反对目前支流的技术和框架,擅长于企业应用、挪动利用和 Web 利用的开发,提供了丰盛的性能,智能代码助手、代码主动提醒、重构、J2EE反对、各类版本工具(git、svn等)、JUnit、CVS整合、代码剖析、 翻新的GUI设计等。 IntelliJ Platform 是一个构建 IDE 的开源平台,基于它构建的 IDE 有 IntelliJ IDEA、WebStorm、DataGrip、以及 Android Studio 等等。IDEA 插件也是基于 IntelliJ Platform 开发的。 二、开发环境搭建留神各软件版本要对应 1、开发工具IDEA 2020.1 各版本下载地址:https://www.jetbrains.com/idea/download/other.html\gradle 6.1 各版本下载地址:https://gradle.org/releases/\org.jetbrains.intellij 0.4.22\jdk 1.8\首先看一下目前idea版本的变动,找到本人以后idea对应的版本须要的jdk版本\https://plugins.jetbrains.com/docs/intellij/build-number-rang...\接下来须要找idea对应版本的gradle版本\https://www.jetbrains.com/legal/third-party-software/?product...\最初就是找 gradle版本对应的 org.jetbrains.intellij 插件版本,在gradle-intellij-plugin插件的releases页面,这里会在形容中指出有各个插件版本对应最低的gradle版本。\https://github.com/JetBrains/gradle-intellij-plugin/releases?page=1\增加依赖到gradel配置文件,获取相干依赖配置\https://mvnrepository.com/artifact/org.springframework/spring... 2、启用Plugin DevKitPlugin DevKit 是 IntelliJ 的一个插件,它应用 IntelliJ IDEA 本人的构建零碎来为开发 IDEA 插件提供反对。开发 IDEA 插件之前须要装置并启用 Plugin DevKit 。\关上 IDEA,导航到 Settings | Plugins,若插件列表中没有 Plugin DevKit,点击 Install JetBrains plugin,搜寻并装置。 ...

June 28, 2023 · 13 min · jiezi

关于intellij-idea:IDEA-202312破解教程激活码永久有效亲测可用

第一步: 下载最新的 IDEA 2023.1.2 版本安装包咱们先从 IDEA 官网下载 IDEA 2023.1.2 版本的安装包,下载链接如下: https://www.jetbrains.com/idea/download/ 点击dowload下载,静心期待其下载结束即可 第二步: 先卸载老版本的 IDEA留神,如果电脑上之前有装置老版本的 IDEA, 须要先卸载洁净,否则可能装置失败! 留神,肯定要先卸载洁净掉老版本的 IDEA。 1.笔者之前装置了老版本的 IDEA, 所以要先卸载,未装置老版本 IDEA 的小伙伴间接跳过,间接看前面激活步骤就行: 卸载胜利后,点击敞开: 卸载胜利后,双击刚刚下载好的 idea exe 格局安装包 第三步: 开始装置 IDEA 2023.1.2 版本2.装置目录默认为 C:\Program Files\JetBrains\IntelliJ IDEA 2023.1.2, 这里我是本人抉择的门路,抉择好门路后点击next 3.勾选 IntelliJ IDEA 创立桌面快捷方式,这边不便后续关上 IDEA,而后点击next 4.点击 Install : 5.装置实现后,勾选 Run IntelliJ IDEA,点击 Finish 运行软件: 6、IDEA 运行胜利后,会弹出上面的对话框,提醒咱们须要先登录 JetBrains 账户能力应用: 这里咱们先不论,先点击 Exit 退出,筹备开始引入激活补丁。 第四步:清空 IDEA 以前应用过的激活形式【十分重要】开始激活前,如果你之前破解过老版本的 IDEA,可能做过以下几种操作,则须要复原原样,如果没有,间接跳过看上面步骤即可。 1、动过 hosts 文件,增加的配置须要删除手动为 IDEA 批改过 hosts 文件,那么增加的配置,记得要删除; ...

June 2, 2023 · 1 min · jiezi

关于intellij-idea:Postcat-IDEA-插件最全的使用教程

Postcat 插件不会入侵到代码外部,无需增加任何jar包依赖,这个真的很香! 上面说一说,这个插件如何应用,是时候展示真正的技术了~ 如何装置配置?IDEA 版本需大于 IntelliJ IDEA 2022.03在 IDEA “设置-插件-Marketplace” 中搜寻 Postcat,找到 Postcat 插件装置即可。同时也可在IDEA插件市场上进行下载安装,本地的IDEA没有主动唤起时,能够间接把zip包拖入IDEA中即可实现装置/更新。 填写配置信息首次上传须要填写配置信息,配置信息我的项目之间独立。配置信息获取路径:登陆 Postcat 进入我的项目中获取 Token、WorkspaceID 和 ProjectID。 Server 默认填写:https://postcat.com/api, 用户无需批改Token获取 WorkspaceID 和 ProjectID 获取 进入我的项目设置页面,点击我的项目名右侧“问号” StringType 决定出入参的字符串类型,只有参数名一开始就是恪守驼峰标准才会发现扭转,预览窗口可看到变动后果 当参数名为userInfo,抉择 camelCase,仍旧是userInfo,这是默认选项当参数名为userInfo,抉择 lower_underscore,会变成user_info当参数名为userInfo,抉择 UPPER_UNDERSCORE,会变成USER_INFO2. 注意事项进行解析上传前,请确保 IDEA 在我的项目中曾经构建完,相干依赖曾经下载好。强烈推荐应用插件定义的正文,插件有弱小的生成正文性能,强烈建议学生成插件的正文进行编辑再上传,正文能够在设置也进行自定义。在辨认不到插件正文时,仅对Spring MVC、Swagger.v2和Swagger(OpenAPI).v3的注解只做局部简略反对。为防止必要参数的缺失,举荐应用插件正文。生成正文性能会对Spring MVC、Swagger.v2 和Swagger(OpenAPI).v3的注解只做局部简略反对,而不会让你重头编写。HTTP接口通过路由和申请形式判断惟一做笼罩更新解决对于曾经上传的 API,在 web 上进行过手动批改,不倡议再应用上传性能,因为插件上传会笼罩掉之前的内容。在生成/手敲了插件javadoc后,对接口uri,申请形式(GET/POST)等做了批改,须要手动批改插件javadoc,否则插件还是会辨认到旧的插件javadoc信息。主动生成的类正文默认会上传到默认分组,请用户自行填写实在的分组,分组通过名字辨认。 如多级分组,则用.隔开,比方须要把接口传到第三方分组下的用户分组,则 group-name 填写 第三方.用户。@group-name正文 反对到办法级别,默认不生成,可手动增加到办法正文,插件会帮你将以后办法存到对应分组中。我的项目级别的 api 扫描和上传,顶部菜单[Tools -> Upload Project Api Doc],具体应用规定看 我的项目级上传。生成类正文不在默认生成@required正文,只会针对有javax.validation.constraints.NotNull注解的字段才生成。不举荐应用@remark正文,插件保留了辨认性能且将内容拼接到字段阐明中,生成类正文不会主动生成。通过@PathVariable,POST办法默认把参数辨认成 Formdata 类型,GET办法默认把参数辨认成 query 类型。//标识的正文无奈被辨认进去,请应用/* /标识。这款插件通过剖析用户正文进行接口解析,最终生成接口文档并上传至 Postcat 服务器,使得开发者能够在 Postcat 上进行 API 治理和分享,进步合作能力和开发速度。 Postcat 提供了多种拓展正文,如@path、@url、@method、@name、@hidden和@required,这些正文能够在设置界面进行自定义或兼容现有正文。 ...

April 18, 2023 · 1 min · jiezi

关于intellij-idea:2023最新IDEA全家桶激活教程

JetBrains 全家桶正式版激活码,16款工具均可激活阐明[!DANGER]本教程实用于 JetBrains 全系列产品,包含 IDEA、Pycharm、WebStorm、Phpstorm、Datagrip、RubyMine、CLion、AppCode 等。 本教程实用 Windows/Mac/Linux 零碎,文中以 Windows 零碎为例做解说,其余零碎同样参考着本教程来就行。 两步激活下载jetbrains-agent.jar配置agent找到idea装置bin目录外面后缀名为.vmoptions 的文件。 [!DANGER]在最初追加一行配置。-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2023.1\bin\jetbrains-agent.jar留神:上述门路为本人下载的jetbrains-agent.jar的本地全门路,请自行批改,激活后次文件地位不要挪动。 激活码在线激活[!INFO]公众号关注【顶尖架构师栈】,回复IDEA即可取得在线激活码 [!INFO]激活后果 [!DANGER]激活工夫不必关注,咱们永恒收费降级。如果之前还未下载安装,能够参考下列装置教程第一步:下载 IDEA 安装包下载 IDEA 2023.1 版本的安装包,下载链接如下 : https://www.jetbrains.com/idea/download/#section=windows 关上页面后,点击 Download 按钮, 期待 IDEA 专业版下载结束。 第二步:装置 IDEA 2023.1 版本双击刚刚下载好的 IDEA 2023.1 版本安装包。点击 Next 按钮 [!DANGER]装置抉择,如果历史装置过其它版本也无影响,本激活码反对IDEA全家桶全版本,一个激活码搞定所有版本!!! 弹框会提醒抉择装置门路,我这里间接抉择的默认装置门路,而后点击 Next 按钮 而后,勾选 Create Desktop Shortcut 创立 IDEA 桌面快捷启动形式,以不便前面疾速关上 IDEA,再点击 Next 按钮 : 点击 Install 按钮,开始装置: 开始装置 期待装置实现后,勾选 Run IntellJ IDEA, 点击 Finish 按钮即运行 IDEA : IDEA 运行胜利后,,会弹出如下对号框,强制用户须要先登录 JetBrains 账户能力应用: [!DANGER]如果启动失败,能够参考这里。

April 10, 2023 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA-快速生成构造函数

IntelliJ IDEA 疾速生成构造函数构造函数生成器能够应用参数创立构造函数。这些参数的值被调配给字段变量。 生成的构造函数在代码款式设置的 "成员程序" 局部中定义的点处插入。默认状况下,代码生成器将构造函数搁置在字段之后。 上面是生成构造函数的具体步骤: 在主菜单上抉择代码|生成(Code | Generate)。或者,右键单击编辑器,而后在上下文菜单中选择 "生成",或应用键盘快捷方式 Alt+Insert 。在编辑器显示的弹出列表中,抉择“Constructor”选项。应用 Ctrl 和 Shift 键进行多项抉择。(须要提前创立变量) 如果无关的类蕴含了字段,IntelliJ IDEA 倡议抉择要由构造函数初始化的字段。在 "抉择要按构造函数初始化的字段" 对话框中,抉择所需的字段。单击“确定”。

March 28, 2023 · 1 min · jiezi

关于intellij-idea:横空出世IDEA-版-API-接口神器来了一键生成文档

每个开发都不想写文档。当你不想写接口文档时,能够通过装置插件在 IDEA 里实现主动同步,一边写代码一边同步接口文档给你的前端、测试同学。以下内容手把手教你怎么操作(这里仅面向应用 IDEA 编辑器、遵循 Java Spring 框架正文标准的同学): 首先,你须要装置一个插件IDEA 插件市场里搜寻 「Apifox Helper」,这是国内一个做 API 合作治理平台的厂商(Apifox)做的插件,能够十分不便主动生成接口文档并且同步到你的我的项目中。这个插件能够实现代码零入侵自动生产接口文档。 IDEA 装置插件:关上 IDEA > Preferences(Settings) > Plugins,搜寻 Apifox Helper,点击装置。这里如果存在装置速度慢,你也能够去 Jetbrains Marketplace 的官网下载。装置实现后,你能够抉择同步到 Apifox 我的项目中,也能够间接导出 markdown 文档。如果是同步到 Apifox 我的项目,你还须要下载或注册 Apifox 软件,创立一个对应的我的项目: 注册/下载地址:http://apifox.cn ,间接微信扫一扫就能够,非常简单。创立我的项目:点击创立团队 >新建我的项目,填入对应的项目名称。(这里强烈推荐同步到 Apifox 我的项目,起因前面说) 第二步,把你 IDEA 中的我的项目和 Apifox 的我的项目关联插件装置胜利后,要将 IDEA 内的我的项目与 Apifox 的我的项目进行相关联,须要配置令牌。在 IDEA 中进入插件设置界面 Preferences(Settings) > Apifox Helper 中填写即可。须要填写的根底信息有三个: Apifox 服务器地址: 默认 Apifox API 服务地址为 https://api.apifox.cn,默认就填好了,不须要批改。 填写 Apifox 集体拜访令牌: 在 Apifox 个人头像处的【账号设置】中抉择【API 拜访令牌】,新建令牌后复制生成的 Token 填写到以上插件设置中。 ...

February 20, 2023 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA-20221永久破解激活教程最新版亲测可用

本文将通过图解的形式领导你激活IDEA 第一步: 下载最新的 IDEA 2022.2 版本安装包咱们先从 IDEA 官网下载 IDEA 2022.2 版本的安装包 官网下载地址 点击下载,静心期待其下载结束即可。 第二步: 先卸载老版本的 IDEA 第三步: 开始装置 IDEA 2022.2 版本 2.装置目录默认为 C:\Program Files\JetBrains\IntelliJ IDEA 2022.2, 这里笔者抉择的是默认门路,倡议批改: 3.勾上创立桌面快捷方式: 4.点击装置 Install : 5.装置完结后,勾选 Run IntelliJ IDEA,点击 Finish 启动软件: IDEA 启动胜利后,会弹出如下的对话框,提醒咱们要先登录 JetBrains 账户能力应用: 这里咱们先ignore,click Exit 退出,筹备开始引入激活补丁。 第四步:清空 IDEA 以前应用过的激活形式【十分重要】 run激活脚本之前,如果你之前装置过 IDEA, 且手动为 IDEA 批改过 hosts 文件,那么增加的配置,记得要删除;援用过的补丁也要移除掉等, 不然可能会与本文提供的补丁有抵触,呈现各种奇奇怪怪的问题。 如果没有动过 hosts 文件,持续走上面的步骤,不必管,。 第五步:开始激活 下载激活脚本先下载“cloud.fynote.com/share/d/14095“好激活补丁,解压后,关上文件夹如下: 点击进入 IDEA 2022.2 激活补丁文件夹.png ...

February 19, 2023 · 1 min · jiezi

关于intellij-idea:IDEA-破解激活教程附激活码2023-年-2-月-8-号亲测有效

更新工夫 2023-02-10 16:40:51 申明:本教程 IntelliJ IDEA 破解补丁、激活码均收集于网络,请勿商用,仅供集体学习应用,如有侵权,请分割作者删除。若条件容许,心愿大家购买正版 !IDEA 2022.3.2 破解激活教程 前言工夫过得飞快,充电器一拔,又得回去做打工人了。关上电脑,发现 IDEA 又更新了一个小版本,2022.3.2 版本来了,于是笔者将 IDEA 做了一波降级。至于破解办法,还是用本站之前的破解形式,亲测仍然无效,能够破解到 2025 年(理论是永恒激活,可释怀食用),无图无假相,上面是我破解胜利的截图: IDEA 2022.3.2 胜利破解激活截图 废话不多说,和之前版本一样,笔者汇总了目前网上比拟靠谱的三种破解计划(这三种都是笔者亲测胜利的),小伙伴们任选其一即可: 第一种【举荐】:激活脚本 + 激活码(全自动模式),即本文教程所写,这种办法适宜最新的几个版本,具体步骤跟着本文教程一步一步来,运行一下激活脚本,一分钟即可搞定,超级简略。无图无假相,上面是我激活胜利后的截图:PS: 此办法和上面的第二种办法的补丁原理都是暴力拦挡了 IDEA 的残余使用期网络申请,实际上等于永恒激活,至于激活到哪天,在之前的 2021.3.3 2021.3.2 等老版本中是能够手动配置的,比方改成激活到 2099 年。可能是太高调了,最新的版本只能显示到 2025 年, 其实成果还是一样的, 都是永恒激活,可释怀食用。第二种:破解补丁 + 激活码(需手动援用补丁) ,相比拟于第一种无脑执行一个激活脚本,这种形式须要手动援用破解补丁,再输出激活码。此办法同样仅实用于最新的几个版本。第三种: 有限重置 IDEA 30 天试用期(实用于比拟老的版本) ;阐明本教程实用于 JetBrains 全系列产品,包含 IDEA、Pycharm、WebStorm、Phpstorm、Datagrip、RubyMine、CLion、AppCode 等。本教程实用 Windows/Mac/Linux 零碎,文中以 Windows 零碎为例做解说,其余零碎同样参考着本教程来就行。第一步:下载 IDEA 安装包拜访 IDEA 官网,下载 IDEA 2022.3.2 版本的安装包,下载链接如下 : https://www.jetbrains.com/ide... 下载 IDEA 2022.3.2 安装包 关上页面后,点击 Download 按钮, 期待 IDEA 专业版下载结束。 ...

February 16, 2023 · 2 min · jiezi

关于intellij-idea:如何在mac上使用idea做大数据开发

1 软件包下载 jdk1.8 (jdk1.8.0_231)idea(包含2018,2019) (ideaIC-2019.3.3/ideaIC-2018.3.5)汉化包:汉化包.rarmaven3.6.3 (apache-maven-3.6) 2 jdk的装置 第一:把包间接放到自定义目录下第二:配置环境变量 a) 关上终端 输出 sudo vi /etc/profile 或者 sudo vi .bash_profile 解释:etc/profile是零碎的配置文件bash_profile是以后用户的配置文件sudo是让以后用户临时用于管理员用户的一些权限,如果让输出明码的话,这里是管理员的明码 b) profile外部的具体设置如下:   配置完执行 :wq!保留退出 c) 继续执行 source /etc/profile 使配置失效d) 执行java -version测试  显示java的版本信息代表配置胜利,这时咱们能够在任何中央间接应用java,javac等命令. 3 idea的装置a) 间接点击装置ideaIC-2019.3.3,依照步骤走,直到实现,这里没有什么非凡的b) 汉化到finder中找到idea,右键,点击显示包内容将汉化包解压放在Contents/lib上面重启idea即可 4 maven的装置 a) 将下载的maven包放在自定义目录上面 b) 点开maven包进入conf,找到settings.xml,进行简略配置(留神:能够配置应用阿里的,这里简略配置的本地的)  c) 咱们也能够给maven配置环境变量MAVEN_HOME=/Users/bihai/Downloads/apache-maven-3.6.3/放在 .bash_profile上面即可 5 测试---应用idea创立第一个大数据我的项目 a) 创立maven我的项目  b) 配置mvaen的信息,关联咱们装置好的maven辨别:从这里进入是对以后工程进行配置  从这里进入是对新工程进行配置  c) 依照图对maven进行设置  下图是对jdk的设置  6 pom.xml文件的设置这里是应用maven进行获取jar包的配置文件 这里的大部分配置跟windows一样,只有个别的中央须要留神,我揭示一下 上图中的${env.JAVA_HOME}中的env是用来获取零碎环境变量,然而在mac10以上的版本,即便咱们在bash_profile文件中配置了JAVA_HOME,这里也不能间接铜鼓env将JAVA_HOME点进去,默认只识别系统默认的环境变量,比方:SHELL,PATH. 解决办法:咱们须要手动增加一下.通过命令launchctl setenv ...

January 17, 2023 · 1 min · jiezi

关于intellij-idea:118idea-激活

关上idea, 若首次关上,先收费试用。而后在idea主界面,将ide-eval-resetter-2.1.6.zip间接拖放来。会提醒重启,若没提醒,本人重启下。重启后,在菜单【Help】->【Eval Reset】,按钮【Reload】刷新界面上的显示信息。按钮【Reset】点击后会询问是否重置试用信息并重启IDE。抉择Yes则执行重置操作并重启IDE失效.勾选项【Auto reset before per restart 】

November 21, 2022 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA分支svn

IntelliJ IDEA分支svn【为何应用分支】我的项目开发中常常会遇到这种状况,我的项目中性能开发完上线后,新的需要又来了,风风火火的在我的项目里开发, 忽然有一天测试说有个很致命的bug须要紧急批改上线,完蛋了,原来的代码都不晓得改成什么样子了, 新开发的代码如果还原几天的工作白干了。这种状况分支显的尤为重要。 【创立分支】在IntelliJ IDEA中选中我的项目右击-->Subversion --> branch or Tag ... 抉择Repository Location:须要创立分支的我的项目 svn://192.168.10.245:83/java/wap-palmchat抉择Any Location 分支的地位和名字 svn://192.168.10.245:83/java/wap-branches/wap-palmchat_20160504分支的名字倡议加上日期,不便辨别 切换到分支 选中我的项目右键Subversion --> Update Directory 勾选Update/Switch to specific url 抉择URL 为对应的 svn://192.168.10.245:83/java/wap-branches/wap-palmchat_20160504 点击 OK 查看是否切换胜利 我的项目右键Subversion --> Relocate 查看门路是不是分支的门路 当初能够在分支上开发新性能,并提交了。 【合并分支】当有bug要批改时,切换回主我的项目 选中我的项目右键Subversion --> Update Directory 勾选Update/Switch to specific url 抉择URL 为对应的 svn://192.168.10.245:83/java/wap-palmchat 查看是否切换胜利 批改bug 打包上线,都不会影响,因为新开发的性能在分支上,当初咱们合并到主分支吧。 选中我的项目右键 Subversion --> Integrate Directory source 1 抉择主分支 svn://192.168.10.245:83/java/wap-palmchat source 2 抉择分支 svn://192.168.10.245:83/java/wap-branches/wap-palmchat_20160504 点击OK 会合并分支批改的代码,如果有抵触,须要手动解决了。 其实当咱们从分支切换回主分支时,会提醒有哪些文件扭转了。 【总结】分支其实就是我的项目的复制品,有两个雷同的我的项目,批改bug在主分支上做,减少新性能在分支上写。它们互相不影响。 ...

November 19, 2022 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA上debug模式启动

IntelliJ IDEA上debug模式启动debug模式启动点击Edid Configurations...减少一个Maven下的jetty,Parameters配置如下 Working directory:/home/liang/intellijIDEA_workspace/palmchat/wap-palmchatCommand line:clean jetty:run-exploded -Dmaven.test.skip=trueProfiles:pom.xml点击debug图标,就是debug模式运行了tomcat 也是相似去配置 参考:http://lavasoft.blog.51cto.co...http://s3.51cto.com/wyfs02/M0... 如何打main运行的jar包形式一:LogAnalytics我的项目,剖析nginx日志的,采纳的是maven配置文件pom.xml 指定main函数,具体看配置间接运行clean install -Dmaven.test.skip=true 打成的jar可运行main办法clean package -Dmaven.test.skip=true 形式二:参考:http://bglmmz.iteye.com/blog/...http://blog.sina.com.cn/s/blo...

November 18, 2022 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA快捷键

IntelliJ IDEA快捷键Alt+Enter导包Ctrl+Alt+O 优化导入的类和包 Alt+insert get set toStringCtrl+d 复制一行Ctrl+x 剪切删除行 Ctrl+y 删除一行Shift+F6 重构-重命名Shift+Esc 最小会视图Ctrl+N 查找类Ctrl+Shift+N 查找文件Ctrl+Shift+Space 主动补全代码 Ctrl+空格 代码提醒Ctrl+E 最近更改的代码 Ctrl+Alt+Space 类名或接口名提醒 Ctrl+P 办法参数提醒 Ctrl+J 主动代码 Ctrl+. 主动补全Ctrl+shift+U 大小写转化Alt + <-- 或 --> 切换到上一次的文件Ctrl+鼠标点击 进入办法,或 回到调用的办法处Ctrl+b 回退上次中央F2 定位到谬误的中央 批改快捷键Preferences-->Keymap搜寻 navigate 查到 Back和Forward 这两个性能在查看代码调用很不便Back默认是Ctrl+Alt+<-- 因为与零碎快捷键抵触 不起作用 改为 Alt+L(左)Forward默认是Ctrl+Alt+>-- 改为 Alt+R(右) 参考链接:http://www.cnblogs.com/bluest...

November 16, 2022 · 1 min · jiezi

关于intellij-idea:解决idea中无法识别主类的问题

克隆完代码后发现注解没有被辨认,并且主类,application.properties都没有被辨认,并且此时idea曾经实现了初始化并不是idea依然在‘读条’。 之前也遇到过相似的问题,然而之前是因为没有倒入maven我的项目,从新倒入maven我的项目即可,具体操作可见此文章,然而目前曾经导入了maven我的项目。 之后又尝试clean maven后再mvn install或者清空缓存或是勾销链接maven我的项目后再从新导入maven我的项目等等操作后依然无奈解决。 起初又在网上看到一种说法——Maven的版本和IDEA的版本不兼容也会导致上述情况。 maven-wrapper.properties: distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zipwrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar须要应用相匹配的Maven版本和IDEA版本,介于无论重装Maven还是IDEA老本都很高,咱们在IDEA中应用自带的Maven即可。 在IDEA中关上“Preferences”,找到“Maven”菜单,在“Maven home directory”中,抉择IDEA自带的Maven3(自带Maven的版本必定是兼容的),如图: 切换胜利后:

November 1, 2022 · 1 min · jiezi

关于intellij-idea:使用IDEA远程debug调试

背景近程debug即对近程部署的内容进行debug,如果在线上咱们部署的我的项目呈现了咱们不晓得的问题,咱们就能够应用近程debug进行排查问题。 配置这里咱们是springboot服务为例来进行debug 1、IDEA设置1.1、抉择 Edit Configuration1.2、如图,点击加号,抉择Remote1.3、配置,具体步骤见图 留神:留神端口别被占用。后续这个端口是用来跟近程的java过程通信的。 启动脚本革新(后盾运行)nohup java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar web.jar & 启动springboot,启动IDEA里的

October 28, 2022 · 1 min · jiezi

关于intellij-idea:IDEA-xml文件SQL-dialect-is-not-configured解决

用idea关上xml文件,看到大段的波浪线,鼠标hover,告警如下 框框里一共有2个告警1、No data sources are configured to run this SQL and provide advanced code assistance. Disable this inspection via problem menu (Alt+Enter).2、SQL dialect is not configured. 先解决第1个告警 No data sources are configured to run this SQL...在IDEA的右侧,点击dataBase,点击新建,找到MySQL,顺次点击。配置界面全副默认,点击OK。 再看xml文件,只剩一个告警了。 再解决第2个告警 SQL dialect is not configured 点击 File -> Settings 先搜寻inspections,再搜寻sql dialect,勾销勾选SQL dialect detection,点击”OK” IDEA的xml文件中,波浪线隐没,也没有告警了。 完结 同步更新到本人的语雀https://www.yuque.com/diracke...

October 28, 2022 · 1 min · jiezi

关于intellij-idea:IDEAIDEA22搭建WSL2-JDK-Maven-Docker-Springboot环境

全栈技术分享,API文档动静更新,技术点扼要易懂,疾速入门有帮忙的话点个赞吧,感兴趣的关注加书签取得更多文档,不便随时查阅,有问题欢送留言探讨环境筹备装置IDEA这里要求版本是 IDEA22.2及以上,其余版本的IDEA当作参考吧装置wsl2官网文档 参考【WSL】文档 - 装置装置 jdk参考【java】文档 - 装置留神:jre和jdk一起装置,idea须要开发环境的jdk,jre不反对装置 maven参考【maven】文档 - 装置留神:须要手动下载tar包装置,因为apt主动装置的有很多软链接,idea22无奈辨认tar包装置须要配置MAVEN_HOME环境变量进入初始界面(重要)这里很重要,工程界面对wsl的目录刷新不及时Settings - Appearance & Behavior - System Settings去掉勾选 Reopen projects on startup从新关上IDEA即可(留神设置以管理员形式运行关上)配置初始化界面的maven环境初始界面 - Customize - All settings - Build, Execution, Deployment - Build Tools - Maven配置Maven home pathUser settings fileLocal repository如果提醒 invalid home path,是因为你装置的maven有软链接,卸载洁净后用tar包装置这里留神配置文件千万不要应用环境变量,目前还是个bug,别问我怎么晓得的[泪奔...]配置 jdkidea22新建工程会主动查找wsl的jdk,如果没有就是你没装置jdk,只装了jre创立工程抉择spring 初始化形式创立,门路抉择wsl里的门路,如\\wsl$\Ubuntu-22.04\projects\hello-wsl配置工程的maven环境(重要)Settings- Build, Execution, Deployment - Build Tools - Maven去掉settings和repository的override勾选,放弃默认此时两个门路都会变成\\wsl$...,如果不是删掉工程重来一遍吧配置Run/Debug Configurations1. wsl运行springboot1.点击 Run on: Manage targets新建wsl target:能够配置一些java或maven参数,个别默认即可,jdk会自动识别2.抉择运行的app类,ok后即可运行2. maven部署springboot1.右侧maven栏 - 工程 - Lifecycle,抉择执行clean install执行2.此时会报错,在运行界面点击配置进入Run/Debug Configurations3.抉择 WSL target4.切换JDK为 Project SDK(WSL) 这里也是个bug,只有SDK有用6.maven配置继承就行了,下面步骤没错的话,这里不会看到setting和repository的配置7.apply - ok - 运行如果配置过期了或者从新运行了新的mvn命令,反复下面操作(好麻烦...)3. docker运行springboot3.1 Dockerfile文件FROM localhost:5000/openjdk:8MAINTAINER evefENV LANG=C.UTF-8 LC_ALL=C.UTF-8 APP_HOME=/opt/hello-appVOLUME /tmpRUN mkdir -p $APP_HOMEWORKDIR $APP_HOMEADD target/hello-docker-0.0.1-SNAPSHOT.jar hello-app.jarADD target/classes/application.yml conf/application.yml#应用run target形式不必跑运行命令,idea外部自带#ENTRYPOINT java -jar hello-app.jar --spring.config.location=conf/application.ymlEXPOSE 80821.点击 Run on: Manage targets新建docker target:Docker Container - Optional - Run options:--rm -p8082:80822.抉择运行的app类,ok后即可运行4. docker compose运行springboot4.1 docker compose 文件services: backend: container_name: hello-compose build: context: ./ dockerfile: Dockerfile ports: - 8082:80821.点击 Run on: Manage targets新建docker compose target:卡在build上,门路无奈辨认,这个bug只能等官网解决了

October 16, 2022 · 1 min · jiezi

关于intellij-idea:idea设置代理

IDEA设置代理拜访首先设置代理软件。idea配置坑点: 查看连贯,肯定要写外网地址,不要写127.0.0.1或 localhost

September 13, 2022 · 1 min · jiezi

关于intellij-idea:IDEA使用token验证github

应用IDEA提交java代码到github时,发现用账号密码不能向github验证身份,导致不能提交代码。 因而改用token验证身份。 首先须要在github上生成token。 见上一篇文章《github生成token (2022年8月26日)》 之后在IDEA界面 file -> settings 之后 version control -> github 右侧加号(增加账户) -> useToken 把github网站上生成的toke粘贴到token栏,再login,账户增加胜利 之后就能够用这个账号验证github并push了。 同步更新到本人的语雀https://www.yuque.com/diracke...

September 2, 2022 · 1 min · jiezi

关于intellij-idea:使用Idea部署RocketMq-源代码494

应用Idea部署RocketMq 源代码(4.9.4)一、介绍笔记为主,Idea部署RocketMq的简化流程。 https://github.com/apache/roc... 二、提醒2.1 IDEA版本集体应用的Idea版本。 2.2 RocketMq源码版本须要留神下载源代码之前,先检查一下本人的java版本,最低要求JDK1.8以上。 集体拉取的版本为 4.9.4,因为时效性将来版本有些代码可能会被改良,所以要留神版本问题。 java version "1.8.0_341"Java(TM) SE Runtime Environment (build 1.8.0_341-b10)Java HotSpot(TM) 64-Bit Server VM (build 25.341-b10, mixed mode)拉源码,这一步不须要过多介绍,间接点击主页右上角即可。 这里从官网fork 了一下我的项目 github 当初墙越来越厚,拉代码常常失败,没方法只能再套一层,用 gitee fork了一遍,双层套娃属于是。 最初终于胜利拉代码到本地(真不容易)。 三、操作步骤3.1 下载源代码集体fork版本(4.9.9):https://gitee.com/lazyTimes/rocketmq-adong.git 官网gituhb(最新版本):https://github.com/apache/rocketmq.git 源码目录构造: broker: broker 模块(broke 启动过程)client :音讯客户端,蕴含音讯生产者、音讯消费者相干类common :公共包dev :开发者信息(非源代码)distribution :部署实例文件夹(非源代码)example: RocketMQ 例代码filter :音讯过滤相干根底类filtersrv:音讯过滤服务器实现相干类(Filter启动过程)logappender:日志实现相干类namesrv:NameServer实现相干类(NameServer启动过程)openmessageing:音讯凋谢规范remoting:近程通信模块,基于Nettysrcutil:服务工具类store:音讯存储实现相干类style:checkstyle相干实现test:测试相干类tools:工具类,监控命令相干实现类3.2 查看Maven配置拉下来之后不要急着调配置,咱们先查看idea外面的Maven配置是否被重置,如果被重置了就改回来,另外最好检查一下以后应用的我的项目编译版本, IDEA 常常会用内置的JDK版本对我的项目编译,集体也因为这个问题节约了不少工夫。 总而言之,拉下我的项目做上面三件事: 编译,查看是否报错查看JDK版本查看Maven配置,以及Maven所用JDK打包版本(在setting里能够看到)。重复查看,确保无误。3.3 设置NameServ首先是设置命名服务,这是Producer发送音讯必要服务之一。 这一步外围步骤就两个: 启动参数设置 ROCKETMQ_HOME ,如果不会设置就间接我的项目的根门路,但还是倡议设置一个独自目录外面不便后续察看。设置logback_namesrv.xml,它所在的门路必须跟 ROCKETMQ_HOME 雷同,否则 NameServ 启动会报错。设置ROCKETMQ运行主目录,Mac零碎和Window设置进去的门路不一样,集体应用Windows作为案例,所以设置的门路为:E:\adongstack\project\selfUp\rocketmq-adong 接着咱们进入 NameSer 这个我的项目,间接跑org.apache.rocketmq.namesrv.NamesrvStartup#main()办法,不出意外会给一个提醒:Please set the ROCKETMQ_HOME variable in your environment to match the location of the RocketMQ installation日志十分简洁明了,要求设置 ROCKETMQ_HOME,然而要设置在哪里,怎么设置? ...

August 26, 2022 · 2 min · jiezi

关于intellij-idea:苹果被搜包员工获赔-2-亿微软员工泄露内部敏感凭据intelliJ-项目迁移到-Java-17-|-思否周刊

40s 新闻速递因违反消费者法,谷歌被罚款约 2.88 亿元算法工程师应届生均匀月薪超 3 万元AirPodsPro 2 将反对健身追踪iPhone 年年焕新改为 3 到 13 个月,原设施可折价 50%9 年官司正式和解,法官批准苹果被搜包员工获赔 2 亿百度网盘回应人工审核用户照片:任何层面均不存在iPhone14 或仍有刘海,设计、芯片都不变微信 macOS 版获更新:聊天记录迁徙性能终于来了微软员工在 GitHub 上意外泄露外部敏感登录凭据马斯克:特斯拉人形机器人将来可能比汽车更便宜微软筹备公布 Windows 11 22H2NetBSD 改良对 Commodore Amiga 的反对intelliJ 我的项目迁徙到 Java 17IntelliJ IDEA 2022.2.1 已公布GNOME 43 Beta 公布行业资讯因违反消费者法,谷歌被罚款约 2.88 亿元近日,据澳大利亚联邦法院公布的最新判决书显示,因违反消费者法,被处以 6000 万澳元的罚款,约合人民币 2.88 亿元。具体来看,2017 年 1 月至 2018 年 12 月期间,谷歌向用户展现了 “误导性” 信息,违规收集、贮存并应用了澳大利亚境内约 130 万谷歌用户的地位信息。2018 年 12 月 20 日,谷歌已实现整改。 算法工程师应届生均匀月薪超 3 万元据《2022 人工智能顶尖人才数据图鉴》数据显示,人工智能行业人才紧缺,其中视觉算法工程师供需比最低,仅为 0.08;算法相干岗位在最难招 TOP10 中占据 7 席,算法工程师应届生均匀月薪超 3.2 万元。 ...

August 21, 2022 · 2 min · jiezi

关于intellij-idea:摸鱼系列之idea摸鱼插件推荐

前言作为一枚程序员,下班时候正撸着代码呢,撸不出代码了,没灵感了,看需要念头不通达了,脑瓜里蹦不出一丁点火花了,这时候怎么办?程序在运行,还要好几分钟,等待时间里,白白浪费了,玩手机又会被抓到,这时候怎么办?不必怕,咱们自带的IDEA很弱小,能够装置各种有用的插件,上面教大家如何装置和应用这些摸鱼效率神器吧! 舒适提醒:摸小鱼怡小情,摸大鱼需谨慎。1、Thief-Book 插件,看小说用Thief-Book 是一款真正的最强摸鱼神器,能够更加隐秘性大胆的看小说。 隐蔽性 自定义通明背景,随便调整大小,完满融入各种软件界面快捷性 三个快捷键,实现完满的摸鱼跨平台 反对 Mac+Win,Linux 暂未测试,请自行打包装置教程1、plugins里搜寻“thief-book-idea”,装置后重启IDEA。 2、配置在Other Settings里找到 Thief-Book Config,进行配置,抉择文件里能够抉择本人本地下载好的小说 3、欢快地看小说通过管制步骤2里的上一页、下一页热键,即可高低翻动。同时 默认的老板键 Ctrl+Shift+↓ 能疾速暗藏。(记得别和已有键抵触,抵触自行批改) 2、Stocker 插件,炒股用stocker是一款妥妥的炒股插件,用来实时查看股票动静信息,虽无间接的炒股操作,但能在撸代码时候看到股票涨跌,也是一种不错的体验。 装置教程1、装置同样的,plugins里搜寻Stocker,装置后重启IDEA。 2、配置设置外面找到 Stocker 选项,能够设置数据起源和色彩图案,这里默认是抉择腾讯接口。股票编码倡议用西方财产看网页找,示例:SH600519,SZ000001。 3、欢快地炒股装置当前默认在右边,能够自行调节所在位置。这时候点击加号按钮,增加股票,即可呈现,自行搜寻、自行删增。值得称赞的是,股价是会主动实时刷新的,也能够被动点击 刷新按钮手动刷新。 3、2d ASCII game 插件,玩游戏用没错,正如名字里含有的,能够在idea里玩游戏,这是一个代码作为动画的游戏,游戏里玩家要跟bug的具象体进行你追我赶。 装置教程1、装置plugin里搜寻“2d ASCII game”并下载。 2、配置菜单栏的 "Tools | Play Dissemination"点击,如果找不到,在Keymap里搜寻,并自行配置快捷键,这样按快捷键就能进去。 3、开始游戏第2步快捷键按了后,所在代码就会呈现游戏,依据提醒 ,wasd 挪动, > 开枪, 空格键 跳起来,最初游戏失败后按q是退出。游戏完结会显示存活工夫,游戏开始代码会呈现大量改变,玩家变成主人公,进行跳跃规避bug代码的侵蚀,这时候不要缓和代码,游戏完结后按q就会隐没。 结语idea里还有各种好玩的插件,本文并不是提倡下班摸鱼,只是在苦苦撸代码时候,如果始终报错或出问题,想不出解决办法,无妨用下摸鱼效率神器,转移下注意力,说不定就有灵感了呢。 本文原创作者:奇想派、一名程序员。 文章首发平台:微信公众号【编程达人】 原创不易!各位小伙伴感觉文章不错的话,无妨关注公众号,进行点赞(在看)、转发三连走起!谢谢大家!

August 17, 2022 · 1 min · jiezi

关于intellij-idea:最新IntelliJ-IDEA-2022激活码

IntelliJ IDEA 2022 for Mac是Mac上最好用的Java开发工具,为最大限度地进步开发人员的工作效率而设计,即时和奇妙的代码实现,动静代码剖析,为各种其余语言(如SQL,JPQL,HTML,JavaScript等)提供智能编码帮忙等弱小的性能,是开发人员不可短少的一款软件。 最新IntelliJ IDEA 2022激活码

August 12, 2022 · 1 min · jiezi

关于intellij-idea:史上最强IDEA工具使用教程你想要的全都有

俗话说:工欲善其事必先利其器。想要疾速写出好的代码,更是离不开一个好的工具。在这个疾速倒退的社会,一个好的工具,能帮咱们在开发过程中节俭大量的开发工夫。 本套课程给同学们带来Java目前最风行,最好用的集成开发工具Intellij Idea。(PS:这套课程是面向所有阶段的学员的哦~) https://www.bilibili.com/vide... IDEA的劣势与劣势相比其余开发工具比方: Eclipse而言比拟吃内存,对电脑要求的配置有点高。但它的劣势也非常明显:它的代码提醒性能、代码治理能力会比同类型的工具的效率会高很多。 咱们为什么要学习IDEAIDEA的根本设置,模板语法,还有断点调试,还有IDEA中Git协同开发的应用,以上内容都是咱们学习IDEA必会的内容,不会以上内容咱们在开发过程中的开发效率是无奈进步的。 一个大型项目波及的代码是十分多的,如果遇到了bug就须要进行调试,调试就波及到了咱们的断点进行调试,代码须要一步一步去跑,看到底是哪个中央呈现了问题。 也就是说咱们学习IDEA次要是为了利用这个工具进步咱们的开发效率。 本套课程的整体特色1.课程广而深在整个Java学习路线外面,Idea会随同咱们整个的Java学习生涯。当然,不同的学习阶段,对IDEA的应用要求是不一样的。 比方Java零根底阶段,咱们只须要学会idea的装置,idea如何创立我的项目,idea如何创立类和接口,如何调试,等等。 到了Javaweb阶段,咱们要学会如何应用idea创立Javaweb我的项目,如何配置Tomcat,如何配置相干插件。 在框架阶段,做完我的项目之后,如何对我的项目文件进行治理,如何我的项目调试等等。 对于曾经入行或正在入行的小伙伴们都晓得,在软件开发的行业中,对于刚入职的小伙伴来说,第一件事就是配置装置工具,配置环境。依据公司定的git地址,从公司的库外面拿取我的项目,配置我的项目并且运行我的项目。 以上的种种在咱们的课程中都有具体的解说,帮忙咱们疾速适应公司的开发节奏。 对有肯定教训的小伙伴,如果开发过程中应用idea比拟多,但平时调试用的少,能够重点看课程外面的断点调试,帮忙大家在开发过程中疾速调试代码、疾速定位谬误,助力大家的开发效率。 咱们课程波及到了IDEA各方面的常识,比方:工作中会波及到的一个工具的装置,代码拉取,还有代码的推送,代码的合并以及代码的复原等各个方面,还有IDEA的断点调试性能,这些全副都曾经重点讲到位了。 2.案例丰盛本套课程中的每一个技术点咱们都附有相干案例来帮忙同学们去学习并把握这个技术点(✧◡✧) 本套课程重点内容下面也提到了IDEA的根本设置,模板语法,还有断点调试,还有IDEA中Git协同开发的应用,以上内容都是咱们学习IDEA必会的内容。接下来我会简略介绍一下这几局部。 IDEA 的根本设置(P8)包含:如何进入咱们的设置界面,以及进入页面后主题、字体大小、界面色彩等如何设置,以及代码提醒规定、如何勾销单行显示、设置编辑区……以上内容均可在这一堂课中学到。这些配置都超级实用,用过一次你就再也放不下了~ 模板语法(P12~P13)代码模板是指配置一些罕用的代码字母缩写后,当输出缩写字母时,IDEA会依据输出的字母缩写帮忙主动实现预设的代码,从而挺好编码效率,同时也能够进行个性化设置。 这里咱们波及到的内容有:内置模板、罕用模板的阐明、如何批改现有模板、自定义模板等内容。 断点调试断点调试和上面的Git协同开发的应用能够说是IDEA的重点中的重点。写代码离不开调试,调试离不开断点,把握好断点调试能搞大大晋升咱们的开发效率。 这一部分咱们波及到了Debug模式运行、罕用断点调试快捷键、四种断点类型以及它们的运行成果等内容,最大水平的帮忙咱们把握断点调试这一技能,玩转断点。 IDEA中Git协同开发的应用留神:学习这一部分内容前肯定要先去查阅相干Git的装置和根本的应用办法!!!PS:可间接去官网浏览官网文档 开发离不开版本控制,而Git是目前支流的版本控制工具之一。因而在开发我的项目时咱们肯定要纯熟应用Git来控制代码版本。 这里咱们次要讲了如何配置Git,以及如何应用Git提交代码、如何提交本地库到近程库、IDEA如何应用Git检出-提交-合并-发版我的项目 好了,以上就是咱们IDEA课程的大体内容,详情能够点击下方链接间接观看哦~ https://www.bilibili.com/video/BV1y94y1m7Ew

August 9, 2022 · 1 min · jiezi

关于intellij-idea:Java开发工具IntelliJ-IDEA-2022-for-Mac激活补丁

IntelliJ IDEA 2022 for Mac是Mac上最好用的Java开发工具,为最大限度地进步开发人员的工作效率而设计,即时和奇妙的代码实现,动静代码剖析,为各种其余语言(如SQL,JPQL,HTML,JavaScript等)提供智能编码帮忙等弱小的性能,是开发人员不可短少的一款软件。 装置IntelliJ IDEA 2022

August 3, 2022 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA-20213激活破解图文教程

实用于 IntelliJ IDEA 2021.3 以下所有版本,请释怀食用~实用于 JetBrains 全系列产品,包含 IDEA、Pycharm、WebStorm、Phpstorm、Datagrip、RubyMine、CLion、AppCode 等。实用 Windows/Mac/Linux 零碎,文中以 Windows 零碎为例做解说,其余零碎依照教程程序即可第一步: 下载最新的 IDEA 2021.3 版本安装包 点击下载,静心期待其下载结束即可。 第二步: 先卸载老版本的 IDEA留神,如果电脑上之前有装置老版本的 IDEA, 须要先卸载洁净,否则可能装置失败! 留神,肯定要先卸载洁净掉老版本的 IDEA。 第三步: 装置 IDEA 2、 装置目录抉择; 3、 按本人电脑配置勾选: 4、 点击 next, 安心期待其装置实现: 5、 装置实现后,勾选 Run IntelliJ IDEA,点击 finish 运行软件: 6、 会先弹出一个注册框,勾选 Evaluate for free, 点击 Evaluate: 留神,如果没有弹出下面的界面,可执行重置30天试用期脚本,脚本网盘地址上面可获取 关上该文件夹后,有对应零碎的执行脚本,执行即可: windows零碎:reset_jetbrains_eval_windows.vbs linux/mac零碎:reset_jetbrains_eval_mac_linux.sh 最新的 IDEA 2021.3 版本 IDEA 界面产生了变动,勾销了间接试用 30 天的按钮,须要咱们先注册一个 JetBrains(这里我用的 GitHub 账号注册的),如下: PS: 局部小伙伴反映点击注册 JetBrains 按钮后,网页打不开,无法访问,起因是因为他在 hosts 文件中增加了货色,删除还原回去就能失常拜访了。注册账号并登录后,就能够试用 IDEA 了: ...

July 24, 2022 · 1 min · jiezi

关于intellij-idea:IDEA的警告解决途径1

飘黄的中央,能够将鼠标的光标放在下面,idea会给出肯定的解决方案,有时候很好使。

July 9, 2022 · 1 min · jiezi

关于intellij-idea:20212022新版本IDEA创建项目没有JavaEE和Web选项

我的博客 不晓得大家的IDEA更新了没,更新了后,许多人发现,创立我的项目时,没有看见JavaEE或者JavaWeb选项了。 当然,如果你是Maven我的项目,那可能你还没发现,因为Maven我的项目有Web模板。 那,如何解决这个问题,有或者说,这个货色去哪里了呢? 解决方案1咱们就失常的创立Java我的项目。 右击我的项目,增加框架反对。 这样就行了。 说实话这样也挺不便的,不是吗?解决方案2快捷键alt+ctrl+shift+/。 找到我蓝色框这个,而后勾选。 还是比拟举荐办法一,更不便适合。

June 21, 2022 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA常见快捷键

IntelliJ IDEA常见快捷键在日常的开发过程中,IntelliJ IDEA作为一个非常罕用的工具,这篇文章介绍了一些IntelliJ IDEA常见的快捷键 全局查找快捷键-Ctrl+Alt+T当咱们须要在我的项目中查找某些文件时,能够应用Ctrl+Alt+T来进行全局搜寻 类之间的关系快捷键-Ctrl+Shift+Alt+U当咱们在浏览源码的时候,如果想晓得各个类之间的关系,能够应用Ctrl+shift+Alt+U,所有依赖都以拓扑图的形式展示进去,所有的关系和地位都能找到,以HashMap为例: 我的项目调整键-Ctrl+Alt+[]当Idea同时关上多个我的项目时,如果咱们须要在多个我的项目之间进行切换的话,能够应用Ctrl+Alt+[]来进行切换、 Ctrl+Alt+] 跳转到上一个我的项目Ctrl+Alt+[ 跳转到下一个我的项目查问最近浏览的文件 Ctrl+E当咱们须要查问最近浏览了哪些文件时,能够应用Ctrl+E来进行查找 格局丑化代码 -Ctrl+Alt+Shift+L

June 17, 2022 · 1 min · jiezi

关于intellij-idea:装上这几个Intellij-idea插件保证让你爱上写代码

程序员都晓得写代码是一件低调又干燥的事件,一天到晚盯着电脑屏幕看。怎么能让写代码变成一件酷炫的事件,那就从打扮编辑器开始。 装置了这些插件,保障共事看到后,都会问你。兄弟,你装置了什么插件,让我也装一下。 1. 先换个丑陋主题 Vuesion ThemeIdea编辑器的界面灰蒙蒙的,有点性冷淡的格调,看多了人都有点抑郁。像上面这样: 装上Vuesion Theme插件,界面登时鲜艳许多,人也跟着精力了。 2. 再换个高大上的图标 Atom Material ICons 装上Atom Material ICons插件之后,这图标也太漂亮了吧!也太丰盛了吧! 几乎不敢相信,连不同性能的文件夹都用不同的图标标识进去,登时高大上了有没有? 3. 丑陋的背景也要整上 Background Image Plus 装上Background Image Plus插件,背景图片从此不再枯燥。 让我没想到的是,居然是全面屏的背景图片,左侧和底部的导航栏也设置上了,这也太漂亮了吧。 4. 再换个卡哇伊的加载进度条 Nyan Progress Bar 装上Nyan Progress Bar之后,进度条也变得活跃起来,多加载一会儿也不妨。 5. 烟花为我绽开 active-power-mode装上active-power-mode,写个“Hello world”都这么带感,我还想再写一遍。 置信我,装上这些插件,你就是整层楼最靓的仔! 你会爱上写代码,“Hello world”都会写的津津乐道! 共事们都会围观你写代码! 文章继续更新,能够微信搜一搜「 一灯架构 」第一工夫浏览更多技术干货。

June 11, 2022 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA下载完成后一些初始配置

前言IDEA是一款优良的Java开发工具,但其中一些默认配置不是很适宜大多数人的开发习惯,所以个别都须要进行一些配置。 不知怎么去除水印。 配置项这些配置项是依据集体应用体验来选的,仅作各位读者参考。 文件的换行符,依据阿里的《Java开发手册》IDE 中文件的换行符应用 Unix 格局。依据阿里的《Java开发手册》IDE 的 text file encoding 设置为 UTF -8。大小写不敏感,为了少切换一下大小写。maven仓库更换为本人下载的,gradle也能够进行配置设置一个IDEA的背景图片配置步骤留神记得为新我的项目也配置雷同选项,如果idea版本不同导致有出入,可依据配置项关键字进行搜寻。 1. 设置文件换行符file -> setting -> code style (System-Dependent 就是依据以后操作系统进行设置) 2. 配置utf-8字符集file - - - >setting - - - >Editor - - - >file Encodings 3. 配置大小写不敏感file - - - >setting - - - >Editor - - - >General - - - >Code Completion - - - >match case(中文翻译:匹配大小写)。如下图所示,勾销勾选match case match case下有两个选项 ...

May 12, 2022 · 1 min · jiezi

关于intellij-idea:推荐10个工作中用到的-IntelliJ-IDEA-插件

我是阿福,公众号【阿福聊编程】,文章已收录在 JavaSharing 中,蕴含Java技术文章,面试指南,资源分享。Key Promoter XKey Promoter X 是一个提醒插件,当你在IDEA外面应用鼠标的时候,如果这个鼠标操作可能用快捷键代替的话,那么Key Promoter X会弹出一个提示框,告知你这个鼠标操作能够用什么快捷键代替。对于想应用快捷键代替鼠标在IDEA中,那么这个插件适宜你。 装置只须要关上Settings,而后找到Plugins那一栏目,而后输出key promoter X ,下载重启IDEA 。 Maven Helper个别用这款插件来查看、剖析和排除互相抵触的依赖项.可能清晰的帮忙咱们解决jar包抵触等问题。当您装置好插件,进入Dependency Analyzer视图之后有三个查看选项,别离是Conflicts(抵触)、All Dependencies as List(列表模式查看所有依赖)、All Dependencies as Tree(树结构查看所有依赖)。并且这个页面还反对搜寻。很不便!并且应用该插件还能疾速的执行maven命令。 如果我的项目中存在抵触jar包的解决,切换到maven 依赖视图抉择抵触选项,如果有抵触,在左上面区域会有红色显示,解决抵触,右键单击红色区域,弹出菜单抉择Exclude命令,对抵触进行排除。 Rainbow brackets 这款插件能解决咱们在开发过程中存在括号的缺失问题排查, 它为每组左中括号和右中括号提供了各自的色彩,使跟踪代码块的起始和完结地位更加容易。 WakaTime 这款插件可能监测您的编码流动。 WakaTime 插件具备工夫跟踪服务,同时可主动生成整洁乏味的指标和剖析。 您能够用它来剖析团队生产力,或帮忙本人进步编程速度。 插件装置实现后重新启动IDEA 须要输出WakeTime API Key,WakeTime网站注册一个账号,登陆之后拿到key复制到IDEA 中,你的编码流动就会被记录了。 想要查看编码的流动我门就登陆WakeTime,上面展现我本人编码记录。 点击外面查看统计的后果 Codota Codota 这个插件用于智能代码补全,它基于数百万Java程序,可能依据程序上下文提醒补全代码。相比于IDEA自带的智能提醒来说,Codota 的提醒更加全面一些。Codota 中文在线网站,在这个网站上能够提醒智能补全。 Alibaba Java Code Guidelines这是一款代码标准插件,咱们在理论我的项目开发中查看代码的规范性,能够进步您写出更优雅的代码。 Material Theme UI这是一款IDEA 主题插件,如果咱们感觉IDEA 界面不喜爱,那么这款插件是好的抉择。 主题切换 JRebelJRebel是一款JVM插件,它使得Java代码批改后不必重启零碎,立刻失效。IDEA上原生是不反对热部署的,个别更新了 Java 文件后要手动重启 Tomcat 服务器,能力失效这样在理论工作中太浪费时间。目前对于IDEA热部署解决方案是装置JRebel插件。 ...

April 10, 2022 · 1 min · jiezi

关于intellij-idea:玩转-IDEA-花式打断点从此告别-996

写代码离不开调试,调试离不开断点。 IDEA 对于断点的反对十分丰盛。把握这些技巧当前,能够大大的晋升开发效率。是帮忙程序员保住头发,远离 996 的秘密武器。 断点类型IDEA 反对以下四种断点类型: 行断点(Line breakpoints):最罕用的一种,能够设置在任意可执行的代码行下面。办法断点(Method breakpoints):设置在办法签名上,当进入或退出办法时,断点可被唤醒。字段断点(Field watchpoints):设置在字段(成员变量)上,当该字段被读取或者赋值时断点被唤醒。异样断点(Exception breakpoints):当抛出指定异样时断点被唤醒。行断点行断点,在日常开发中最罕用的形式。增加一个行断点很简略,在须要增加断点的 gutter 上鼠标左键单击,或者光标定位到须要设置断点的代码行,按 Ctrl + F8 即可。 断点增加胜利后,gutter 上会显示一个红色的圆点。接下来,应用 Debug 形式运行程序,就能够对代码进行调试了。 办法断点办法断点你可能之前没有用过,但如果你有浏览源码的习惯,那么你须要好好利用一下这个就家伙了。 增加办法断点和增加行断点的步骤一样,两者只是外观上有些不同,办法断点用红色的菱形示意。 那么办法断点有什么用呢?举个例子: 有如上类关系,代码实现如下: public class ServiceImplA implements Service{ @Override public String method() { return "hello A"; }}public class ServiceImplB implements Service{ @Override public String method() { return "hello B"; }}有如下调用: public String hello() { // 假如通过看代码很难确定是哪个实现类的实例 Service service = createService(); return service.method();}这个时候,咱们不能一眼看出 service 是 ServiceImplA 的实例,还是 ServiceImplB 的实例(这个例子代码比较简单,像 Spring 这类开源框架要简单很多,看过源码的话都有领会)。 ...

January 30, 2022 · 1 min · jiezi

关于intellij-idea:工程师文化正版软件应该公司买吗

点击一键订阅《云荐大咖》专栏,获取官网举荐精品内容,学技术不迷路! 办公须要很多软件,比方 Photoshop、程序员用的 JetBrains IDE,往往价格不菲,那应该公司买还是集体买? 如果员工自带电脑下班,却由公司提供正版软件,那到职把正版软件带走了,怎么办? 这些是每个公司的 CIO/CTO 都面临的问题,有三种计划: 公司购买集体为公司购买,公司报销集体购买,公司不报销哪种适宜本公司?本文将进行剖析。 一、公司购买腾讯洽购了 JetBrains License server 部署在内网,每几小时主动激活 IDE,来到公司网络无奈应用。这种状况下,正版软件属于公司,不必放心「到职带走软件」的问题,资金富余的公司适宜采纳此计划。 二、集体为公司购买,公司报销不同岗位须要不同的软件,而且一直有新软件呈现,如果公司更新保护一个软件洽购清单,十分繁琐。如果某个员工想应用一个新软件,而他人都不必,这种流程下就十分难办,效率很低。 所以「集体购买,作为公司资产,公司报销」是个方法,但有一些问题: 到职移交账号比拟繁琐,变成了「公司保护一套软件资产表」;会导致节约,原本用免费软件的人也申请免费软件;应用美元购买国外软件,没有发票,在国内报销比拟繁琐;集体往往购买个人版,有些软件供应商禁止报销(比方 JetBrains); 公司不能购买、报销或以任何形式赞助购买 JetBrains 集体许可证。 所以只能: 公司购买 JetBrains 企业版(499 USD/年);大家自行购买个人版(149 USD/年)或应用收费的替代品,比方 VS Code(如果感觉它不够好,就一起改良它,这在开源畛域是可行的做法) 三、集体购买,公司不报销有的软件回家也要应用,比方程序员/设计师上班和放假在家接私活、做集体我的项目。 如果电脑和软件属于公司,须要开公司监控程序连上 VPN,后果: 「改 hosts 等系统文件」会触发警报,公司平安人员立刻复电,毕竟这是「公司买的电脑」;用公司买的软件做集体我的项目、做开源,存在产权纠纷,毕竟这是「公司买的软件」;所以有些程序员本人又购买了一套软件,后果公司买的就节约了。从产权清晰的角度思考,「高薪、自带电脑和软件」是个不错的计划。 如果公司开的薪资低,也不报销正版软件,倡议应用免费软件代替。 总结有的程序员心愿本人开发的游戏/软件热卖,撑持本人高薪,但用别的软件却不付费,不思考别的程序员如何营利发工资,心愿别的软件都是公益收费的,而免费软件(如 VS Code)呈现后,又感觉不如免费的弱小,不违心参加开源去改良它,这种错误观念会影响「工程师文化」的建设,导致团队气氛不佳、难以吸引优良的人才。 作为 CTO/CIO,要落地「禁止盗版、全员正版、参加开源」的理念,依据公司资金状况,决定正版软件洽购计划: 集体为公司购买,公司报销:不太可行;依据「集体是否须要应用」,决定正版软件洽购计划:集体也须要应用的软件(比方编程工具):集体购买;比拟低廉的软件(比方 Photoshop),集体不违心购买,宁愿放弃回家应用:公司购买装置在台式机上;杨周老师往期精彩文章举荐:公司的电脑为什么卡——因为短少工程师文化工程师文化:BAT为什么不喊老板 《云荐大咖》是腾讯云加社区精品内容专栏。云荐官特邀行业佼者,聚焦于前沿技术的落地及实践实际之上,继续为您解读云时代热点技术、摸索行业倒退新机。点击一键订阅,咱们将为你定期推送精品内容。

January 21, 2022 · 1 min · jiezi

关于intellij-idea:使用nexus搭建一个maven私有仓库

应用nexus搭建一个maven公有仓库大家好,我是程序员田同学。明天带大家搭建一个maven公有仓库。 很多公司都是搭建本人的Maven公有仓库,明天就带大家应用nexus搭建一个本人的公有仓库,并应用idea上传java到本人的仓库。 1、下载nexus官网链接:https://www.sonatype.com/download-oss-sonatype 2、nexus配置启动下载解压文件后: 解压后的文件目录 配置:bin目录下nexus.vmoptions文件,可调整内存参数,避免占用内存太大 etc目录下nexus-default.properties文件可配置默认端口和host及拜访根目录。 启动:linux:bin目录下执行sh nexus start启动服务,sh nexus stop进行服务 windows:bin目录,按住Shift键右键鼠标,抉择“在此处关上命令窗口”,输出命令:nexus.exe /run 能够运行;也能够装置服务nexus.exe /install,卸载服务nexus.exe /uninstall,到计算机管理中启动nexus服务 拜访:默认端口为8081,在浏览器拜访localhost:8081,每次启动服务须要期待一会才能够关上 登录:有两个默认账号admin、anonymous,其中admin具备全副权限默认明码admin123;anonymous作为匿名用户,只具备查看权限,但能够查看仓库并下载依赖 3.Repositorynexus默认创立了几个仓库,如下: Repository的相干信息 1.maven-central:maven地方库,默认从https://repo1.maven.org/maven2/拉取jar包 2.maven-releases:保留jar包的releases版本 3.maven-snapshots:保留jar包的snapshot版本 4.maven-public:仓库总组,这里曾经默认把下面3个仓库加进来一起对外提供服务了。如果有本人建的仓库,例如上图我本人建的aliyun仓库也要加进了这里才有用。 5.aliyun-maven:本人建的,从阿里云maven库http://maven.aliyun.com/nexus/content/groups/public拉取jar包 6.maven-3rd:本人建的,次要寄存第三方jar包 4配置下载好本人的maven,须要配置setting.xml,须要更改的是两个中央。 server配置相应的nexus账号和明码 id须要和<repository>中的id 对应。 idea中配置maven而后在右侧就会显示 5上传package命令实现了我的项目编译、单元测试、打包性能 install命令实现了我的项目编译、单元测试、打包性能,同时把打好的可执行jar包(war包或其它模式的包)布署到本地maven仓库 deploy命令实现了我的项目编译、单元测试、打包性能,同时把打好的可执行jar包(war包或其它模式的包)布署到本地maven仓库和近程maven私服仓库 好啦,你曾经搭建了一个maven私服,并把握了上传到公有仓库的办法。

January 12, 2022 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA-配置

IntelliJ IDEA是一种商业化销售的Java集成开发环境(Integrated Development Environment,IDE)工具软件,由JetBrains软件公司(前称为IntelliJ)开发,提供Apache 2.0开放式受权的社区版本以及专有软件的商业版本,开发者可抉择其所需来下载应用。 --wikipedia1. 编辑1.1 编码一般来说,在没有任何配置的状况下,IntelliJ IDEA 默认的编码是应用零碎的编码,在有些中文语言的 Windows 版本上的编码是 GBK ,这会导致你的 IntelliJ IDEA 的编码也是 GBK,因而一开始应用该编辑器的时候能够查看下编码。 Preferences -> Editor -> File Encodings 你还能够勾选 Transparent native-to-ascii conversion 选项,将 Unicode 字符转换成指定的编码,默认应用 UTF-8 即可。这是因为 .properties 文件是 ISO-8859-1 的编码,对于无奈辨认的字符会翻译成 Unicode 。勾选之后成果如下: hello=\u4F60\u597D,\u4E16\u754Chello=hello,worldhello=你好,世界hello=hello,world1.2 字体与字体大小Preferences -> Editor -> Font举荐应用等宽格调字体,集体比拟喜爱 JetBrains Mono 。 该字体成果预览如下: 1.3 自定义文件模版Preferences -> Editor -> File and Code Templates应用 IntelliJ IDEA 中创立一个类,比方 App ,创立之后的格局如下: public class App {    }有时候咱们心愿在类下面增加一些额定的信息,比方作者、日期等。这时候咱们就能够自定义文件模版,在 Description 中形容能够援用的变量: ...

December 20, 2021 · 1 min · jiezi

关于intellij-idea:idea-import-和open

IntelliJ IDEA中我的项目import与open的区别场景:从原来公司到职来到新的公司,接手公司我的项目,先将我的项目从git或svn我的项目版本治理上clone下来,如果我的项目原先是用Eclipse开发的,而你更习惯于应用IntelliJ IDEA,上面是针对应用open还是import我的项目到IntelliJ IDEA的剖析: 剖析:1.如果我的项目原先不是由IntelliJ IDEA开发工具开发的,这时用import引入我的项目; 2.如果是由IntelliJ IDEA开发工具开发的,那么应用open关上我的项目。 原文链接:https://blog.csdn.net/jdk_wan...

September 28, 2021 · 1 min · jiezi

关于intellij-idea:IDEA提示key-is-invalid的解决办法

问题形容在IDEA中粘贴完激活码后提醒" key is invalid" 起因剖析是因为之前曾经激活过了,就会导致这个问题 解决办法关上 Help->Edit Custom VM Options删除掉最初一行,重启软件即可最新激活码,能够在这里获取 https://docs.qq.com/pdf/DVlZt...

September 18, 2021 · 1 min · jiezi

关于intellij-idea:IntelliJ-Idea-git操作指南

写在后面长期以来,我始终用的是git命令行治理代码,当只有一个人时,这齐全没问题,但参加团队合作,命令行就显得令不从心,这并不是说命令后做不到,只是命令须要记住太多的命令,学习老本太高,而且在解决抵触下面,如果只靠命令后,那种感觉你体验过一次就再也不想体验。在花了一两天工夫钻研idea的git工具后,我就决定彻底放弃命令行拥抱gui,因而这边将这两天的研究成果记录下来,供大家学习参考。 创立仓库创立近程仓库第一步须要在github或者gitee代码治理平台创立好仓库,这里以github为例 输出仓库名称抉择仓库类型,public示意所有人都可见,private示意只有受权过才有权限仓库创立好后,默认是一个空仓库,这时候界面会提醒如何往仓库推送代码 留神到界面上有个仓库地址,地址有ssh和https,这两个有什么区别呢 https:通过http协定进行代码的治理,须要应用用户名明码ssh:通过ssh协定进行代码治理,应用的是密钥(你能够了解为一个凭证)推送仓库的操作前面会具体阐明,这里就不介绍。 关联本地仓库如果是本地已有我的项目须要关联刚创立的近程仓库,具体步骤如下 初始化我的项目在菜单栏抉择VCS -> Import into Version Control -> Create Git Repository,抉择后会弹出文件夹抉择窗口抉择以后文件夹即可 抉择文件夹后idea会在当前目录下创立一个.git的文件夹,示意该我的项目曾经是一个应用git版本控制的我的项目,如果你的终端是比拟敌对的终端(如Oh My ZSH),这时候会显示以后分支,默认是master分支 ➜ git-learning git:(master) ✗关联近程仓库近程仓库称在git中称为Remote,一个我的项目能够关联多个reomte,也就是你的我的项目能够同时推送到多个近程仓库,这个是很有用的,比方咱们的代码既要推送到客户仓库进行集成,又要推送到公司的仓库进行代码审查,这时候就能够应用多remote进行推送,点击VCS -> Git -> Remotes增加近程仓库,如果是第一仓库,名称默认origin,倡议不要批改该名称 这样咱们就实现了本地仓库和近程仓库的关联,后续就能够进行代码的提交,分支的创立等操作。 克隆仓库如果是他人创立好并提交过代码的仓库,你须要同步到本地,那么就须要对仓库进行克隆(clone)操作,抉择File -> New -> Project from Version Control,输出近程仓库代码地址即可 gitignore在我的项目中有些工程文件或者程序运行时文件咱们不心愿提交到仓库里,那么咱们就须要筹备一个名为.gitignore的文件,将不心愿提交的文件都写到该文件里,git就不会对这些文件进行提交和治理。 一个.gitignore样例 /out//classes/.mvn/node_modules/.idea*.iws*.iml*.ipr.DS_Store/target/能够在文件或者文件夹上右键将其增加到gitignore上 提交代码代码批改后需提交到本地仓库,这个过程称为Commit,代码提交到本地仓库后就能够将commit提交到近程仓库,这个过程称为push,从远处仓库更新代码的过程称为pull,这三个git操作是最罕用的三个操作,在idea的右上角有这三个操作对应的按钮 ① 更新代码,pull操作② 提交到本地仓库,commit操作③ 提交到近程仓库,push操作点击commit图标就能够提交代码,提交代码界面如下 ① 本次提交波及到批改的文件② 提交信息,提交信息是必填,每一次提交都需写明本次批改了哪些内容,原则上每一次不同的目标的批改都应对应一次commit,对于如何写好commit能够参考以下两篇文章https://github.com/joelparkerhenderson/git-commit-messagehttps://github.com/RomuloOliveira/commit-messages-guide留神到①文件后面都有一个复选框,如果是新增加的文件,没有非凡配置的话是不会主动勾选的,新增加的文件须要手动勾选能力提交,能够间接对顶层文件夹全选即可,commit后须要进行push能力同步到近程仓库,点击push按钮 push胜利后就能够登录近程仓库查看最新的代码 留神到零碎提醒咱们增加一个README文件,README是一个名称为README.md的文件,位于我的项目根目录下,一个好的README文件有助于其他人疾速理解我的项目状况,对于如何写好README文件,能够参考以下文档 https://github.com/RichardLitt/standard-readme批改代码后,在提交的界面还会对本地提交和上一次提交进行比照,不便咱们查看批改的内容 回滚代码git回滚代码有两种形式 resetrevert这两种有什么区别呢,假如咱们提交了三次commit commit1 -> commit2 -> commit3如果我想会滚到commit2,如果用reset的话,那么commit2之后的所有批改都会被抛弃,也就是把commit2之后的commit全副砍掉了,revert有点像undo,会把commit2做的操作反做一遍,也就是undo,并且生成一个新的commit,变成 commit1 -> commit2 -> commit3 ->4具体利用在什么场景呢,举个例子,比方咱们在调试的时候可能要加一些调试语句,比方system.out,当调试结束,咱们心愿可能移除这些调试语句就能够在调试前提交一次commit,调试结束后reset到该次commit就行,当然你也能够通过分支来实现,调试结束把分支删掉即可。 ...

September 18, 2021 · 1 min · jiezi

关于intellij-idea:idea最全插件推荐

插件装置settings->plugins->marketplace(插件商城)/installed(已装置的插件) 切换到marketplace,在搜寻框中输出所要装置的插件名,搜寻到后点击install,最初等装置好之后,若有提醒restart idea,就点击重启idea就实现插件的装置了。 1、Alibaba Java Coding Guidelines阿里巴巴Java编码标准查看插件,无规矩不成方圆,检测代码是否存在问题,以及是否符合规范 应用:在类中,右键,抉择编码规约扫描,在下方显示扫描规约和提醒 2、Lombok通过插件能够省略set get toString,代码霎时清新了 pom须要引入依赖 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId></dependency> 3、Free Mybatis plugin疾速从代码跳转到mapper及从mapper返回代码,点击绿色箭头一键跳转,不便多了 4、Codota智能代码提醒,快人一步 比方输出stri,会主动提醒,且会给出每个后果的使用率,你能够依据使用率,来决定应用哪个办法 5、SonarLint相似alibaba的代码查看,会提供正确的写法 又一个督查小队来也 6、Mybatis log plugin主动帮咱们将sql和参数进行拼接,可间接复制执行太不便了,不必本人拼接参数sql 控制台关上办法:Tools->MyBatis Log Plugin,下方就会显示sql的控制台 7、Java bean to json将bean转为json字符串,在bean文件中鼠标右击点击ConvertToJson,就失去json字符串,接口调用的时候,间接讲json参数复制粘贴到body中,再也不必一个参数一个参数的写了。 8、GsonFormat有了bean转json,当然也有依据json字符串主动生成实体类参数新建类,GsonFormat 在空白类的空白处右键,generate->GsonFormat,将json字符串粘贴进去,点击ok,即可生成参数 9、RestfulToolkit遇到问题时,咱们经常须要找到接口在哪个类中,如果全局搜寻,有时很难搜寻到,这时RestfulToolkit就能让你疾速找到接口所在的类 应用快捷键ctrl+\,而后输出接口url就会主动显示接口地位,以及类似的接口,间接点击就会跳转到接口所在的类中 10、Rainbow Brackets彩虹括号能够实现配对括号雷同色彩,并且实现选中区域代码高亮的性能。 11、CodeGlance代码缩略图,能够疾速定位代码,应用起来比拖动滚动条不便

September 17, 2021 · 1 min · jiezi

关于intellij-idea:mac-IDEA使用Invalidate-Caches清除缓存功能崩溃解决方案

mac版本下IDEA 2021.1.3应用Invalidate Caches无奈关上IDEA版本号: 2021.1.3 起因: 在应用IDEA过程中很多import飘红报错,从Help -> Edit Custom VM options.. -> -XX:ReservedCodeCacheSize=4g未能解决飘红问题。 持续通过革除缓存的形式, 将IDEA的本地缓存的文件和历史记录革除,重启后,IDEA无反馈。双击亦无反馈。解决:次要是通过IDEA的 idea.exec执行文件剖析无奈启动起因。 idea.exec文件地位:/Applications/IntelliJ\ IDEA.app/Contents/MacOS,具体能够从应用程序找到IDEA,通过右键显示包内容 找到idea.exec文件后, 应用mac默认的终端双击运行,能够看到输入信息。留神:如果应用item或者其余终端可能会闪现一下,看不到具体内容, 须要批改idea.bat文件加上pase语句。因而这里倡议间接应用默认终端。 剖析:能够看到这里次要是因为之前批改了vmoptions参数导致的,超过了2048m. 留神:这里的门路是画框内的idea.vmoptions文件,也就是刚开始默认批改的Help的VM options, IDEA 启动的时候默认会从这里加载VM 参数。而不是包门路上面的 /Applications/IntelliJ\ IDEA.app/Contents/bin/idea.vmoptionswe文件,因为很多文章讲的是这个文件,这种说法是有问题的。将-XX:ReservedCodeCacheSize的参数调小之后,重启IDEA就能够看到启动界面了。

August 27, 2021 · 1 min · jiezi

关于intellij-idea:idea必备配置和插件

idea是一款弱小的工具,它提供了很多配置和插件,让编程事倍功半!!! 进入idea设置界面 一、idea必备配置1.设置鼠标悬浮提示信息 2.主动导包 3.主动删除无用的包4.疏忽大小写或5.设置字体大小6.设置正文色彩7.设置文档正文模板(工作时能够标注是谁写的代码)8.设置我的项目编码9.设置主动编译10.办法间的分隔符11.设置为eclipse的快捷键(老eclipse玩家必备)12.解决正文字体大小不一13.双斜杠正文改成紧跟代码头14.设置当关上的类多时能分行展现效果图: 二、idea如何装置插件装置完插件须要从新启动idea能力失效 三、idea实用插件1. Alibaba Java Coding Guidelines 阿里代码标准查看插件 2. Free MyBatis plugin (必备 5星举荐) 实现 从dao层跳转到对应的Mapper.xml文件 以及 从Mapper.xml文件跳转到对应的dao效果图: 3. codota AI 代码智能提醒插件 4. Rainbow Brackets 彩虹括号插件5. Lombok 通过注解的形式,在编译时主动为属性生成结构器、getter/setter、equals、hashcode、toString办法 四、查看idea已装置的插件 我所晓得的插件并不多,如果你有其余实用的插件,欢送评论通知我,多谢了!!! 当然插件并不是装置得越多越好,装置太多插件会导致idea变卡,如果电脑配置不够,就没必要装置那么多插件,因为idea自身性能就足够弱小了

August 16, 2021 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA控制台输出中文乱码问题

如果网上搜了一圈都不好使,不要狐疑人生。找到这里你试一下有可能是字体引起的。

August 10, 2021 · 1 min · jiezi

关于intellij-idea:IDEA2020最新激活教程持续更新

目前最罕用的两者办法:激活码 | 插件=== 更新分割线:2021-08-03 ===2021-08-03更新:激活码最新激活码,公众号后盾回复"激活码"即可获取 === 更新分割线:2021-04-16 ===2021-4-16更新:插件我这边曾经有一个电脑生效了,然而还有一个方法就是有限重置30天 方法很简略,就是在Idea的插件市场搜寻"reset",显示的第一个"Idea Eval Reset"就是了,装置重启即可 最初说一下,上面的办法大家没试过的能够试试,如果试过不行的就还是依照下面这个30天的来用吧 前言大家好啊,我是汤圆,明天给大家带来的是《IntelliJ Idea2020版本最新永恒破解教程》,心愿对大家有帮忙 为了做这个教程,专门卸载从新装了一次,心愿大家喜爱,谢谢 上面以windows 为例,mac同理 如果感觉看文字麻烦,也能够只看图,根本也能够看得懂 破解文件在公众号【汤圆学Java】后盾回复Idea即可获取 注释1. 下载Idea去官网下载windows版本的Idea,如下图所示(这里我下载的是2020.3.3最新版) 700多M,下载还是挺慢的,这个工夫能够去干点别的,比方看看我其余的文章2. 装置Idea依照提醒一步步来,双击运行,显示如下图 点击Next,下一步 抉择装置门路,个别选C盘以外的盘,点击下一步 这里抉择64位,点击Next下一步 点击Install,装置,接下来又是漫长的期待过程,这个工夫大家能够干点别的,比方上厕所,喝口水。 装置实现后,显示如下所示 勾选Run IntelliJ IDEA,而后点击Finish,会主动启动Idea 重点来了,上面开始进入正题3. 关上Idea,开始激活首先会呈现试用界面,如下所示 如果没呈现下面的试用界面,可运行reset重置脚本(reset_script目录,相干资源在公众号《汤圆学Java》后盾回复Idea即可获取),间接双击运行即可 windows双击运行reset_jetbrains_eval_windows.vbsmac双击运行reset_jetbrains_eval_mac_linux.sh咱们先选中Evaluate for free,而后点击Evaluate,会弹出上面的界面 点击Continue,就会进入Idea主界面 4. 新建Java我的项目(供小白参考)这里比较简单,就间接贴图展现,不配文字了 5. 拖拽激活插件将BetterIntelliJ.zip插件拖拽到上图所示的我的项目主界面中,会弹出上面的提醒 PS:如果拖拽不进去,倡议先重启Idea一次再拖拽; 如果重启还不行,也能够从桌面抉择插件而后装置,抉择setting->plugins->右上角的设置图标->Install Plugin from Disk,而后抉择插件装置即可(装置完记得重启Idea) 点击Restart,重启Idea 点击 Help->Register,关上注册页面,如下图所示(默认显示残余试用期30天) 点击Add New License,弹出下图 这里咱们抉择Activation code,而后关上激活码key.txt,复制激活码,粘贴到上图所示的地位 ...

August 5, 2021 · 1 min · jiezi

关于intellij-idea:idea搞笑开发

goolge-java-format代码格式化插件ctrl+alt+L格式化代码ctrl+alt+O去除没有应用的import

July 1, 2021 · 1 min · jiezi

关于intellij-idea:The-selected-directory-is-not-a-valid-TomEE-home

问题形容 在IDEA,在应用spring创立web我的项目,应用Tomcat增加服务,启动后,控制台出错,查看configuration,Tomcat配置出错(如 上图 ) 显示为 : “The selected directory is not a valid TomEE home” 问题剖析创立tomcat服务时,抉择的应该是 Tomcat , 而不是 TomcatEE 问题解决查看应用IDEA创立Tomcat服务配置中 "配置和部署Tomcat服务" 文章地位, 须要重新配置Tomcat服务 参考: the selected directory is not valid tomee home idea

June 5, 2021 · 1 min · jiezi

关于intellij-idea:Maven-Cannot-resolve-plugin

问题形容应用IDEA + Maven治理我的项目 开发 spring我的项目,当开始下载jar包时,呈现如下异样 Cannot resolve plugin org.apache.maven.plugins:maven-war-plugin:2.2控制台之后陆续呈现如下信息: 问题剖析这种状况对于过后的环境剖析是可能因为 网络起因导致异常中断下载,插件和jar包没有胜利下载具体解决方案参考这篇博文的评论区 问题解决具体解决办法:1、删除报错地位的包中的jar包。2、从新应用maven主动下载所需依赖 如下图: ⚠️注: 不同的IDEA的版本对于maven主动下载依赖性能反对不一样至多2020是没有个别文章的的 新版的IDEA为了避免 pom 更新时,MAVEN 主动导包时卡死的问题,勾销了主动导包机制。但新增了导入按钮和快捷键。 REFERENCE1、IDEA 2020.1 版主动导入MAVEN依赖的办法(新版MAVEN无奈主动导入/更新POM依赖、MAVEN设置自动更新、自动更新快捷键)2、IntelliJ IDEA 设置主动导入maven依赖3、解决Cannot resolve plugin org.apache.maven.plugins:maven-site-plugin:3.3问题

June 1, 2021 · 1 min · jiezi

关于intellij-idea:记录一些-IntelliJ-IDEA-中的常用配置

一、概述毋庸置疑 IntelliJ IDEA 曾经成为 Java 开发最好用的开发工具,这篇文章次要记录本人应用 idea 开发过程中的一些罕用配置,次要是依据本人的开发习惯进行的配置,记录这篇文章的目标是为了便于本人查问配置,并且心愿对看这篇文章的小伙伴提供一些参考。 阐明:我这里应用的 idea版本是 IntelliJ IDEA 2021.1.1 (Ultimate Edition),不同的版本配置稍有不同,能够依据本人应用的具体版本进行更改。二、idea 罕用配置这里就不介绍 idea 的下载或者激活的办法了,百度一下你就晓得。这里对 idea 的设置准则是尽量放弃默认设置,除了本人须要的设置,其余设置一律放弃默认,集体感觉 idea 只是一个开发工具,怎么用的棘手怎么设置,然而要以进步本人的开发效率为目标。 1、设置 idea 的主题色彩点击 File --> Settings --> Appearance --> Theme 集体喜爱红色的主题色彩,能够依据本人的爱好抉择对应的主题色,如下图所示: 2、设置字体大小和字符编码设置字体大小点击 File --> Settings --> Editor --> Font 字体大小依据个人电脑的屏幕进行设置,我这里设置的大小是:18。设置文件编码点击 File --> Settings --> Editor --> File Encodings 从上图能够看到配置编码的中央有4个: 1、Global Encoding:UTF-82、Project Encoding: UTF-83、File/Directory Encoding: UTF-84、Properties files Encoding:UTF-8 前三个是配置我的项目中文件的编码,不包含 properties 配置文件,这三个选项存在优先级,高优先级的笼罩低优先级的,也就是说如果文件有指定编码就应用指定的编码,如果没有指定,则应用父目录或者我的项目的编码。能够看到File/Directory Encoding中配置了整个我的项目的根目录为UTF-8。个别这三个配置咱们个别都不必管,idea会主动配置File/Directory Encoding: UTF-8。另外就是 properties 文件的独自配置,默认状况下追随零碎。 Transparent native-to-ascii conversion 这个选项是否勾选,官网文档阐明如下图: ...

May 22, 2021 · 2 min · jiezi

关于intellij-idea:IDEA显示Cannot-resolve-symbol-XXX

解决办法:File-->Invalidate Caches / Restart-->Invalidate and Restart

May 11, 2021 · 1 min · jiezi

关于intellij-idea:Spring-Boot-2-Spring-Security-5-JWT-的-Restful-简易教程

筹备开始本教程的时候心愿对上面知识点进行粗略的理解。 晓得 JWT 的基本概念理解过 Spring Security本我的项目中 JWT 密钥是应用用户本人的登入明码,这样每一个 token 的密钥都不同,绝对比拟平安。 大体思路:登入: POST 用户名明码到 \login申请达到 JwtAuthenticationFilter 中的 attemptAuthentication() 办法,获取 request 中的 POST 参数,包装成一个 UsernamePasswordAuthenticationToken 交付给 AuthenticationManager 的 authenticate() 办法进行鉴权。AuthenticationManager 会从 CachingUserDetailsService 中查找用户信息,并且判断账号密码是否正确。如果账号密码正确跳转到 JwtAuthenticationFilter 中的 successfulAuthentication() 办法,咱们进行签名,生成 token 返回给用户。账号密码谬误则跳转到 JwtAuthenticationFilter 中的 unsuccessfulAuthentication() 办法,咱们返回错误信息让用户从新登入。申请鉴权: 申请鉴权的次要思路是咱们会从申请中的 Authorization 字段拿取 token,如果不存在此字段的用户,Spring Security 会默认会用 AnonymousAuthenticationToken() 包装它,即代表匿名用户。 任意申请发动达到 JwtAuthorizationFilter 中的 doFilterInternal() 办法,进行鉴权。如果鉴权胜利咱们把生成的 Authentication 用 SecurityContextHolder.getContext().setAuthentication() 放入 Security,即代表鉴权实现。此处如何鉴权由咱们本人代码编写,后序会具体阐明。筹备 pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.7.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>org.inlighting</groupId> <artifactId>spring-boot-security-jwt</artifactId> <version>0.0.1-SNAPSHOT</version> <name>spring-boot-security-jwt</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- JWT 反对 --> <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactId> <version>3.8.2</version> </dependency> <!-- cache 反对 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cache</artifactId> </dependency> <!-- cache 反对 --> <dependency> <groupId>org.ehcache</groupId> <artifactId>ehcache</artifactId> </dependency> <!-- cache 反对 --> <dependency> <groupId>javax.cache</groupId> <artifactId>cache-api</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-test</artifactId> <scope>test</scope> </dependency> <!-- ehcache 读取 xml 配置文件应用 --> <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.3.0</version> </dependency> <!-- ehcache 读取 xml 配置文件应用 --> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>2.3.0</version> </dependency> <!-- ehcache 读取 xml 配置文件应用 --> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-core</artifactId> <version>2.3.0</version> </dependency> <!-- ehcache 读取 xml 配置文件应用 --> <dependency> <groupId>javax.activation</groupId> <artifactId>activation</artifactId> <version>1.1.1</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>pom.xml 配置文件这块没有什么好说的,次要阐明上面的几个依赖: ...

April 17, 2021 · 7 min · jiezi

关于intellij-idea:零散的MySQL基础总是记不住看这一篇如何拯救你

前言在日常开发中,一些不罕用且又比拟根底的常识,过了一段时间之后,总是容易遗记或者变得有点不置可否。本篇次要记录一些对于MySQL数据库比拟根底的常识,以便日后疾速查看。 SQL命令SQL命令分能够分为四组:DDL、DML、DCL和TCL。四组中蕴含的命令别离如下 DDLDDL是数据定义语言(Data Definition Language)的简称,它解决数据库schemas和形容数据应如何驻留在数据库中。 CREATE:创立数据库及其对象(如表,索引,视图,存储过程,函数和触发器)ALTER:扭转现有数据库的构造DROP:从数据库中删除对象TRUNCATE:从表中删除所有记录,包含为记录调配的所有空间都将被删除COMMENT:增加正文RENAME:重命名对象 常用命令如下: # 建表CREATE TABLE sicimike ( id int(4) primary key auto_increment COMMENT '主键ID', name varchar(10) unique, age int(3) default 0, identity_card varchar(18) # PRIMARY KEY (id) // 也能够通过这种形式设置主键 # UNIQUE KEY (name) // 也能够通过这种形式设置惟一键 # key/index (identity_card, col1...) // 也能够通过这种形式创立索引) ENGINE = InnoDB;# 设置主键alter table sicimike add primary key(id);# 删除主键alter table sicimike drop primary key;# 设置惟一键alter table sicimike add unique key(column_name);# 删除惟一键alter table sicimike drop index column_name;# 创立索引alter table sicimike add [unique/fulltext/spatial] index/key index_name (identity_card[(len)] [asc/desc])[using btree/hash]create [unique/fulltext/spatial] index index_name on sicimike(identity_card[(len)] [asc/desc])[using btree/hash]example: alter table sicimike add index idx_na(name, age);# 删除索引alter table sicimike drop key/index identity_card;drop index index_name on sicimike;# 查看索引show index from sicimike;# 查看列desc sicimike;# 新增列alter table sicimike add column column_name varchar(30);# 删除列alter table sicimike drop column column_name;# 批改列名alter table sicimike change column_name new_name varchar(30);# 批改列属性alter table sicimike modify column_name varchar(22);# 查看建表信息show create table sicimike;# 增加表正文alter table sicimike comment '表正文';# 增加字段正文alter table sicimike modify column column_name varchar(10) comment '姓名';————————————————版权申明:本文为CSDN博主「Sicimike」的原创文章,遵循CC 4.0 BY-SA版权协定,转载请附上原文出处链接及本申明。原文链接:https://blog.csdn.net/Baisitao_/article/details/104714764DMLDML是数据操纵语言(Data Manipulation Language)的简称,包含最常见的SQL语句,例如SELECT,INSERT,UPDATE,DELETE等,它用于存储,批改,检索和删除数据库中的数据。 ...

April 1, 2021 · 3 min · jiezi

关于intellij-idea:介绍6款热门的SpringCloud微服务开源项目总有适合你的

明天介绍六款比拟热门的SpringCloud微服务项目,感兴趣的能够clone下来钻研一下,置信对你学习微服务架构很有帮忙。 一、Cloud-Platform介绍Cloud-Platform是国内首个基于Spring Cloud微服务化开发平台,具备对立受权、认证后盾管理系统,其中蕴含具备用户治理、资源权限治理、网关API 治理等多个模块,反对多业务零碎并行开发,能够作为后端服务的开发脚手架。 代码简洁,架构清晰,适宜学习和间接我的项目中应用。核心技术采纳Spring Boot 2.4.1、Spring Cloud (2020.0.0)以及Spring Cloud Alibaba 2.2.4 相干外围组件,采纳Nacos注册和配置核心,集成流量卫兵Sentinel,前端采纳vue-element-admin组件,Elastic Search自行集成。 性能截图 具体理解https://gitee.com/geek_qi/clo...二、pig介绍基于 Spring Cloud Hoxton 、Spring Boot 2.4、 OAuth2 的 RBAC 权限管理系统 基于数据驱动视图的理念封装 element-ui,即便没有 vue 的应用教训也能疾速上手 提供对常见容器化反对 Docker、Kubernetes、Rancher2 反对 提供 lambda 、stream api 、webflux 的生产实践 性能截图 具体理解https://gitee.com/log4j/pig三、microservices-platform介绍基于SpringBoot2.x、SpringCloud和SpringCloudAlibaba并采纳前后端拆散的企业级微服务多租户零碎架构。并引入组件化的思维实现高内聚低耦合并且高度可配置化,适宜学习和企业中应用。 真正实现了基于RBAC、jwt和oauth2的无状态对立权限认证的解决方案,面向互联网设计同时适宜B端和C端用户,反对CI/CD多环境部署,并提供利用治理不便第三方零碎接入;同时还汇合各种微服务治理性能和监控性能。举荐:Java面试练题宝典 模块包含:企业级的认证零碎、开发平台、利用监控、慢sql监控、对立日志、单点登录、Redis分布式高速缓存、配置核心、分布式任务调度、接口文档、代码生成等等。 性能截图 具体理解https://gitee.com/zlt2000/mic...四、SpringBlade介绍SpringBlade 是一个由商业级我的项目降级优化而来的SpringCloud散布式微服务架构、SpringBoot单体式微服务架构并存的综合型我的项目,采纳Java8 API重构了业务代码,齐全遵循阿里巴巴编码标准。 采纳Spring Boot 2.4 、Spring Cloud 2020 、Mybatis 等核心技术,同时提供基于React和Vue的两个前端框架用于疾速搭建企业级的SaaS多租户微服务平台。 性能截图 具体理解https://gitee.com/smallc/Spri...五、RuoYi-Cloud介绍基于Spring Boot、Spring Cloud & Alibaba的散布式微服务架构权限管理系统。举荐:Java面试练题宝典 采纳前后端拆散的模式,微服务版本前端。 后端采纳Spring Boot、Spring Cloud & Alibaba。 注册核心、配置核心选型Nacos,权限认证应用Redis。 流量管制框架选型Sentinel,分布式事务选型Seata。 ...

March 28, 2021 · 1 min · jiezi

关于intellij-idea:2021最新永久安装IDEA详细教程激活IDEA

一、下载最新的 IDEA 2020 版本安装包 能够抉择从 IDEA 官网下载: https://www.jetbrains.com/idea/download 点击下载并进行装置 二、开始激活 1、 下载实现后,双击 ideaIU-2021.x.exe,关上装置软件; PS: 装置前请确保电脑上没有旧版本,如果有请先卸载。 2020.x只是举例,同样反对最新版本 2、 抉择装置目录(倡议不要装置在C盘); 3、 按本人电脑配置勾选: 4、 点击 next, 安心期待其装置实现: 5、 装置实现后,勾选 Run IntelliJ IDEA,点击 finish ,装置实现,上面进行激活工作: 6、 会先弹出一个注册框,勾选 Evaluate for free, 点击 Evaluate: 激活IDEA关上我提供的激活文件 reset_script 依据本人的操作系统执行对应脚本 windows零碎执行:reset_jetbrains_eval_windows.vbs linux/mac零碎执行:reset_jetbrains_eval_mac_linux.sh 装置破解补丁进入 IDEA 中, 将我提供的 IDEA 破解补丁 BetterIntelliJ.zip拖入 IDEA 界面中,如下图所示: 或者通过菜单栏的File->settings->Plugins装置插件, 抉择BetterIntelliJ.zip 即可。 装置结束,提醒重启 4、输出激活码 重启结束之后,输出我提供的激活码。(在 激活补丁key.txt 这个文件中) 如提醒激活码生效,请重启IDEA,从新操作至此IDEA 就曾经激活胜利了 。胜利激活至2099年! ...

February 28, 2021 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA-20周岁啦为期2天的周年庆活动对开发者免费开放

你好,我是A哥(YourBatman)。题记:A哥2015年入行,2017年9月首次应用IntelliJ IDEA,从最后的排挤冲突,到当初爱不释手。一晃IntelliJ IDEA 20岁了,祝愿它越来越好。近一年我分享了好几篇对于IDEA的深度分析文章,在文首就提前分享给你: IntelliJ IDEA 2020.3正式公布,年度最初一个版本很讲武德IntelliJ IDEA 2020.2正式公布,诸多亮点总有几款能助你提效IntelliJ IDEA 2020.1正式公布,你要的Almost都在这!IntelliJ IDEA 2019.3正式公布,给咱们带来哪些新个性?IDEA命令行缩短器助你解决此问题:Command line is too long. Shorten command line2001年,IntelliJ IDEA诞生,使得开发更富有成效和欢快的体验;2021年,IntelliJ IDEA已受到寰球400多万开发者的青睐和应用! IntelliJ IDEA是JetBrains公司最为重要的产品,没有之一。回顾20周年,在其创建之初,JetBrains只是布拉格(捷克的首都)一家一般得不能再一般的小公司。起初只有3名员工,做着一款产品为800个客户提供服务。通过20年的继续倒退,该公司未然成为一个跨国公司,办事处遍布寰球9个国家之多,员工人数也超过1200名,开发者工具达到25款之多,用户规模更是冲破800万。 阐明:JetBrains产品面向的是开发者/程序员,并非一般C端用户,因而这个数字是十分惊人的往年(2021年)是IntelliJ IDEA的20周年,为此JetBrains公司打算搞一个隆重的周年庆流动,管它叫IntelliJ IDEA Conf,所有开发者均可收费报名参加,公司创始人Maxim Shafirov会“亲临现场”哦。会议工夫、具体日程下待会再做成列。 本文提纲 版本约定IntelliJ IDEA:2020.3.1注释IntelliJ IDEA风风雨雨走过20年,获得了泛滥骄人成绩。站在这个工夫节点上,咱们先一起来领略下其风采。透过寒冷的数字,咱们能领会到IntelliJ IDEA工程师们的自豪和骄傲。 IntelliJ IDEA成绩单在刚刚过来的2020年整年,寰球共400万+开发者在应用IntelliJ IDEA,共被下载了超过1千200万次。 IntelliJ IDEA是全球性的国际化的,它的使用者坐落在世界的各个角落。从官网统计出的这张图能看到各州分部: 从地图上也能看到,亚洲应用IntelliJ IDEA的人是最多的。毕竟,你懂的中国在亚洲嘛(还有印度),人数总量这一块素来都是拿捏得死死的。 截止2021年1月,亚洲总人口45亿,寰球77亿,占比60%左右应用人数国家Top 5第一有悬念吗?答,没有。毕竟对人数这块中国还没怕过谁~ 第一名:中国 第二名:美国 第三名:印度 第四名:德国 第五名:俄罗斯 阐明:统计数据来自2020整年个性应用次数Top 5在过来20年里,IntelliJ IDEA共公布了40+个次要版本,效率惊人。公布N多个性,其中最被开发者罕用的五大个性为: 第一名:代码补全第二名:显示用意操作第三名:运行第四名:跳转到申明中央第五名:切换行断点阐明:统计数据来自2020整年IntelliJ平台产品汇总IntelliJ是个平台,而IntelliJ IDEA是其根底。还有很多的商业/非商业产品,泛滥成熟的IDE和插件,放一张让人自豪的产品图: 依靠于IntelliJ这么优良的基因,提供了弱小底座,使得每款产品都十分的优良,而且体验上还能放弃高度一致。 IntelliJ IDEA市场份额IntelliJ IDEA次要面向Java开发者,而Java语言的IDE次要有三座大山: Apache NetBeansEclipseIntelliJ IDEA他们三在不同的工夫阶段都曾统治过“江山”。IntelliJ IDEA作为后起之秀,站在明天的这个时刻(2021年),它已成为相对的霸主。上面附图是JVM生态报告2020年版(IDE篇): ...

January 28, 2021 · 2 min · jiezi

关于intellij-idea:我在iPad-Air-和-iPhone上都装了个IntelliJ-IDEA撸了一个SpringBoot项目牛逼哄哄

干开发的哥们儿都晓得,零碎上线后,如果有bug,领导会第一工夫打电话过去,中午也得起来改bug,随时随地改bug就是程序员的日常,这就导致很多程序上班后必须背着电脑挤地铁,随时候着,拖着疲乏的身材再扛着惨重的包,那叫一个苦不堪言,那有什么好的方法能够解决这个问题呢? 明天,给大家送福利了,带你在iPad上装置一个IntelliJ IDEA撸一个SpringBoot,从此辞别双肩包。上面是手机上和iPad上关上IDEA的成果。 前言须要你windows或者linux装有git和docker环境,咱们以linux为例进行装置,如果打算在iPad上长时间应用,还是用linux装置比较稳定,性能好。(留神:没有这两个环境是转不起来的) 装置1.git下载JetBrains的projector-dockergit clone https://github.com/JetBrains/projector-docker.git 2.编辑run-container-mounted.sh切换到projector-docker目录,也就是JetBrains的docker我的项目下,相干目录脚本如下 这一步比拟重要,配置本地磁盘到docker,/root/projector-docker为本地目录,请依据你的须要配置。 docker run --rm -p 8887:8887 -v /root/projector-docker:/home/projector-user -it "$containerName" bash -c "./run.sh"3.下载projector-core源码仍然在project-docker目录下执行 ./clone-projector-core.sh 100%示意源码下载结束 4.编译docker容器仍然在project-docker目录下执行 ./build-container.sh 下面是编译过程,这个有点坑,因为我没有配置国内镜像,导致第一次比拟比较慢,将近2个小时【早晨睡眠本人下载即可,倡议配置国内镜像】 5.运行容器./run-container-mounted.sh 启动胜利 6.IntelliJ IDEA版本设置IntelliJ IDEA的默认版本目前是2019.3,感兴趣的能够本人降级版本。 关上build-container.sh,更改downloadUrl属性前面ideaIC-2019.3.5.tar.gz即可,例如:ideaIC-2020.3.1.tar.gz downloadUrl=${2:-https://download.jetbrains.com/idea/ideaIC-2019.3.5.tar.gz}iPiad Air 上用浏览器关上iPad Air上关上safari拜访http://101.200.56.xxx:8887/即可(留神:装置第二步骤能够看到默认端口是8887) 下面是启动初始化效果图,因为我当时创立了一个SpringBoot的我的项目,失常关上是没有我的项目,和电脑本地装置成果是一样的。 ipad air上简略操作IntelliJ IDEA1.创立maven我的项目 2.装置IDEA插件 3.启动我的项目 4.主题皮肤更换 总结除了下面列举这些性能,其实和pc安装版大同小异,根本所有性能都有,另外,不仅反对Intellij IDEA,而且反对WebStorm、Goland、PhpStorm、PyCharm、GoLand等全家桶,快去试试吧!

January 15, 2021 · 1 min · jiezi

关于intellij-idea:SpringCloud10Springboot-整合RabbitMQ

一、 Springboot 整合 RabbitMQ别离以六种工作模式进行剖析 1. 新建我的项目 2. pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.4.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>cn.tedu</groupId> <artifactId>rabbitmq-springboot</artifactId> <version>0.0.1-SNAPSHOT</version> <name>rabbitmq-springboot</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.amqp</groupId> <artifactId>spring-rabbit-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>3. application.ymlspring: rabbitmq: host: #192.168.64.140 wht6.cn username: admin password: admin #设置每回只抓取一条音讯,qos=1, 默认250 listener: simple: prefetch: 14. 主程序咱们为每种模式创立一个包,在每个包中创立各自的主程序,独自测试. ...

December 30, 2020 · 6 min · jiezi

关于intellij-idea:怎么开启IDEA的Services运行窗口

启动idea开发工具,并关上java工程 双击.idea文件夹,找到workspace.xml文件 编辑workspace.xml文件,在结尾增加如下配置代码<component name="RunDashboard"> <option name="configurationTypes"> <set> <option value="SpringBootApplicationConfigurationType" /> </set> </option> </component> 保留配置文件,重启idea开发工具,此时能够在下方工具栏Services窗口看到如图的执行窗口了

December 30, 2020 · 1 min · jiezi

关于intellij-idea:SpringClub07config-配置中心

一、 config 配置核心yml 配置文件保留到 git 服务器,例如 github.com 或 gitee.com微服务启动时,从服务器获取配置文件 1. 配置 config1.1 新建config文件夹 1.2 将sp02,sp03,sp04,sp11四个我的项目的yml配置文件,复制到config我的项目,并改名item-service-dev.ymluser-service-dev.ymlorder-service-dev.ymlzuul-dev.yml最初,清空四个我的项目中的application.yml文件 1.3 禁止配置核心的配置信息笼罩客户端配置默认配置核心配置优先级高,配置核心配置会笼罩客户端的所有配置,包含命令行参数配置,这样咱们在item-service和order-service中配置的端口号启动参数会有效,所以咱们能够设置禁止配置核心的配置将客户端配置笼罩掉,在四个配置文件中增加上面的配置 spring: application: name: xxx cloud: config: #避免配置核心的配置将客户端配置笼罩掉 override-none: true1.4 将 config 我的项目上传到 gitee 2. 配置 config 服务器config 配置核心从 git 下载所有配置文件。而其余微服务启动时从 config 配置核心获取配置信息。 2.1 新建 sp12-config 我的项目 2.2 增加依赖 pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.1.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>cn.tedu</groupId> <artifactId>sp12-config</artifactId> <version>0.0.1-SNAPSHOT</version> <name>sp12-config</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> <spring-cloud.version>Hoxton.RELEASE</spring-cloud.version> </properties> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>2.3 批改 application.yml 文件spring: application: name: config-server cloud: config: server: git: uri: https://github.com/你的集体门路/sp-config searchPaths: config #username: your-username #password: your-password server: port: 6001 eureka: client: service-url: defaultZone: http://eureka1:2001/eureka, http://eureka2:2002/eureka2.4 ### 主程序增加 @EnableConfigServer 注解package cn.tedu.sp12;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.client.discovery.EnableDiscoveryClient;import org.springframework.cloud.config.server.EnableConfigServer;@EnableConfigServer@SpringBootApplicationpublic class Sp12ConfigApplication { public static void main(String[] args) { SpringApplication.run(Sp12ConfigApplication.class, args); }}2.5 启动,拜访测试拜访 item-service-dev.yml 能够应用以下模式:http://localhost:6001/item-service-dev.ymlhttp://localhost:6001/item-service/dev测试其余文件http://localhost:6001/user-service/devhttp://localhost:6001/zuul/devhttp://localhost:6001/order-service/dev ...

December 24, 2020 · 2 min · jiezi

关于intellij-idea:SpringClub06zuul-网关

1.zuul API网关zuul API 网关,为微服务利用提供对立的对外拜访接口。zuul 还提供过滤器,对所有微服务提供对立的申请校验。 1.1 新建 sp11-zuul 我的项目 1.2 增加依赖 1.2.1 pom.xml须要增加 sp01-commons 依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.1.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>cn.tedu</groupId> <artifactId>sp11-zuul</artifactId> <version>0.0.1-SNAPSHOT</version> <name>sp11-zuul</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> <spring-cloud.version>Hoxton.RELEASE</spring-cloud.version> </properties> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-zuul</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>cn.tedu</groupId> <artifactId>sp01-commons</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>1.3 批改 application.yml 文件zuul 路由配置能够省略,缺省以服务 id 作为拜访门路spring: application: name: zuul server: port: 3001 eureka: client: service-url: defaultZone: http://eureka1:2001/eureka, http://eureka2:2002/eurekazuul: routes: item-service: /item-service/** user-service: /user-service/** order-service: /order-service/**1.4 主程序增加 @EnableZuulProxy 注解package cn.tedu.sp11;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.client.discovery.EnableDiscoveryClient;import org.springframework.cloud.netflix.zuul.EnableZuulProxy;@EnableZuulProxy@EnableDiscoveryClient@SpringBootApplicationpublic class Sp11ZuulApplication { public static void main(String[] args) { SpringApplication.run(Sp11ZuulApplication.class, args); }}1.5 启动我的项目 ...

December 23, 2020 · 4 min · jiezi

关于intellij-idea:SpringClub05feign-声明式客户端

一、feign 申明式客户端接口微服务利用中,ribbon 和 hystrix 总是同时呈现,feign 整合了两者,并提供了申明式消费者客户端 用 feign 代替 hystrix+ribbon1. 新建 sp09-feign 我的项目 2. 增加依赖 <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.1.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>cn.tedu</groupId> <artifactId>sp09-feign</artifactId> <version>0.0.1-SNAPSHOT</version> <name>sp09-feign</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> <spring-cloud.version>Hoxton.RELEASE</spring-cloud.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>3. 批改application.yml文建spring: application: name: feign server: port: 3001 eureka: client: service-url: defaultZone: http://eureka1:2001/eureka, http://eureka2:2002/eureka4. 主程序增加 @EnableFeignClients注解package cn.tedu.sp09;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.client.discovery.EnableDiscoveryClient;import org.springframework.cloud.openfeign.EnableFeignClients;@EnableFeignClients@EnableDiscoveryClient@SpringBootApplicationpublic class Sp09FeignApplication { public static void main(String[] args) { SpringApplication.run(Sp09FeignApplication.class, args); }}5. feign 申明式客户端feign 利用了咱们相熟的 spring mvc 注解来对接口办法进行设置,升高了咱们的学习老本。通过这些设置,feign能够拼接后盾服务的拜访门路和提交的参数 ...

December 22, 2020 · 6 min · jiezi

关于intellij-idea:SpringClub04Hystrix-断路器

一、Hystrix零碎容错、限流工具 1.降级当一个服务调用一个后盾服务调用失败(异样、服务不存在、超时),能够执行以后服务中的一段“降级代码”,来返回降级后果疾速失败: 当调用后盾服务超时,为了不让用户长时间期待,能够间接返回降级后果 1.1增加降级:1.1.1 创立 sp07-hystrix 我的项目 1.1.2 增加 hystrix 依赖<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-hystrix</artifactId></dependency>1.1.3 批改 application.ymlspring: application: name: hystrixserver: port: 3001#连贯eurekaeureka: client: service-url: defaultZone: http://eureka1:2001/eureka, http://eureka2:2002/eurekaribbon: #单台重试次数 MaxAutoRetries: 1 #更换服务器次数 MaxAutoRetriesNextServer: 21.1.4 主程序增加 @EnableCircuitBreaker 启用 hystrix 断路器启动断路器,断路器提供两个外围性能: 降级,超时、出错、不可达到时,对服务降级,返回错误信息或者是缓存数据熔断,当服务压力过大,谬误比例过多时,熔断所有申请,所有申请间接降级能够应用 @SpringCloudApplication 注解代替三个注解package cn.tedu.sp07;import org.springframework.boot.SpringApplication;import org.springframework.cloud.client.SpringCloudApplication;import org.springframework.cloud.client.loadbalancer.LoadBalanced;import org.springframework.context.annotation.Bean;import org.springframework.http.client.SimpleClientHttpRequestFactory;import org.springframework.web.client.RestTemplate;//@EnableCircuitBreaker//@EnableDiscoveryClient//@SpringBootApplication@SpringCloudApplicationpublic class Sp06RibbonApplication { @LoadBalanced @Bean public RestTemplate getRestTemplate() { SimpleClientHttpRequestFactory f = new SimpleClientHttpRequestFactory(); f.setConnectTimeout(1000); f.setReadTimeout(1000); return new RestTemplate(f); //RestTemplate 中默认的 Factory 实例中,两个超时属性默认是 -1, //未启用超时,也不会触发重试 //return new RestTemplate(); } public static void main(String[] args) { SpringApplication.run(Sp06RibbonApplication.class, args); }}1.1.5 RibbonController 中增加降级办法为每个办法增加降级办法,例如 getItems() 增加降级办法 getItemsFB()增加 @HystrixCommand 注解,指定降级办法名package com.tedu.sp06.controller;import cn.tedu.sp01.pojo.Item;import cn.tedu.sp01.pojo.Order;import cn.tedu.sp01.pojo.User;import cn.tedu.web.util.JsonResult;import com.netflix.hystrix.contrib.javanica.annotation.HystrixCommand;import lombok.extern.slf4j.Slf4j;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;import org.springframework.web.client.RestTemplate;import java.util.List;@RestController@Slf4jpublic class RibbonController { @Autowired private RestTemplate rt; @GetMapping("/item-service/{orderId}") @HystrixCommand(fallbackMethod = "getItemsFB") public JsonResult<List<Item>> getItems(@PathVariable String orderId) { /*调用近程的商品服务,取得订单的商品列表 {1} - RestTemplate本人定义的一种站位符格局 注册核心的注册表: item-service ---- localhost:8001,localhost:8002 从注册表失去 item-service 对应的多个地址,而后在多个地址之间来回调用 */ return rt.getForObject("http://item-service/{1}", JsonResult.class, orderId); //用 orderId 填充占位符 {1} } @PostMapping("/item-service/decreaseNumber") @HystrixCommand(fallbackMethod = "decreaseNumberFB") public JsonResult<?> decreaseNumber(@RequestBody List<Item> items) { return rt.postForObject("http://item-service/decreaseNumber", items, JsonResult.class); } @GetMapping("/user-service/{userId}") @HystrixCommand(fallbackMethod = "getUserFB") public JsonResult<User> getUser(@PathVariable Integer userId) { return rt.getForObject("http://user-service/{1}", JsonResult.class, userId); } @GetMapping("/user-service/{userId}/score") // ?score=1000 @HystrixCommand(fallbackMethod = "addScoreFB") public JsonResult<?> addScore(@PathVariable Integer userId, @RequestParam Integer score) { return rt.getForObject("http://user-service/{1}/score?score={2}", JsonResult.class, userId, score); } @GetMapping("/order-service/{orderId}") @HystrixCommand(fallbackMethod = "getOrderFB") public JsonResult<Order> getOrder(@PathVariable String orderId) { return rt.getForObject("http://order-service/{1}", JsonResult.class, orderId); } @GetMapping("/order-service") @HystrixCommand(fallbackMethod = "addOrderFB") public JsonResult<?> addOrder() { return rt.getForObject("http://order-service", JsonResult.class); } ////////////////////////////////////////////////////////////// public JsonResult<List<Item>> getItemsFB(String orderId) { return JsonResult.err().msg("获取订单商品列表失败"); } public JsonResult<?> decreaseNumberFB( List<Item> items) { return JsonResult.err().msg("缩小商品库存失败"); } public JsonResult<User> getUserFB( Integer userId) { return JsonResult.err().msg("获取用户失败"); } public JsonResult<?> addScoreFB(Integer userId, @RequestParam Integer score) { return JsonResult.err().msg("减少用户积分失败"); } public JsonResult<Order> getOrderFB (String orderId){ return JsonResult.err().msg("获取订单失败"); } public JsonResult<?> addOrderFB () { return JsonResult.err().msg("增加订单失败"); }}1.2 增加 hystrix 超时设置hystrix期待超时后, 会执行降级代码, 疾速向客户端返回降级后果, 默认超时工夫是1000毫秒为了测试 hystrix 降级,咱们把 hystrix 期待超时设置得十分小(500毫秒)此设置个别应大于 ribbon 的重试超时时长,例如 10 秒 ...

December 21, 2020 · 3 min · jiezi

关于intellij-idea:SpringClub03ribbon负载均衡和重试

一、ribbon 服务消费者ribbon 提供了负载平衡和重试性能, 它底层是应用 RestTemplate 进行 Rest api 调用 1.RestTemplateRestTemplate 是SpringBoot提供的一个Rest近程调用工具它的罕用办法: getForObject() - 执行get申请postForObject() - 执行post申请之前的系统结构是浏览器间接拜访后盾服务前面咱们通过一个Demo我的项目演示 Spring Cloud 近程调用上面咱们先不应用ribbon, 独自应用RestTemplate来执行近程调用 1.1 新建 sp06-ribbon 我的项目 1.2 批改pom文件eureka-client 中曾经蕴含 ribbon 依赖须要增加 sp01-commons 依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.1.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>cn.tedu</groupId> <artifactId>sp06-ribbon</artifactId> <version>0.0.1-SNAPSHOT</version> <name>sp06-ribbon</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> <spring-cloud.version>Hoxton.RELEASE</spring-cloud.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>cn.tedu</groupId> <artifactId>sp01-commons</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>1.3 批改application.ymlspring: application: name: ribbon server: port: 3001 eureka: client: service-url: defaultZone: http://eureka1:2001/eureka, http://eureka2:2002/eureka1.4 主程序创立 RestTemplate 实例RestTemplate 是用来调用其余微服务的工具类,封装了近程调用代码,提供了一组用于近程调用的模板办法,例如:getForObject()、postForObject() 等package cn.tedu.sp06;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.client.discovery.EnableDiscoveryClient;import org.springframework.context.annotation.Bean;import org.springframework.web.client.RestTemplate;@EnableDiscoveryClient@SpringBootApplicationpublic class Sp06RibbonApplication { //创立 RestTemplate 实例,并存入 spring 容器 @Bean public RestTemplate getRestTemplate() { return new RestTemplate(); } public static void main(String[] args) { SpringApplication.run(Sp06RibbonApplication.class, args); }}1.5 创立 RibbonController 类package com.tedu.sp06.controller;import cn.tedu.sp01.pojo.Item;import cn.tedu.sp01.pojo.Order;import cn.tedu.sp01.pojo.User;import cn.tedu.web.util.JsonResult;import lombok.extern.slf4j.Slf4j;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;import org.springframework.web.client.RestTemplate;import java.util.List;@RestController@Slf4jpublic class RibbonController { @Autowired private RestTemplate rt; @GetMapping("/item-service/{orderId}") public JsonResult<List<Item>> getItems(@PathVariable String orderId) { // 调用近程的商品服务,取得订单的商品列表 // {1} - RestTemplate本人定义的一种站位符格局 return rt.getForObject("http://localhost:8001/{1}", JsonResult.class, orderId); //用 orderId 填充占位符 {1} } @PostMapping("/item-service/decreaseNumber") public JsonResult<?> decreaseNumber(@RequestBody List<Item> items) { return rt.postForObject( "http://localhost:8001/decreaseNumber", items, JsonResult.class); } @GetMapping("/user-service/{userId}") public JsonResult<User> getUser(@PathVariable Integer userId) { return rt.getForObject("http://localhost:8101/{1}", JsonResult.class, userId); } @GetMapping("/user-service/{userId}/score") // ?score=1000 public JsonResult<?> addScore(@PathVariable Integer userId, @RequestParam Integer score) { return rt.getForObject("http://localhost:8101/{1}/score?score={2}", JsonResult.class, userId, score); } @GetMapping("/order-service/{orderId}") public JsonResult<Order> getOrder(@PathVariable String orderId) { return rt.getForObject("http://localhost:8201/{1}", JsonResult.class, orderId); } @GetMapping("/order-service/") public JsonResult<?> addOrder() { return rt.getForObject("http://localhost:8201/",JsonResult.class); }}1.6 启动服务,并拜访测试http://eureka1:2001http://localhost:3001/item-service/35http://localhost:3001/item-service/decreaseNumber应用postman,POST发送以下格局数据:[{"id":1, "name":"abc", "number":23},{"id":2, "name":"def", "number":11}]http://localhost:3001/user-service/7http://localhost:3001/user-service/7/score?score=100http://localhost:3001/order-service/123abchttp://localhost:3001/order-service/ ...

December 21, 2020 · 3 min · jiezi

关于intellij-idea:SpringClub02注册中心eureka

二、注册核心1.eureka介绍eureka是微服务零碎的外围服务作用:注册和发现所有服务启动,都要把本人的地址注册到注册核心;要调用其余服务,从注册核心取得注册表,来发现其余服务。服务id主机地址item-service---localhost:8001user-service---localhost:8101order-service---localhost:8201 2.eureka的工作机制:注册 服务提供者启动时,会一次次重复尝试向eureka注册,直到注册胜利为止拉取 消费者每30秒拉取一次注册表,来刷新注册表心跳 服务提供者,每30秒向eureka发送一次心跳数据eureka服务器如果间断3次收不到一个服务的心跳,会删除这个服务的注册信息自我保护模式 如果因为网络不稳固,15分钟内,85%的服务器呈现心跳异样,会主动进入自我保护模式所有注册信息都不会删除等网络复原后,能够主动退出保护模式,恢复正常开发调试期间,能够禁用保护模式,防止影响测试3.搭建eureka服务器3.1 创立eurekaserver我的项目 3.2 编辑pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.1.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>cn.tedu</groupId> <artifactId>sp05-eureka</artifactId> <version>0.0.1-SNAPSHOT</version> <name>sp05-eureka</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> <spring-cloud.version>Hoxton.RELEASE</spring-cloud.version> </properties> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>3.3 批改application.yml首先将application.propertie改为application.yml ...

December 18, 2020 · 1 min · jiezi

关于intellij-idea:SpringClub01基础建设

一、SpringClub1. spring cloud 介绍spring cloud 是一系列框架的汇合。它利用 spring boot 的开发便利性奇妙地简化了分布式系统基础设施的开发,如服务发现注册、配置核心、音讯总线、负载平衡、断路器、数据监控等,都能够用 spring boot 的开发格调做到一键启动和部署。spring cloud 并没有反复制作轮子,它只是将目前各家公司开发的比拟成熟、经得起理论考验的服务框架组合起来,通过 spring boot 格调进行再封装屏蔽掉了简单的配置和实现原理,最终给开发者留出了一套简略易懂、易部署和易保护的分布式系统开发工具包。spring cloud 对于中小型互联网公司来说是一种福音,因为这类公司往往没有实力或者没有足够的资金投入去开发本人的分布式系统基础设施,应用 spring cloud 一站式解决方案能在从容应对业务倒退的同时大大减少开发成本。同时,随着近几年微服务架构和 docker 容器概念的火爆,也会让 spring cloud 在将来越来越“云”化的软件开发格调中立有一席之地,尤其是在目前形形色色的分布式解决方案中提供了标准化的、一站式的技术计划,意义可能会堪比当年 servlet 标准的诞生,无效推动服务端软件系统技术水平的提高。 2. spring cloud 技术组成 eureka微服务治理,服务注册和发现ribbon负载平衡、申请重试hystrix断路器,服务降级、熔断feignribbon + hystrix 集成,并提供申明式客户端hystrix dashboard 和 turbinehystrix 数据监控zuulAPI 网关,提供微服务的对立入口,并提供对立的权限验证config配置核心bus音讯总线, 配置刷新sleuth+zipkin链路跟踪3. Spring Cloud 比照 Dubbo Dubbo Dubbo只是一个近程调用(RPC)框架默认基于长连贯,反对多种序列化格局Spring Cloud 框架集提供了一整套微服务解决方案(全家桶)基于http调用, Rest API二、业务服务 商品服务 item service,端口 8001用户服务 user service,端口 8101订单服务 order service,端口 82011. 创立commons 通用我的项目1.1 新建 maven 我的项目 ...

December 18, 2020 · 13 min · jiezi

关于intellij-idea:Intellij-IDEA和EclipsE之间的的全面对比

两个IDE之中我最罕用的快捷键: 编辑器很多时候咱们在编辑一个文件,同时还须要编辑其余的文件。如果FF类是一个常常编辑的类,同时又须要对同一个包中的其余类进行编辑—通过链接编辑器的性能,能够迅速在同包的类之间进行切换。这个性能为咱们提供了什么样的便当?每当编辑了一个文件,它会立刻显示其所在包浏览器视图/我的项目视图中的地位。如果应用展开式的包视图,它会按性能对类划分并显示,而不应用分层(dao层, service层等)的形式来展现类。这也是我强烈推荐的展现形式,因为真的很不便。 Eclipse 在工程浏览视图或者包浏览视图能够看到并应用链接编辑器(Link to Editor)的按钮。 如果不想应用该性能,仍然能够应用Alt+Shift+W快捷键来查看包视图或工程视图并设置其显示地位。  IntelliJ 在工程视图或者包视图中抉择设置,而后勾选依据源码主动滚动(Autoscroll From Source)性能; 如果不想应用该性能,仍然能够应用快捷键Alt+F1来导航并设置显示的地位; 主动实现  主动实现使得IDE比notepad更加优良,在这个畛域能感知上下文的IDEA有了质的飞跃。例如,咱们开始如下一行代码: findElement(By.id("error"), vim当初咱们想要查找以vim结尾的选项有哪些。 IDEA怎么做的呢?无需期待任何的按键,它马上就能了解findElement须要一个Conditaion类的示例作为第二个参数,而在Condition类中有一个动态变量名叫visible。IDEA会间接倡议这个惟一的无效选项。 然而,Eclipse会怎么做呢?唉,它不能了解上下文,它不晓得光标所在处就是assertElement办法的第二个参数。因而当你按下“神圣”的Ctrl+Space时,Eclipse只会简略的显示全局中以vi字母结尾的所有。 在一个漂亮的弹出框中我看到了很多丑陋的高亮的格局标准的无用的信息.:( 内存占用 - 说起内存,IDEA仿佛比Eclipse更消耗内存。我没有这方面的代表性基准,然而我晓得当初我家里的16 GB RAM对于开发大型项目来说太小了,不过始终没换。不过这不碍事啊, 从第三次科技反动以来, 人类就始终在做着以空间换工夫, 以存储老本换效率的损事, just kiddin, 这是趋势, 当前的app和ide都会变得越来越大(但并不代表越来越慢)  我用mongodb的时候也有这种感触, 就是越先进的IDE和性能越弱小的app都是以内存为代价的... IntelliJ的魅力之处默认设置了许多的性能 IntelliJ自身就自带了泛滥的性能(如:GitHub的集成)。当然,在Eclipse你也能够通过抉择不同版本的插件来获取到足够的性能,只是须要本人来配置这些插件。 应用鼠标滚轮扭转字体大小 在IntelliJ中,能够应用鼠标滚轮来扭转字体大小(我在浏览器中常常应用该性能)。然而这个性能须要手动激活。 关上IDE的设置(Ctrl+Shift+S或点击 文件菜单>Setting)在编辑器页面(在搜寻框中输出“Editor”),确保Change font size (Zoom) with Ctrl+MouseWheel这个选项被选中。在IDE中间接启动命令行终端 应用快捷键: Alt + F12 灵便易用的模板 输出p,而后应用快捷键Ctrl+J,就能够获取以下选项: psf – public static finalpsfi – public static final intpsfs – public static final Stringpsvm – main method declaration对JavaScript、HTML5的强力反对 ...

December 11, 2020 · 1 min · jiezi

关于intellij-idea:使用IntelliJ-IDEA-配置Maven入门

首先申明,本文非EamonSec原创,转自哪儿我当初也不晓得了,可能被我转的人也不是原创。。。 1. 下载Maven 官网地址:http://maven.apache.org/download.cgi 解压并新建一个本地仓库文件夹 2.配置本地仓库门路   3.配置maven环境变量      4.在IntelliJ IDEA中配置maven 关上-File-Settings  5.新建maven WEB我的项目 关上-File-New-Project 点击NEXT  点击NEXT  增加的配置为 archetypeCatalog=internal 点击NEXT  点击NEXT  点击Finish后我的项目开始创立 点击右下角查看进去  6.maven web模板我的项目构造   同样在main下新建test测试文件夹,再在此文件夹下新建Java测试源码文件夹和resource测试资源文件夹  也能够右键我的项目-抉择Open Module Settings关上我的项目配置页面更改  7.配置依赖jar包  jar包配置搜寻 官网地址:http://mvnrepository.com/

December 10, 2020 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA-20203正式发布年度最后一个版本很讲武德

仰不愧天,俯不愧人,内不愧心。关注公众号【BAT的乌托邦】,有Spring技术栈、MyBatis、JVM、中间件等小而美的原创专栏供以收费学习。分享、成长,回绝浅尝辄止。本文已被 https://www.yourbatman.cn 收录。 ✍前言你好,我是YourBatman。 2020庚子年是载入史册的一年,但对Jetbrain公司来说却是它的20周年。上个较大版本的公布,要追溯到8月份了:时隔近4个月,北京工夫2020-12-01深夜,IntelliJ IDEA再迎更新,这是2020年的第三个里程碑版本。踩着2020年的尾巴,Jetbrain团队实现了他们的“KPI”:交付了第三次里程碑版本。 最近几个版本的介绍这里可电梯中转: IntelliJ IDEA 2020.2正式公布,诸多亮点总有几款能助你提效IntelliJ IDEA 2020.1正式公布,你要的Almost都在这!IntelliJ IDEA 2019.3正式公布,给咱们带来哪些新个性?✍注释咱们晓得,Jetbrain公司它几乎就是个IDE工厂,产出过各种语言应用IDE,并且每个IDEA都做得都十分优良,傲视群雄。本次除了公布最受注目的IntelliJ IDEA外,其它兄弟也相继'out'了(红红绿绿的几乎亮瞎眼): 阐明:Go语言用的IDE Goland本次公布的是Release Candidate而非正式Release,还得过个几天(不会扣Goland团队年终奖吧)这么多兄弟能基于在简直同一时间公布,有充沛的理由置信它们应用的是同一基座,所以做到了统一的体验、统一的稳固、统一的优良、统一的吃吃吃内存。IntelliJ IDEA作为最为闻名的代表作,能够说是咱们Java程序员的饭碗呀,接下来就来看看咱们的新碗带来了哪些好玩的货色呢。 what’s new(新个性)此版本在调试器中增加了交互式提醒和嵌入式监督,改良了对Java 15的反对,并引入了对Git暂存的反对以及其它各种性能。而后呢,有些界面上也面目一新了,做了从新设计。 依照常规,先来张启动图新老比照:设计师领盒饭去吧,我感觉这个启动图很难再有提高了。 1、全新的欢送屏幕老的在这:这个不得不夸:提高了,更大气更不便了。此次IntelliJ IDEA欢送屏幕通过从新设计,初始向导已替换为蕴含四个标签疾速进入: 项目管理我的项目自定义设置IDE插件装置理解IntelliJ IDEA的拜访帮忙和学习资源 如果你是IDEA的高级使用者,或者想再学习一次IDEA,从这个页面点进去将会非常适合你2、IDE主题已与操作系统设置同步IntelliJ IDEA当初能够将其主题与您的OS主题同步。勾选后,如果你的操作系统选用暗色主题,IDEA也会主动切换主题,爱护双眼。 留神,有一点官网并未做出阐明:此性能windows 7不反对,此性能windows 7不反对,此性能windows 7不反对,亲测截图为证:可能你会说:为毛当初还有人用win 7?呃呃呃,我刚从XP降级上来...... 3、一键进入阅读器模式这个性能很赞,对浏览源码很有帮忙。 默认状况在Reader模式下关上只读文件(也能够是本我的项目的只读文件)和来自内部库(Jar内)的文件,正文就像被格式化过一样,不便浏览。如下图示意你以后正在以浏览模式看此文件: 开启浏览模式的成果:像看web页面敞开浏览模式的成果:像看html源代码简略的说:阅读器模式就是帮你翻译了一下javadoc,更适宜源码浏览。默认状况下是敞开的,倡议你全局开启(或者在页面右上角独自点击开启亦可): 3、LightEdit模式优化还记得LightEdit模式吗?它是在2020.1版本(2020-04公布)引进的新性能:本次改良:当初要从命令行以LightEdit模式关上文件,只需idea -e xxx命令即可(若-e后不写文件名,那就关上上次刚关上的文件)。 我集体感觉此性能鸡肋,至多对我来说很鸡肋,只玩过没理论用过,毕竟只关上一个文件的话我用一般编辑器更轻量些不香吗? 4、改良的拼写查看一句话:就是帮你查看你的单词是不是拼写错了,并且给出倡议(可自定义字典):看起来挺智能,理论然并卵,毕竟咱们办法名起个都吃力,还用应为写正文?拼写查看可作用在doc正文上、字符串上。但不可查看变量名、办法名上~ 对于大多数程序员来说(如果你不做开源我的项目,个别拼错无所谓),倡议敞开拼写查看,毕竟它还是耗性能的,特地是windows用户(手动o(╥﹏╥)o)。 5、更强的Serch Everywhere这个搜寻更加弱小了:新增了对git的反对,能够依据commit id等git相干元素进行搜寻啦。 老的:新的:减少了Git Refs选项(暂疏忽Calc)当初如果你只晓得一个commit id就能够拿去搜啦~ 6、浏览我的项目新增预览模式提效神器,如下图(Project视窗):点击(Project视窗)右上角设置图标,把图中红框部门勾选上就开启预览模式浏览我的项目,就开启了预览模式。 什么叫预览模式:之前关上文件你须要双击,当初光标定位在哪个文件就显示哪个其对应内容,所以就反对键盘操作啦(高低键、tab键),不必依赖鼠标真的非常不便,提效神器啊。 7、在IDEA外部间接更新JDK在之前版本介绍中晓得当初能够在IDEA外部间接下载JDK(非Oracle官网的),这次更狠:能够在IDEA内间接降级JDK了(若有更新的话)。 我集体感觉此性能鸡肋,毕竟JDK谁会轻易去换呢。毕竟你发任你发,我用Java 8。 8、拖拽标签页有些时候咱们心愿在解决一个我的项目时多关上几个选项卡(毕竟咱们外接屏幕比拟大嘛),有点分屏的意思。以前解决起来比拟艰难:先选中标签页右键,而后抉择适合的split形式。当初很简略啦:能够通过拖放文件选项卡来程度或垂直地宰割编辑器如果想分屏的文件不在顶部选项卡里,IDEA也为你思考到了,最近文件里也给你提供了入口: 8、IDEA设为某些文件默认关上程序感觉IDEA的强占欲越来越强了啊,它不仅仅只想做个开发用的IDE,咱们的文本编辑工作它都想接管。这不你能够设置某些类型的文件默认关上程序为IDEA了: 9、调试器 - 交互式提醒当你在debug模式下运行时,能够间接点击变量前面的“小按钮”,弹出交互式窗口,从而可间接批改其值(做小家),大大不便了调试:老版这里是木有可点按钮的:若想要批改变量的值,失去底部的专门的窗口来,并且还得右键,抉择set value能力达到目标,门路还是蛮长的: 10、调试器 - 内联watches这也是调试的时候常常用到的一个性能:watch察看一个表达式的值。这在新版本里操作不便到令人发指:点击这个按钮后就把i退出察看了,间接在程序里就能够察看到:所见即所得若是以前版本的IDEA:哎哟麻烦,技术真的具备不可逆性,用过就回不去喽。 11、Profiler - 更弱小的分析器工具窗口Profiler性能在2020.1就引入了,过后作为一个试验性能,然而Jetbrain承诺未来的方向会始终迭代它,而后它变得越来越强了。 ...

December 4, 2020 · 1 min · jiezi

关于intellij-idea:idea使用经常出现的一些问题及解决方案

idea再应用过程中经常出现的一些问题汇总1、在切换输入法时,间断两次ctrl键调出全局搜寻?(1)按住ctrl+shift+A,关上搜寻框,输出registry(2)点击确定,找到ide.suppress.double.click.handler,选中即可

November 25, 2020 · 1 min · jiezi

关于intellij-idea:IDEA-更改注释字体颜色

IDEA 更改正文字体色彩Settings---->Editor----->Colors Scheme ----->Language Comments目录下的 Block comment 块正文 Line comment 行正文 Doc Comment 类文件

November 19, 2020 · 1 min · jiezi

关于intellij-idea:16动吧旅游生态系统的设计

1 我的项目简介1.1 概述动吧游览生态系统,应市场高端用户需要,决定开发这样的一套游览零碎,此零碎蕴含游览电商零碎(举荐子系统,广告子系统,评估子系统,商品子系统,订单子系统)等,游览分销零碎(分销商的治理),游览业务零碎(产品研发,计调服务,零碎权限管理子系统)等。1.2 原型剖析基于用户需要,进行原型设计(基于html+css+js进行动态页面实现)。例如零碎登录页面:零碎登录胜利页面(例如starter.html)菜单展现页面 2 技术架构2.1 我的项目分层架构本我的项目应用层基于MVC设计思维,进行分层架构设计,目标是将简单问题简单化,实现各司其职,各尽所能.而后基于“高内聚,低耦合”的设计思维,再实现各对象之间协同,从而进步零碎的可维护性,可扩展性。其中:1.凋谢接口层:可间接封装 Service 办法裸露成 RPC (近程过程调用)接口;也可通过 Web 封装成 http 接口;同时也可进行网关安全控制、流量管制等。2.终端显示层:负责各个端的模板渲染并显示。以后次要是 thymeleaf 渲染,JS 渲染,挪动端展现等。3.Web申请解决层:次要是对访问控制进行转发,申请参数校验,响应后果解决等4.Service 层:绝对具体的业务逻辑服务层(外围业务,扩大业务)。 5.Manager 层:通用业务解决层,它有如下特色: 1) 对第三方平台封装的层,预处理返回后果及转化异样信息; 2) 对 Service 层通用能力的下沉,如缓存计划、中间件通用解决; 3) 与 DAO 层交互,对多个 DAO 的组合复用。6.DAO 层:数据拜访层,与底层 MySQL、Oracle、Hbase 等进行数据交互。7.内部接口或第三方平台:包含其它部门RPC凋谢接口,根底平台,其它公司的 HTTP 接口阐明:对如上分层中波及到常识的点,逐渐增强。总之:分层的目标就是将简单问题进行拆解,而后分而治,进而进步零碎的可扩展性以及可维护性。 2.2 API利用架构整体API利用架构: 3 技术整合3.1 环境筹备3.1.1 数据库初始化3.1 启动 MySQL 客户端并登陆,而后执行1) set names utf8;2) source d:/dbpms.sql阐明:如果在 mysql 客户端查问表中数据,能够先执行 set names gbk,否则可能会出现乱码。还有一点要记住,在拿到任何一个 sql 脚本文件时,不要上来就执行它,要先关上看一看,查看是否有删除库或删除表的语句,这些语句是否会对你以后数据库中的库和表有影响 ,如果有肯定要通过 leader 审批,能力执行删除等操作.3.2 创立我的项目3.2.1 创立我的项目 moudle 各我的项目模块关系设计,如图所示: ...

November 18, 2020 · 2 min · jiezi

关于intellij-idea:IntelliJ-IDEA-超实用技巧分享大大提高编程效率

前言工欲善其事必先利其器 最近受部门的邀请,给入职新人对立培训IDEA,发现有很多新人尽管日常开发应用的是IDEA,然而还是很多好用的技巧没有用到,只是用到一些根本的性能,蛮节约IDEA这个优良的IDE。 同时,在这次分享之后,自己本人也学习到了一些新的应用技巧,所以借着这次机会,一起分享进去。心愿能够帮到一些人。 基于的 IDEA 版本信息:IntelliJ IDEA 2018.2.2 (Ultimate Edition)知识点概览: 高效率配置日常应用 必备快捷键(★★)查找跳转切换编码相干代码浏览相干版本治理相干编码效率相干(★★)文件代码模板实时代码模板其余代码调试 源码浏览相干(★★★)视图模式代码调试...插件方面插件的装置与应用插件举荐参考*高效率配置1\. 代码提醒不辨别大小写Settings -> Editor -> General -> Code Completion (低版本 将 Case sensitive completion 设置为 None 就能够了) 2\. 主动导包性能及相干优化性能Settings -> Editor -> General -> Auto Import 3\. CTRL + 滑动滚轮 调整窗口显示大小Settings -> Editor -> General -> Change font size (Zoom) with Ctrl+Mouse wheel 抉择之后,就能够通过CTRL+滑动滚轮的形式,调整编辑器窗口的字体大小 4\. tab 多行显示这点因人而异,有些人喜爱间接勾销所有tab,改用快捷键的形式,我屏幕比拟大,所以喜爱把tab全副显示进去。 Window -> Editor Tabs -> Tabs Placement,勾销勾选 Show Tabs In Single Row选项。 ...

November 17, 2020 · 2 min · jiezi

关于intellij-idea:08SpringBootMyBatisSpring-技术整合实现商品模块的CRUD操作

业务形容基于Spring,MyBatis,SpringBoot,Thymeleaf技术实现商品模块的增删改查操作。 数据库初始化关上mysql控制台,而后按如下步骤执行goods.sql文件。第一步:登录mysql。 mysql –uroot –proot第二步:设置控制台编码方式。 set names utf8;第三步:执行goods.sql文件(切记不要关上文件复制到mysql客户端运行)。 source d:/goods.sql其中goods.sql文件内容如下: drop database if exists dbgoods;create database dbgoods default character set utf8;use dbgoods;create table tb_goods( id bigint primary key auto_increment, name varchar(100) not null, remark text, createdTime datetime not null)engine=InnoDB;insert into tb_goods values (null,'java','very good',now());insert into tb_goods values (null,'mysql','RDBMS',now());insert into tb_goods values (null,'Oracle','RDBMS',now());insert into tb_goods values (null,'java','very good',now());insert into tb_goods values (null,'mysql','RDBMS',now());insert into tb_goods values (null,'Oracle','RDBMS',now());insert into tb_goods values (null,'java','very good',now());创立我的项目并增加依赖第一步:基于start.spring.io 创立我的项目并设置根本信息 ...

October 26, 2020 · 3 min · jiezi

关于intellij-idea:06SpringBoot工程下Spring-MVC技术的应用

Spring MVC 简介背景剖析在大型软件系统设计时,业务个别会绝对简单,如果所有业务实现的代码都纠缠在一起,会呈现逻辑不清晰、可读性差,保护艰难,改变一处就牵一发而动全身等问题。为了更好解决这个问题就有了咱们当初常说的分层架构设计。 MVC 是什么MVC是一种软件架构设计思维,基于MVC架构将咱们的应用软件进行分层设计和实现,例如能够分为视图层(View),管制层(Controller),模型层(Model),通过这样的分层设计让咱们程序具备更好的灵活性和可可扩展性.因为这样能够将一个简单应用程序进行简化,实现各司其职,各尽所能.比拟适宜一个大型利用的开发. Spring MVC 概述Spring MVC是MVC设计思维在Spring框架中的一种实现,基于这样的思维spring框架设计了一些相干对象,用于更好的基于MVC架构解决申请和响应,其繁难架构如图所示: 其中:1)DispatcherServlet是客户端所有申请解决的入口,负责申请转发。2)RequestMapping负责存储申请url到后端handler对象之间的映射。3)Handler 用于解决DispatcherServlet对象转发过去的申请数据。4)ViewResolver负责解决所有Handler对象响应后果中的view。 Spring MVC 疾速入门筹备工作第一步:创立我的项目module,根本信息如图所示: 第二步:增加我的项目依赖(能够在module创立时,也能够创立后),代码如下: Spring Web 依赖(提供了spring mvc反对并且会嵌入一个tomcat) <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency>Thymeleaf 依赖(提供了以html作为页面模板进行解析和操作的相干对象) <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>第三步:启动我的项目检测控制台启动状态是否OK statics 目录剖析及利用statics 目录为springboot工程创立时增加了web依赖当前主动创立的目录,此目录中能够存储html、css、js、html等相干资源,这些资源能够在启动服务器当前,间接在浏览器进行拜访。例如:第一步:在statics目录下创立一个index.html页面,代码如下: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body> <h1>The First Html Page</h1></body></html>第二步:启动服务器并间接进行拜访测试,如图所示 templates 目录剖析及利用templates 目录为springboot工程创立时增加了thymeleaf依赖当前主动创立的目录,此目录中要存储一些html模板,这个模板页面不能间接通过浏览器url进行拜访,须要基于后端控制器,在办法中定义页面响应,例如: 第一步:定义TemplateController及办法,代码如下: package com.cy.pj.health.controller;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestMapping;@Controllerpublic class TemplateController { @RequestMapping("doTemplateUI") public String doTemplateUI(){ return "default"; }}第二步:在templates目录中定义模板页面default.html,代码如下: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body> <h1>The Default Template page</h1></body></html>其中,如果default.html要在放在templates子目录中,则还须要在配置文件中配置thymeleaf的前缀,例如: ...

October 24, 2020 · 2 min · jiezi

关于intellij-idea:02IDE工具之IDEA中Module的创建及Git基本操作

创立我的项目Module并运行创立并运行java module在IDEA关上的我的项目中创立Java Module,如图所示: 在创立Java Module的界面,抉择Next,输出module名,如图所示: Java Module创立好当前的构造,如图所示: 在我的项目模块01-javase中创立包,例如: 在指定包中创立类,如图所示: 运行Java类,如图所示: 创立并运行Maven Module在我的项目中,创立maven module,如图所示: 接下来,输出module根本信息,如图所示: 关上pom.xml文件,增加Junit依赖,如图所示: 创立包、单元测试类和办法,进行单元测试,如图所示: 创立并运行Spring Initializr Module在我的项目中,创立Spring Initializr Module,如图所示: 接下来输出Spring Initializr Module信息,如图所示: 抉择springboot版本,依赖,而后进入一下,如图所示: 输出module信息,而后实现Module的创立,如图所示: Spring Initializr Module创立好当前,其构造如图所示: Module创立好当前,能够关上pom.xml文件,批改其springboot版本,如图所示: SpringBoot 版本批改好当前(可选),向pom.xml右键,抉择Add as Maven Project 选项,进行maven我的项目构建(此时才会springboot 依赖下载和编译),例如: Module 构建实现,关上启动类运行module,如图所示: Module胜利启动和运行后果,如图所示: 基于Git的我的项目操作查看Git配置。找到Git配置选项,进行Git测试,如图所示: 我的项目Push操作剖析及实现将我的项目、Module推送的Gitee近程代码托管平台,如图所示: 指定Gitee仓库的仓库名(库不存在,推送时主动创立),如图所示: 登陆Gitee,查看近程仓库内容,如图所示: ...

October 23, 2020 · 1 min · jiezi

关于intellij-idea:05SpringBoot工程中的MyBatis框架的整合实现及原理分析

整合MyBatis的初步剖析概述Mybatis是一个优良的长久层框架,底层基于JDBC实现与数据库的交互。并在JDBC操作的根底上做了封装和优化,它借助灵便的SQL定制,参数及后果集的映射形式,更好的适应了以后互联网技术的倒退。Mybatis框架的简略利用架构如图所示:在当今的互联网利用中我的项目,mybatis框架通常会由spring框架进行资源整合,作为数据层技术实现数据交互操作。 筹备工作第一步:创立我的项目module,例如: 第二步:增加依赖 mysql 驱动依赖 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope></dependency>spring jdbc 依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jdbc</artifactId></dependency>mybatis starter依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.1</version></dependency> 第二步:application.properties 配置文件中增加繁难配置 连接池配置 spring.datasource.url=jdbc:mysql:///dbgoods?serverTimezone=GMT%2B8&characterEncoding=utf8spring.datasource.username=rootspring.datasource.password=rootmybatis配置 mybatis.mapper-locations=classpath:/mapper/*/*.xml环境测试代码实现在src/test/java目录中增加测试类,对mybatis框架整合进行根本测试,代码如下: package com.cy.pj.goods.dao;import java.sql.Connection;import org.apache.ibatis.session.SqlSession;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;@SpringBootTestpublic class MyBatisTests { @Autowired private SqlSession sqlSession; @Test public void testGetConnection() { Connection conn=sqlSession.getConnection(); System.out.println("connection="+conn); }}在SpringBoot脚手架工程中,Spring框架会基于MyBatis框架底层配置,创立SqlSessionFactory对象,而后再通过此工厂对象创立SqlSession,最初基于Springku框架为测试类注入SqlSession对象,接下来,咱们能够通过SqlSession对象实现与数据库的会话了。 整合MyBatis业务代码实现及原理剖析业务形容基于SpringBoot脚手架工程对MyBatis框架的整合,实现对商品库中商品数据的查问业务。 API架构设计 业务时序图剖析 业务代码设计及实现第一步:定义商品模块POJO对象类型(基于此对象存储商品数据),代码如下: package com.cy.pj.goods.pojo;import java.util.Date;/**用于存储商品信息的pojo对象*/public class Goods { private Long id; private String name; private String remark; private Date createdTime; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getRemark() { return remark; } public void setRemark(String remark) { this.remark = remark; } public Date getCreatedTime() { return createdTime; } public void setCreatedTime(Date createdTime) { this.createdTime = createdTime; }}第二步:定义商品模块长久层对象GoodsDao接口及办法映射,代码如下 ...

October 22, 2020 · 2 min · jiezi

关于intellij-idea:01IDE工具之IDEA的简介下载与安装初步配置

IDEA简介概述IDEA全称是IntelliJ,是JetBrains公司推出一个集成开发工具,是Java开发工具中的翘楚,基于这个开发工具能够疾速开发咱们的Java相干我的项目。绝对于其它开发工具,IDEA提供了更加弱小的提醒性能,全面的快捷键操作,模板代码以及疾速的资源整合。 下载与装置筹备工作硬件(Hardware)要求1)内存8G或以上2)硬盘磁盘闲暇空间大于5GB,最好有一块固态硬盘。 软件(Software)要求1)Microsoft Windows 8 or later2)macOS 10.13 or later3)Any Linux distribution4)Set Up and Config JDK1.8 IDEA工具下载IDEA官网下载地址如下: https://www.jetbrains.com/idea/基于操作系统的不同,能够抉择不同平台下的IDEA,例如: 阐明:至于社区版(性能受限的免费版)/还是商业版(可试用)自行决定。 IDEA工具装置IDEA 下载当前须要进行装置进行应用。如果只是下载的解压版本,则能够将其拷贝到非中文目录,而后间接解压进行利用。如果下载的可执行程序(例如windows平台下的.exe文件)则间接启动可执行程序,而后依照提醒,一步一步装置即可。 IDEA官网帮忙文档文档参考如下: https://www.jetbrains.com/help/idea/discover-intellij-idea.htmlIDEA工具启动找到解压或装置好的idea根目录,而后进入bin目录找到idea.bat或者idea64.exe文件,而后间接双击进行启动,第一个启动欢送界面如图所示: 在第一个界面出现过程中,其实是IDEA底层在进行启动初始化,如果是第一次启动,稍等片刻会进入第二个界面,例如: 在第二个界面中,咱们先抉择创立新我的项目(New Project),而后进入创立我的项目的界面,这里咱们先抉择创立空我的项目,如图所示: 抉择好Empty Project当前,点击next进入我的项目的设计,如图所示: 在下面图中,点击Finish按钮实现我的项目的创立,进入IDEA的我的项目工作窗口,如图所示: IDEA 根本配置Appearance(显示)主题配置 KeyMap(快捷键)配置 Editor(编辑区)配置General 配置滚轮滑动,扭转字体大小配置,如图所示:包导入配置,如图所示:行号与办法分隔符配置,如图所示:代码提醒配置,如图所示:代码补全配置,如图所示: Font 配置代码编辑区字体配置,如图所示:控制台字体配置,如图所示: Color 配置代码中的正文色彩配置,如图所示: File 编码配置 Build 执行配置Compiler(编译配置)主动编译配置(可选),选上了可能会比较慢,如图所示: Build Tools 中的Maven配置Maven 初始化配置(如果已有配置好的,能够应用已有的配置)找到你磁盘中的maven根目录下的conf目录,并关上conf目录下的settings.xml文件,而后进行如下配置: 配置maven本地库(从maven近程服务器下载的资源存储到的地位)<localRepository>${user.home}/.m5/repository</localRepository>配置maven私服(配置到mirrors标签外部)。 <mirror> <id>aliyun</id> <name>aliyun for maven</name> <mirrorOf>*</mirrorOf> <url>https://maven.aliyun.com/repository/public</url> </mirror>配置maven中的profile(配置到profiles标签外部),设置JDK编译和运行版本。 <profile> <id>jdk-1.8</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8 </maven.compiler.compilerVersion> </properties> </profile>IDEA 中集成Maven配置找到Build Tools/Maven选项,而后在IDEA中集成本地maven配置。如图所示: ...

October 22, 2020 · 1 min · jiezi

关于intellij-idea:04SpringBoot工程下如何实现对HikariCP连接池的整合

池化思维剖析池化思维是咱们我的项目开发过程中的一种十分重要的思维,如整数池,字符串池,对象池、连接池、线程池等都是池化思维的一种利用,都是通过复用对象,以缩小因创立和开释对象所带来的资源耗费,进而来晋升零碎性能。例如Integer对象的外部池利用,代码如下: package com.cy.java.pool;public class TestInteger01 { public static void main(String[] args) { Integer n1=100;//Integer.valueOf(100) 编译时优化 Integer n2=100; Integer n3=200; Integer n4=200;//池中没有则new Integer(200) System.out.println(n1==n2);//true System.out.println(n3==n4);//false } }数据库连接池简介背景剖析目开发过程中应用程序与数据库交互时,“取得连贯”或“开释连贯”是十分耗费系统资源的两个过程,频繁地进行数据库连贯的建设和敞开会极大影响零碎的性能,若多线程并发量很大,这样耗时的数据库连贯就可能让零碎变得卡顿。因为TCP连贯的创立开销非常低廉,并且数据库所能承载的TCP并发连接数也有限度,针对这种场景,数据库连接池应运而生。如下图所示: 思考:如果当初是让你去设计一个连接池,你会从什么角度进行设计?第一:物理存储构造(基于什么构造去存储数据)第二:基于什么算法从池中取连贯?第三:基于什么算法从池中移除连贯?第四:当池中没有连贯时,基于什么形式解决连贯申请?第五:池是能够共享,咱们须要思考池在拜访的时并发平安? 连接池原理剖析在零碎初始化的时候,在内存中开拓一片空间,将肯定数量的数据库连贯作为对象存储在对象池里,并对外提供数据库连贯的获取和偿还办法。用户拜访数据库时,并不是建设一个新的连贯,而是从数据库连接池中取出一个已有的闲暇连贯对象;应用结束偿还后的连贯也不会马上敞开,而是由数据库连接池对立治理回收,为下一次借用做好筹备。如果因为高并发申请导致数据库连接池中的连贯被借用结束,其余线程就会期待,直到有连贯被偿还。整个过程中,连贯并不会敞开,而是源源不断地循环应用,有借有还。数据库连接池还能够通过设置其参数来管制连接池中的初始连接数、连贯的上上限数,以及每个连贯的最大应用次数、最大闲暇工夫等,也能够通过其本身的管理机制来监督数据库连贯的数量、应用状况等。 Java中的连接池Java官网,为了在应用程序中更好的利用连接池技术,定义了一套数据源标准,例如javax.sql.DataSource接口,基于这个接口,很多团队或集体创立了不同的连接池对象。而后咱们的应用程序中通过耦合与DataSource接口,便能够不便的切换不同厂商的连接池。Java我的项目中通过连接池获取连贯的一个根本过程,如下图所示: 在上图中,用户通过DataSource对象的getConnection()办法,获取一个连贯。如果池中有连贯,则间接将连贯返回给用户。如果池中没有连贯,则会调用Dirver(驱动,由数据库厂商进行实现)对象的connect办法从数据库获取,拿到连贯当前,能够将连贯在池中放一份,而后将连贯返回给调用方。连贯需求方再次须要连贯时,能够从池中获取,用完当前再还给池对象。 数据库连接池在Java数据库相干中间件产品群中,应该算是底层最根底的一类产品,作为企业应用开发必不可少的组件,有数蠢才们为咱们奉献了一个又一个的优良产品,它们有的随时代倒退,功成身退,有的则还在一直迭代,老而弥坚,更有新生代产品,或性能无敌,或性能全面。目前市场上常见的连接池有DBCP、C3P0,DRUID,HikariCP等。SpringBoot工程下HikariCP整合测试数据初始化关上mysql控制台,而后按如下步骤执行goods.sql文件。第一步:登录mysql。 mysql –uroot –proot第二步:设置控制台编码方式。 set names utf8;第三步:执行goods.sql文件(切记不要关上文件复制到mysql客户端运行)。 source d:/goods.sql其中goods.sql文件内容如下: drop database if exists dbgoods;create database dbgoods default character set utf8;use dbgoods;create table tb_goods( id bigint primary key auto_increment, name varchar(100) not null, remark text, createdTime datetime not null)engine=InnoDB;insert into tb_goods values (null,'java','very good',now());insert into tb_goods values (null,'mysql','RDBMS',now());insert into tb_goods values (null,'Oracle','RDBMS',now());insert into tb_goods values (null,'java','very good',now());insert into tb_goods values (null,'mysql','RDBMS',now());insert into tb_goods values (null,'Oracle','RDBMS',now());insert into tb_goods values (null,'java','very good',now());创立我的项目Module并增加相干依赖第一步:基于IDEA创立我的项目Module,如图所示: ...

October 21, 2020 · 2 min · jiezi

关于intellij-idea:03基于IDEA创建SpringBoot项目并进行入门分析

Spring Boot 背景剖析JAVAEE利用体系中沉重的配置、低下的开发效率、高难度的三方集成,简单的部署流程等等始终被开发人员所诟病。即便是应用Spring这样的轻量级的资源整合框架,在实现其绝对比拟多的资源整合时,仍旧须要大量的手动依赖治理,简单的XML配置(还常常没有提醒)。还有就是当初的软件生态利用也曾经造成肯定的规模,零碎架构正在从单体架构,分布式架构,逾越到微服务架构。随着整个架构体系的变动,企业对技术的要求也在变动,当初的企业更重视技术的开箱即用,更重视技术在生态圈中的深度交融,更重视轻量级的运维。由此由此spring boot诞生。 Spring Boot 要解决什么问题Spring Boot是由Pivotal团队提供的全新的Java软件开发框架(很多人当初把它了解为一个脚手架),其设计目标是用来简化Spring我的项目的初始搭建以及开发过程。该框架应用了特定的注解形式来进行配置,从而使开发人员不再须要大量的xml配置。不再须要大量的手动依赖治理。Spring Boot基于疾速构建理念,通过约定大于配置,开箱即用的形式,心愿可能在蓬勃发展的疾速利用开发畛域成为其领导者。 Spring Boot 有哪些外围的要害个性起步依赖(Starter Dependency)。主动配置(Auto Configuration)。健康检查(Actator)-监控。嵌入式服务(Tomcat,Jetty)。SpringBoot 我的项目创立创立Module基于IDEA创立我的项目Module,模块名为04-springboot-start,组id和包名为com.cy,如图所示:填写module信息,如图所示:抉择我的项目module版本,临时不须要本人手动增加任何依赖,如图所示:填写Module名称,实现module创立,如图所示 我的项目构造剖析我的项目Module创立好当前,其代码构造剖析,如图所示: SpringBoot 我的项目启动剖析启动入口SpringBoot 工程中由SpringBootApplication注解形容的类为启动入口类,例如: package com.cy;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplicationpublic class Application {//Application.class public static void main(String[] args) {//Main Thread SpringApplication.run(Application.class, args); }}启动过程概要剖析SpringBoot工程启动时其繁难初始化过程,如图所示: 在启动过程中底层做了哪些事件,大抵形容如下:1)基于配置加载类(通过ClassLoader将指定地位的类读到内存->底层通过线程调用IO从磁盘读取到内存)。2)对类进行剖析(创立字节码对象-Class类型,通过反射获取器配置信息)。3)对于指定配置(例如由spring特定注解形容)的对象存储其配置信息(借助BeanDefinition对象存储)。4)基于BeanDefinition对象中class的配置构建类的实例(Bean对象),从进行bean对象的治理。 SpringBoot 疾速入门剖析业务形容在我的项目Module中定义一个类,类名为DefaultCache,而后将此类对象交给Spring创立并治理。最初通过单元测试对类的实例进行剖析。 API设计剖析基于业务形容,进行API及关系设计,如图所示: 代码编写及运行基于业务及API设计,进行代码编写,其过程如下: 第一步:定义DefaultCache类 package com.cy.pj.common.cache;import org.springframework.stereotype.Component;/** * @Component 注解形容的类,示意此类交给Spring框架治理。 */@Componentpublic class DefaultCache {}第二步:定义DefaultCacheTests单元测试类 package com.cy.pj.common.cache;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;public class DefaultCacheTests { /** * @Autowired 注解形容的属性由spring框架依照肯定规定为其注入值(赋值) * 赋值过程是怎么的? * 1)依赖查找?(请问查找规定是什么?) * 2)依赖注入?(须要借助什么技术?) */ @Autowired private DefaultCache defaultCache; @Test void testDefaultCache(){ System.out.println(defaultCache.toString()); //FAQ? defaultCache变量援用的对象是由谁创立的,存储到了哪里?bean pool }}第三步:运行单元测试类进行利用剖析启动运行单元测试办法,检测其输入后果,基于后果剖析:1)SpringBoot我的项目中Bean对象的构建。2)SpringBoot我的项目中Bean对象的获取。 ...

October 21, 2020 · 1 min · jiezi

关于intellij-idea:02IDEA中Module的创建及Git基本操作

创立我的项目Module并运行创立并运行java module在IDEA关上的我的项目中创立Java Module,如图所示: 在创立Java Module的界面,抉择Next,输出module名,如图所示: Java Module创立好当前的构造,如图所示: 在我的项目模块01-javase中创立包,例如: 在指定包中创立类,如图所示: 运行Java类,如图所示: 创立并运行Maven Module在我的项目中,创立maven module,如图所示: 接下来,输出module根本信息,如图所示: 关上pom.xml文件,增加Junit依赖,如图所示: 创立包、单元测试类和办法,进行单元测试,如图所示: 创立并运行Spring Initializr Module在我的项目中,创立Spring Initializr Module,如图所示: 接下来输出Spring Initializr Module信息,如图所示: 抉择springboot版本,依赖,而后进入一下,如图所示: 输出module信息,而后实现Module的创立,如图所示: Spring Initializr Module创立好当前,其构造如图所示: Module创立好当前,能够关上pom.xml文件,批改其springboot版本,如图所示: SpringBoot 版本批改好当前(可选),向pom.xml右键,抉择Add as Maven Project 选项,进行maven我的项目构建(此时才会springboot 依赖下载和编译),例如: Module 构建实现,关上启动类运行module,如图所示: Module胜利启动和运行后果,如图所示: 基于Git的我的项目操作查看Git配置。找到Git配置选项,进行Git测试,如图所示: 我的项目Push操作剖析及实现将我的项目、Module推送的Gitee近程代码托管平台,如图所示: 指定Gitee仓库的仓库名(库不存在,推送时主动创立),如图所示: 登陆Gitee,查看近程仓库内容,如图所示: ...

October 21, 2020 · 1 min · jiezi

关于intellij-idea:IDE最新激活持续更新

请看集体网址http://tech.yuwowugua.com/?p=471

October 10, 2020 · 1 min · jiezi

关于intellij-idea:多年总结IDEA-使用技巧-建议收藏

很长一段时间没有更新了,前段时间转测试了,节约了一些工夫,终于能够写文章了,明天来写一下之前本人开发的一些习惯,因为本人自身本人是一个极简主义所以 开发喜爱这样:。 全屏显示咱们能够应用【Presentation Mode】,将IDEA弄到最大,能够让你只关注一个类外面的代码,进行毫无烦扰的coding。 能够应用Alt+V快捷键,弹出View视图,而后抉择Enter Presentation Mode。成果如下: 鼠标移上去就会这样显示工夫, 是不是很酷,移开就是全屏空想一下,下雨天,你全屏显示敲代码,那样的宁静,那样的惬意,那样的简洁 点击 Appearance ---> Exit Persenetation Mode,简略点说就是退出进入全屏模式 ,如果你相对菜单栏还不难看,你也能够抉择敞开勾上这些就能够复原原来的样子,最初再点 Exit Distraction Free Mode 这个模式的益处就是,能够让你更加专一,因为你只能看到特定某个类的代码。可能读者会问,进入这个模式后,我想看其余类的代码怎么办?这个时候,就要考验你快捷键的熟练程度了。你能够应用CTRL+E弹出最近应用的文件。又或者应用CTRL+N和CTRL+SHIFT+N定位文件。如何退出这个模式呢?很简略,应用ALT+V弹出view视图,而后抉择Exit Presentation Mode 即可。然而我强烈建议你不要这么做,因为你是能够在Enter Presentation Mode模式下在IDEA外面做任何事件的。当然前提是,你对IDEA足够纯熟。 分屏操作这样看代码,集体认为比拟难受在某一个类下面右键刚刚下面是垂直,上面是程度 屏幕太多了,始终用鼠标也比拟麻烦,这里咱们能够间接 Ctrl+E 进行页面切换 除了 Ctrl+E 还能够只用 ,Ctrl+Alt+ 方向键进行切换视图 编译我的项目有的时候,咱们我的项目扭转并不是很大,其实不必热部署,间接编译就好了,这样能够达到疾速重启的目标背景变护眼绿,很多人喜爱那种花里胡哨的背景插件,其实相对来说,我更喜爱护眼的绿色 门路:File->Settings->Editor->Color Scheme->General 设置成 C7EDCC AutoCompletion输入篇疾速输入 当咱们要输入某一段内容的时候,很多人习惯想到 sout + Tab 这是咱们IDEA 的输入快捷键 ,然而其实开源更简略 ,大家能够, 输入一段字符,在点 sout,这样就间接输入啦这里就懒得做gif动图,间接截图的好 写成这样 而后加个 Tab 键 疾速定义成员变量 有时候咱们想要定义一个成员变量,怎么办,通常都是间接把光标移入到 全局作用域的中央 ,输出咱们要定义的变量名, 而后在 输入 ,有了上面的形式就好啦首先 写一个字符串,点一个 fi , ps: (field就是属性的英文) 就会呈现提醒, 点上来,就会神奇的 飞到全局作用域中去啦 ...

October 7, 2020 · 2 min · jiezi

关于intellij-idea:IDEA-20202-最新破解教程有效期到2089年

这段时间泛滥粉丝私信说须要IDEA 2020.2 最新激活教程,于是!他来了他带着最新激活教程来了。 留神: 本教程实用于 JetBrains 全系列产品 IDEA 2020.2 以下所有版本,请释怀食用~ 一、下载最新的 IDEA 2020 版本安装包能够抉择从 IDEA 官网下载: https://www.jetbrains.com/ide... 点击下载,下载实现即可。 二、开始激活1、 下载实现后,双击 ideaIU-2020.2.exe,关上装置软件;PS: 确保电脑没有装置老版本软件,如有请卸载。 2、 装置目录抉择; 3、 按本人电脑配置勾选: 4、 点击 next, 安心期待其装置实现: 5、 装置实现后,勾选 Run IntelliJ IDEA,点击 finish 运行软件: 6、 会先弹出一个注册框,勾选 Evaluate for free, 点击 Evaluate: 7、 扫描关注上面公众号,回复“IDEA” 失去的 2020 版本文件夹中的激活补丁 jetbrains-agent-latest.zip拖入 IDEA 界面中 补丁请关注微信公众号,回复关键词 “IDEA” 获取 2020 版本文件夹中的激活补丁。留神:补丁拖不进去,请重启 IDEA ,新建一个Java 我的项目,写一个空的 main 办法,再次试试补丁,拖不进去,请重启 IDEA ,新建一个Java 我的项目,写一个空的 main 办法,再次试试留神:激活补丁,拖进去之后,激活补丁的地位不要更换,不要删除。否则激活之后还会生效留神:激活补丁,拖进去,等于是程序,帮你去写一个激活补丁的地位,你换补丁jar地位,或者,删除补丁jar,就找不到激活补丁了8、 拖入补丁后会弹框,点击 restart 重启 idea: ...

September 28, 2020 · 1 min · jiezi

关于intellij-idea:02IDE工具之IDEA的基本应用

创立我的项目Module并运行创立并运行java module在IDEA关上的我的项目中创立Java Module,如图所示: 在创立Java Module的界面,抉择Next,输出module名,如图所示: Java Module创立好当前的构造,如图所示: 在我的项目模块01-javase中创立包,例如: 在指定包中创立类,如图所示: 运行Java类,如图所示: 创立并运行Maven Module在我的项目中,创立maven module,如图所示: 接下来,输出module根本信息,如图所示: 关上pom.xml文件,增加Junit依赖,如图所示: 创立包、单元测试类和办法,进行单元测试,如图所示: 创立并运行Spring Initializr Module在我的项目中,创立Spring Initializr Module,如图所示: 接下来输出Spring Initializr Module信息,如图所示: 抉择springboot版本,依赖,而后进入一下,如图所示: 输出module信息,而后实现Module的创立,如图所示: Spring Initializr Module创立好当前,其构造如图所示: Module创立好当前,能够关上pom.xml文件,批改其springboot版本,如图所示: SpringBoot 版本批改好当前(可选),向pom.xml右键,抉择Add as Maven Project 选项,进行maven我的项目构建(此时才会springboot 依赖下载和编译),例如: Module 构建实现,关上启动类运行module,如图所示: Module胜利启动和运行后果,如图所示: 提交我的项目到Gitee平台Commit 我的项目将写好的我的项目、Module增加到暂存区,提交(Commit)本地库,例如: 如果,团队中其余成员须要这个我的项目、Module时能够间接进行克隆。 Push 我的项目将我的项目、Module推送的Gitee近程代码托管平台,如图所示: 指定Gitee仓库的仓库名(库不存在,推送时主动创立),如图所示: ...

September 24, 2020 · 1 min · jiezi

关于intellij-idea:IDEA的相关知识

根本意识src:所有代码都写在src文件下的外部,不能写在它的里面。.iml文件不相干,是idea的相干配置信息。src--右键--新建(new)--Package--输出包名(规定:应用数字、英文小写和英文句点)新建helloworld程序:包--右键--new--java class--取名idea主动保留主动编译,右键抉择绿三角运行。敞开我的项目 File--close Project导入module File--Project Structure--Modules--点击“+"--import module--抉择所在位置IDEA的根本配置字体:File--Settings..--Editor--FrontFile--Settings..--keymap--右小齿轮--Main menu--code--Completion--basic--设置成Alt+/。IDEA的罕用快捷键Alt+Enter ----------导入包,主动修改代码ctrl+Y --------------删除光标所在行ctrl+D---------------复制光标所在行的内容,插入光标地位上面。ctrl+Alt+L-----------格式化代码ctrl+/ ----------------单行正文,再按勾销正文。(不必选全)ctrl+shift+/ ---------多行正文,再按勾销。(要选全)Alt+Ins --------------主动生成代码Alt+shift+高低箭头 --------挪动以后代码行

September 24, 2020 · 1 min · jiezi

关于intellij-idea:IDEA-的使用

创立java工程工程下的.idea和project01.iml都是IDEA工程特有的,相似于Eclipse工程下的.setting、.classpath、.project等。 创立模块(Module)1.Eclipse中的workspace相当于IDEA中的Project Eclipse中的Project相当于IDEA中的Module2.IDEA不能再同一个窗口中治理n个我的项目,如果要关上多个我的项目。即:一个Project关上一个window窗口3.一个我的项目中能够有多个Module。目前支流的大型项目都是分布式部署的,构造都是相似于这种多Module构造。 模块之间彼此能够相互依赖。通过这些Module的命名能够看出。他们之间都是出于同一个我的项目业务下的模块。彼此之间是不可分割的业务关系的。

September 22, 2020 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA-Maven-项目如何自动导入设置

在晚期的 IntelliJ IDEA 版本中,IntelliJ IDEA 可能自动检测 pom 文件的批改,而后主动导入须要的包。 这个性能的争议比拟多,有好有不好。 益处是,你可用专一你 pom 文件的批改和抉择,不好的中央是拖慢零碎并且导致重编译谬误等等。 在 2020.2.1 的版本后,IntelliJ IDEA 提供了一个小浮动窗口可用让你在实现配置后能够进行手动导入。 如何启用主动导入很多人可能会感觉 IntelliJ IDEA 勾销了主动导入。 其实在 2020.1 的版本上就曾经勾销了,然而用户对这个性能争议比拟多,还是心愿 IntelliJ IDEA 可能将主动导入这个性能增加进来。 在 2020.2.1 这个版本上就曾经能够设置主动导入了。 依照上面的办法,抉择主动导入设置: 在弹出的界面中抉择任何批改: 针对任何的批改,就能够让 IntelliJ IDEA 对批改进行主动导入了。 如果你不抉择任何批改,只抉择内部批改的话。 那么只有在你 IntelliJ IDEA 通过 Git 或者其余代码管制,进行批改的时候,或者切换不同的分支的时候 IntelliJ IDEA 才会对 pom 文件进行刷新导入。 https://www.ossez.com/t/intellij-idea-maven/506

September 22, 2020 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA-如何配置数据源

在 IntelliJ IDEA 中,能够通过关上 Data Sources and Drivers 对话框来配置数据源和测试你的数据库连贯。 可能没有方法应用快捷键,尽管如同有快捷键是 shift + enter,然而在 IntelliJ IDEA 中会换行,并且将光标挪动到第一行。 能够用上面的办法: 双击 shift ,而后在 Action 中输出 data source,或者 Shift+Ctrl+A 间接输出。 IJ-data-source-01674×680 34.8 KB 而后抉择,就能够关上 Data Sources and Drivers 对话框了。 单击右上角的 + 号,能够抉择增加数据源。 如果你抉择的数据库没有装置驱动的话,IJ 会提醒你进行装置。 如下图,提醒驱动没有装置,你须要进行装置。 对驱动进行配置你可用抉择不同的驱动版本,在左侧的驱动对话框中,你可用针对不同的数据源定义不同的驱动和装置不同的驱动版本。 例如针对 MariaDB 数据库。 你可用在左侧中抉择 MariaDB 的驱动。 针对下面驱动的版本号单击后,你能够抉择装置不同的驱动版本。 而后单击窗口的利用就能够实现配置了。 https://www.ossez.com/t/intellij-idea/501

September 20, 2020 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA-20202正式发布诸多亮点总有几款能助你提效

向工具人致敬。本文已被 https://www.yourbatman.cn 收录,外面一并有Spring技术栈、MyBatis、JVM、中间件等小而美的专栏供以收费学习。关注公众号【BAT的乌托邦】一一击破,深刻把握,回绝浅尝辄止。 前言各位小伙伴大家好,我是A哥。IDEA上个较大版本的公布,要追溯到4月份了:时隔近4个月,北京工夫2020-07-28深夜,IntelliJ IDEA再迎更新,这是2020年的第二个里程碑版本。 之前提到过,2020年是Jetbrain公司的20周年(小伙子长成大男孩了),有理由置信官网会立些Flag。所以自从官网在2020-01-20公布了其2020年的Roadmap后,我集体是有放弃继续关注的,毕竟一方面是公司20周年,另一方面是21世纪的“新10年”,这么好的契机很适宜搞事件。 上个版本(2020.1)公布后,带来了泛滥实用新个性,比方:中文反对、禅模式、Javadoc渲染等等,某些新性能能够显著提高效率,因而反应是一片叫好。独一无二,作为2020年的第二个里程碑版本,它能给咱们带来什么样的期许呢? 注释依照常规,来一张最新版IDEA启动图尝尝鲜:我把2020.1版本启动图也扔在这供你比照,哪个更好看? what’s new(新个性)IntelliJ IDEA 2020.2做的改良重点体现在齐全管制GitHub申请,包含在IDE中审查、合并 GitHub PR等。同时还提供了对Java15、Jakarta EE 9的反对,还包含Quarkus、microaut等等。 1、反对Java 15只管Java 15将在9月公布,IntelliJ IDEA 2020.2曾经提前为此做好了筹备,反馈不可为不灵便,给个大大的赞????。 阐明:Java 15新个性啥的本文不提,毕竟这不是本文关注点所在题外话:从JDK9之后,Oracle采纳了新的公布周期:每6个月公布一个版本,每3年公布一个LTS版本。JDK15是继JDK9之后公布的第七个版本, 该版本仍旧为非LTS版本,最新的LTS版本为JDK11(JDK17还未公布)。 2、相干问题内嵌提醒这个性能十分好用,特地对有些不应用RENAME性能的小伙伴来说是福音。 如果您通过更改具备内部应用的类、办法或字段的签名而引入了编译谬误,IDE将用镶嵌提醒告诉您。单击相干嵌入提醒,IDE将主动帮你关上Find工具窗口,列出了在内部文件中产生的所有相干问题。 看完这段话是不是还有点蒙,来吧,A哥给你筹备了示例: Person.java文件: public class Person { public String eat(String food) { return "SUCCESS"; }}Demo.java文件: public class Demo { public static void main(String[] args) { new Person().eat("大鱼"); new Person().eat("大肉"); }}这时编译必定一切正常。当初我做出扭转:更改Person类的eat()办法名为eatDish(),后果如下图:鼠标单击提醒,主动帮你关上Find框且定位到问题所在:就问你,这个性能爽不爽,实用不实用? 小贴士:在同一个.java文件内(即便是不同class),是不会相似提醒的哦3、运行时异样起因剖析一听这个性能名称,就感觉很厉害。疾速定位问题始终是程序员的痛点,当初让工具来辅助你实现,效率更上一层楼。 新版IDEA为异样堆栈跟踪剖析增加了数据流剖析。点击堆栈跟踪时,IDE 可能会将您带到代码中出现异常的确切地位,并提供倡议来帮忙您理解产生此谬误的起因。 上面用一个NPE异样作为示例感触一把,代码如下: public static void main(String[] args) { Integer i = null; System.out.println(i.toString());}运行程序,抛出异样,控制台显示:如红框所示,IDEA给出的倡议是让咱们创立一个断点,单击此“按钮”即弹出断点创立对话框:不得不说,真的是不便了很多。 ...

July 29, 2020 · 1 min · jiezi

关于intellij-idea:IntelliJ-IDEA-20202正式发布诸多亮点总有几款能助你提效

向工具人致敬。本文已被 https://www.yourbatman.cn 收录,外面一并有Spring技术栈、MyBatis、JVM、中间件等小而美的专栏供以收费学习。关注公众号【BAT的乌托邦】一一击破,深刻把握,回绝浅尝辄止。 前言各位小伙伴大家好,我是A哥。IDEA上个较大版本的公布,要追溯到4月份了:时隔近4个月,北京工夫2020-07-28深夜,IntelliJ IDEA再迎更新,这是2020年的第二个里程碑版本。 之前提到过,2020年是Jetbrain公司的20周年(小伙子长成大男孩了),有理由置信官网会立些Flag。所以自从官网在2020-01-20公布了其2020年的Roadmap后,我集体是有放弃继续关注的,毕竟一方面是公司20周年,另一方面是21世纪的“新10年”,这么好的契机很适宜搞事件。 上个版本(2020.1)公布后,带来了泛滥实用新个性,比方:中文反对、禅模式、Javadoc渲染等等,某些新性能能够显著提高效率,因而反应是一片叫好。独一无二,作为2020年的第二个里程碑版本,它能给咱们带来什么样的期许呢? 注释依照常规,来一张最新版IDEA启动图尝尝鲜:我把2020.1版本启动图也扔在这供你比照,哪个更好看? what’s new(新个性)IntelliJ IDEA 2020.2做的改良重点体现在齐全管制GitHub申请,包含在IDE中审查、合并 GitHub PR等。同时还提供了对Java15、Jakarta EE 9的反对,还包含Quarkus、microaut等等。 1、反对Java 15只管Java 15将在9月公布,IntelliJ IDEA 2020.2曾经提前为此做好了筹备,反馈不可为不灵便,给个大大的赞????。 阐明:Java 15新个性啥的本文不提,毕竟这不是本文关注点所在题外话:从JDK9之后,Oracle采纳了新的公布周期:每6个月公布一个版本,每3年公布一个LTS版本。JDK15是继JDK9之后公布的第七个版本, 该版本仍旧为非LTS版本,最新的LTS版本为JDK11(JDK17还未公布)。 2、相干问题内嵌提醒这个性能十分好用,特地对有些不应用RENAME性能的小伙伴来说是福音。 如果您通过更改具备内部应用的类、办法或字段的签名而引入了编译谬误,IDE将用镶嵌提醒告诉您。单击相干嵌入提醒,IDE将主动帮你关上Find工具窗口,列出了在内部文件中产生的所有相干问题。 看完这段话是不是还有点蒙,来吧,A哥给你筹备了示例: Person.java文件: public class Person { public String eat(String food) { return "SUCCESS"; }}Demo.java文件: public class Demo { public static void main(String[] args) { new Person().eat("大鱼"); new Person().eat("大肉"); }}这时编译必定一切正常。当初我做出扭转:更改Person类的eat()办法名为eatDish(),后果如下图:鼠标单击提醒,主动帮你关上Find框且定位到问题所在:就问你,这个性能爽不爽,实用不实用? 小贴士:在同一个.java文件内(即便是不同class),是不会相似提醒的哦3、运行时异样起因剖析一听这个性能名称,就感觉很厉害。疾速定位问题始终是程序员的痛点,当初让工具来辅助你实现,效率更上一层楼。 新版IDEA为异样堆栈跟踪剖析增加了数据流剖析。点击堆栈跟踪时,IDE 可能会将您带到代码中出现异常的确切地位,并提供倡议来帮忙您理解产生此谬误的起因。 上面用一个NPE异样作为示例感触一把,代码如下: public static void main(String[] args) { Integer i = null; System.out.println(i.toString());}运行程序,抛出异样,控制台显示:如红框所示,IDEA给出的倡议是让咱们创立一个断点,单击此“按钮”即弹出断点创立对话框:不得不说,真的是不便了很多。 ...

July 29, 2020 · 1 min · jiezi

关于intellij-idea:springboot概述以及使用idea创建一个springboot工程

1 Spring Boot 简介1.1 Spring Boot 概述当初软件市场曾经造成肯定的规模,零碎架构的复杂度也越来越高(例如有单体架构,分布式架构,微服务架构)。软件的整个架构体系正在产生很大变动,在这种变动中,企业当初更重视技术的开箱即用,更重视技术在生态圈中的深度交融,更重视轻量级的运维。由此spring boot诞生。 阐明:学技术肯定要理解技术发展史,并对技术的倒退有肯定的前瞻性。 1.2 Spring Boot 外围个性Spring boot是一个脚手架(而非框架),构建于Spring框架(Framework)根底之上,基于疾速构建理念,提供了主动配置性能,可实现其开箱即用个性(创立完一个根本的我的项目当前,可零配置或者大量配置即可运行咱们的我的项目),其外围次要有如下几个方面: 起步依赖(Starter Dependency)。主动配置(Auto Configuration)。健康检查(Actator)-监控。其中,Spring Boot官网地址为[https://spring.io/projects/sp...] 2.1 筹备工作工具下载 下载JDK1.8,并进行环境变量配置(如果已有则无需再次下载和配置)。下载最新maven(例如apache-maven-3.6.3,网址[http://maven.apache.org/]并解压。3.1 配置Maven 4.1 IDEA 集成Maven1.关上File 点击setting2.点击maven,依照图中所示指定配置好maven目录和setting文件 5.1 应用IDEA创立一个简略Java我的项目1.点击File - New - Project 创立一个JavaProject 指定JDK版本点击Next(集体习惯创立一个Java project后,在外面再创立一个Module,相比起每创立一个我的项目都要创立一个Project,集体更习惯在一个空的Project里,创立一个Module,具体看集体爱好。) 6.1 应用IDEA创立一个SpringBoot我的项目1.删除多余的src文件夹,使目录更加清晰 2.在我的项目上右键 - new - Module 点击next指定jdk的版本,这里应用的是JDK8须要留神的是应用IDEA创立一个springboot时,artifact中的命名不能应用大写,而在https://start.spring.io/这个...。 3.抉择要应用的框架,不过这儿只做一个简略的springboot,就不抉择了,在开发时依据需要,自行抉择 点击next 4.springboot创立实现 5.进行测试点击run当控制台输入这段信息时,则阐明一个springboot我的项目创立胜利了

July 28, 2020 · 1 min · jiezi

关于intellij-idea:springboot概述以及使用idea创建一个springboot工程

1 Spring Boot 简介1.1 Spring Boot 概述当初软件市场曾经造成肯定的规模,零碎架构的复杂度也越来越高(例如有单体架构,分布式架构,微服务架构)。软件的整个架构体系正在产生很大变动,在这种变动中,企业当初更重视技术的开箱即用,更重视技术在生态圈中的深度交融,更重视轻量级的运维。由此spring boot诞生。 阐明:学技术肯定要理解技术发展史,并对技术的倒退有肯定的前瞻性。 1.2 Spring Boot 外围个性Spring boot是一个脚手架(而非框架),构建于Spring框架(Framework)根底之上,基于疾速构建理念,提供了主动配置性能,可实现其开箱即用个性(创立完一个根本的我的项目当前,可零配置或者大量配置即可运行咱们的我的项目),其外围次要有如下几个方面: 起步依赖(Starter Dependency)。主动配置(Auto Configuration)。健康检查(Actator)-监控。其中,Spring Boot官网地址为[https://spring.io/projects/sp...] 2.1 筹备工作工具下载 下载JDK1.8,并进行环境变量配置(如果已有则无需再次下载和配置)。下载最新maven(例如apache-maven-3.6.3,网址[http://maven.apache.org/]并解压。3.1 配置Maven 4.1 IDEA 集成Maven1.关上File 点击setting2.点击maven,依照图中所示指定配置好maven目录和setting文件 5.1 应用IDEA创立一个简略Java我的项目1.点击File - New - Project 创立一个JavaProject 指定JDK版本点击Next(集体习惯创立一个Java project后,在外面再创立一个Module,相比起每创立一个我的项目都要创立一个Project,集体更习惯在一个空的Project里,创立一个Module,具体看集体爱好。) 6.1 应用IDEA创立一个SpringBoot我的项目1.删除多余的src文件夹,使目录更加清晰 2.在我的项目上右键 - new - Module 点击next指定jdk的版本,这里应用的是JDK8须要留神的是应用IDEA创立一个springboot时,artifact中的命名不能应用大写,而在https://start.spring.io/这个...。 3.抉择要应用的框架,不过这儿只做一个简略的springboot,就不抉择了,在开发时依据需要,自行抉择 点击next 4.springboot创立实现 5.进行测试点击run当控制台输入这段信息时,则阐明一个springboot我的项目创立胜利了

July 28, 2020 · 1 min · jiezi