IntelliJ IDEA

修改IDEA配置调试JDK代码

ぃ、小莉子 提交于 2020-04-28 16:24:07
有时候在进行源码调试分析时,你可能会想到去调试底层的JDK代码,查看一下底层是如何实现的,其实在你安装JDK的时候,已经默认下载好了JDK的源代码文件到本地: 而你在创建项目中也会将JDK的path根据向导进行配置: 那么我们如何调试JDK的底层源码呢?方法是修改IDEA配置信息: Setting --> Build,Execution,Deployment --> Debugger --> Stepping 把Do not step into the classes中的ajva.*,javax.*取消勾选,其他的随意 来源: oschina 链接: https://my.oschina.net/u/4283164/blog/4256759

SpringBoot系列(十一)拦截器与拦截器链的配置与使用详解,你知道多少?

半腔热情 提交于 2020-04-28 16:14:08
往期推荐 SpringBoot系列(一)idea新建Springboot项目 SpringBoot系列(二)入门知识 springBoot系列(三)配置文件详解 SpringBoot系列(四)web静态资源配置详解 SpringBoot系列(五)Mybatis整合完整详细版 SpringBoot系列(六)集成thymeleaf详解版 Springboot系列(七) 集成接口文档swagger,使用,测试 SpringBoot系列(八)分分钟学会Springboot多种解决跨域方式 SpringBoot系列(九)单,多文件上传的正确姿势 SpringBoot系列(十)优雅的处理统一异常处理与统一结果返回 目录 1. 拦截器介绍 2.自定义拦截器 3.拦截器注入适配器 4.controller测试 5. 测试 6. 扩展内容:拦截器链 7. 总结 1. 拦截器介绍  拦截器是在servlet执行之前执行的程序(这里就是controller代码执行之前),它主要是用于拦截用户请求并作相应的处理,比如说可以判断用户是否登录,做相关的日志记录,也可以做权限管理。  SpringBoot中的拦截器实现和spring mvc 中是一样的,它的大致流程是,先自己定义一个拦截器类,并将这个类实现一个 HandlerInterceptor 类,或者是继承

使用IDEA远程部署tomcat和调试

半世苍凉 提交于 2020-04-28 13:15:53
环境: CentOS 7 Tomcat 9.0.1 jdk-9.0.1 IntelliJ IDEA 2017.3 Tomcat中的配置 在 catalina.sh 文件中加入以下的配置 CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=192.168.19.200 -agentlib:jdwp=transport=dt_socket,address=15833,suspend=n,server=y" export CATALINA_OPTS 以上端口可以随意改动,但是必要的是后续的设置必须保持一致,并且务必保证端口没有被占用,这些设置的端口在防火墙中是开放状态; 其中1099的是tomcat远程部署连接端口; 15833 是远程调试的端口; 192.168.19.200是远程的服务器的Ip。 启动tomcat 使用命令启动 ./bin/catalina.sh run & IDEA中的配置 新建远程tomcat 配置远程服务

分享一个诡异的可见性问题

青春壹個敷衍的年華 提交于 2020-04-28 10:51:25
之前介绍过可见性的特性,最近做测试的时候发现了一个很诡异的问题,下面看看这三个例子。 test1: test1这个例子加了volatile,所以程序正确退出输出test1 end test2: test2这个例子没有加volatile,程序也正常退出并输出一堆0并输出了test2 end,这是为什么呢?没有加volatile为什么也有可见性?看起来是很诡异的问题,问题是在while里面加了一行System..输出问题,打开源码看println方法里面加了synchronized同步块,正是因为这个同步块保证了里面变量x的可见性,这个诡异的问题也就解开了。 test3: test3这个例子即没加volatile,也没有在while里面加System..输出语句,所以线程对变量n3的修改对主线程不可见,程序一直循环,没有输出结果。 推荐去我的博客阅读更多: 1. Java JVM、集合、多线程、新特性系列教程 2. Spring MVC、Spring Boot、Spring Cloud 系列教程 3. Maven、Git、Eclipse、Intellij IDEA 系列工具教程 4. Java、后端、架构、阿里巴巴等大厂最新面试题 觉得不错,别忘了点赞+转发哦! 来源: oschina 链接: https://my.oschina.net/javaroad/blog/4256460

Spark小实例——求文件中的最大值和最小值(IDEA实现)

不问归期 提交于 2020-04-28 09:19:01
Spark小实例——求文件中的最大值和最小值(IDEA实现) 1、所需软件 IDEA开发工具 HDFS分布式文件系统(可选项) spark-2.1.1-bin-hadoop2.7(版本可自选) 2、所需文件(自定义数据即可) 比如: 3、准备IDEA的环境 首先创建项目 导入所需的JAR文件(spark-2.1.1-bin-hadoop2.7) 4、编写Spark程序(创建scala文件) 代码如下: import org.apache.spark.{SparkConf, SparkContext} object MAXandMIN { def main(args: Array[String]): Unit = { val conf = new SparkConf().setAppName("MAX and MIN").setMaster("local") //生成sc对象 val sc = new SparkContext(conf) //设置日志输出格式 sc.setLogLevel("ERROR") //2为设置2个分区 val lines = sc.textFile("hdfs://192.168.169.200:9000/2020/rdd/test/shuzi.txt",2) //过滤没有内容的行 val result = lines.filter(_.trim()

Mac PyCharm2019激活方法

…衆ロ難τιáo~ 提交于 2020-04-28 09:18:17
此教程支持最新2019.2版本Pycharm及其他软件 此教程实时更新,请放心使用;如果有新版本出现猪哥都会第一时间尝试激活; pycharm官网下载地址: http://www.jetbrains.com/pycharm/download/ 此教程适用于本教程对jetbrains全系列可用例:IDEA、WebStorm、phpstorm、clion、goland等。 激活前准备工作 配置文件修改已经不在bin目录下直接修改,而是通过pycharm修改 如果输入code一直弹出来,请去hosts里移除jetbrains相关的项目 激活出问题可扫描下方二维码,加入激活群寻求帮助! 两种激活方式 永久激活:推荐优先使用,永久有效 有效期激活:如果你实在激活不了又着急使用,这是备选激活方案,简单快捷 一、永久激活 1.下载新版破解补丁 点击链接 https://pan.baidu.com/s/112tS3XjAENIHaJ-aSCe0dA 下载补丁文件 jetbrains-agent.jar 并将它放置到 pycharm安装目录的\bin目录:/应用程序/PyCharm.app/Contents/bin下(位置可随意,放这里是怕误操作删除了破解文件)。 2.进入项目界面 如果你之前已经使用有效期激活过可跳过此步骤,如果你是刚下载的pycharm,则需要点击激活窗口的“Evaluate

Mac PyCharm2019激活方法

扶醉桌前 提交于 2020-04-28 09:17:59
此教程支持最新2019.2版本Pycharm及其他软件 此教程实时更新,请放心使用;如果有新版本出现猪哥都会第一时间尝试激活; pycharm官网下载地址: http://www.jetbrains.com/pycharm/download/ 此教程适用于本教程对jetbrains全系列可用例:IDEA、WebStorm、phpstorm、clion、goland等。 激活前准备工作 配置文件修改已经不在bin目录下直接修改,而是通过pycharm修改 如果输入code一直弹出来,请去hosts里移除jetbrains相关的项目 激活出问题可扫描下方二维码,加入激活群寻求帮助! 两种激活方式 永久激活:推荐优先使用,永久有效 有效期激活:如果你实在激活不了又着急使用,这是备选激活方案,简单快捷 一、永久激活 1.下载新版破解补丁 点击链接 https://pan.baidu.com/s/112tS3XjAENIHaJ-aSCe0dA 下载补丁文件 jetbrains-agent.jar 并将它放置到 pycharm安装目录的\bin目录:/应用程序/PyCharm.app/Contents/bin下(位置可随意,放这里是怕误操作删除了破解文件)。 2.进入项目界面 如果你之前已经使用有效期激活过可跳过此步骤,如果你是刚下载的pycharm,则需要点击激活窗口的“Evaluate

运用Tomcat创建第一个web项目

ⅰ亾dé卋堺 提交于 2020-04-28 08:48:06
<font size=8>运用Tomcat创建第一个web项目</font> 一、了解Web服务器软件 在部署tomcat前,先说一说web服务器软件是用来干什么的?简单来说,就是web容器,可以部署web项目,让用户通过浏览器来访问这些项目。 1、常见的javaweb服务器软件 常见的java相关的web服务器软件: webLogic:oracle公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费的。 webSphere:IBM公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费的。 JBOSS:JBOSS公司的,大型的JavaEE服务器,支持所有的JavaEE规范,收费的。 Tomcat:Apache基金组织,中小型的JavaEE服务器,仅仅支持少量的JavaEE规范servlet/jsp。开源的,免费的。 看到这里明白我们为什么要部署tomcat了吧,画个重点——<免费>!!! 二、亲手部署tomcat 1、部署之前 首先确定你的JDK是否下载及部署好,并注意JDK版本 可以在cmd窗口java -version看一下,这里是我的版本 在这里要注意一下, Tomcat9不支持JDK12.0、12.0+、1.7+版本 如果没安装好JDK的,可以直接百度一下教程非常容易。 2、开始下载 首先访问 http://tomcat.apache.org/

使用Idea当中的快捷键快速查看继承关系或其图表的两种方法

不问归期 提交于 2020-04-28 08:40:40
一、Idea当中有两种方法可以查看继承关系 在Idea当中选中一个类,然后按 Ctrl+H ,可以快速查看当前所选类的继承关系,如下图: ​ 同样选中一个类,按 CTRL+ALT+U ,即可生成当前类的继承关系图,如下图: ​ 二、二者的区别 上述两种方法都能帮我们快速查看类之间的层次关系。 ​ 第一种方法:能帮我们进行筛选,如上图所示一排按钮,从左往右分别是看当前类的父类和子类、查看当前类的父类、查看当前类的子类。但是这种方法 无法帮我们查看接口的继承关系。 第二种方法:无法帮我们进行筛选,但是 可以很直观的将这个类的继承关系图生成出来,并且也能够显示接口的继承关系 。 来源: oschina 链接: https://my.oschina.net/u/4399202/blog/4255784

使用VSCode开发Flutter

梦想的初衷 提交于 2020-04-28 07:24:06
前言 为什么使用VSCode? flutter官方推荐的编辑器有IDEA/Android Studio和VSCode, 之前开发Flutter用的IDEA, 不过IDEA始终比较重,于是换用VSCode 发现开发体验也非常的好。 安装开发环境 安装Flutter 还没有安装flutter的小伙伴可以先看 Flutter Install 或者Google,这里就不贴了。 安装VSCode 本体 语言包插件 VSCode也是flutter官方推荐的编辑器,小伙伴可以先看 官方使用教程 安装Flutter插件 搜索并安装Dart和Flutter插件 验证配置 在终端中运行 flutter doctor ,查看输出是否有问题 或者在VSCode中打开命令面板 找到 Flutter: Run Flutter Doctor 执行 VSCode 命令面板(cmd+shift+p)支持搜索所以一般输入 flutter 就可以方便找到我们需要的命令 使用VSCode开发 新建Flutter项目 在终端中可以使用 flutter create 也可以在VSCode中打开命令面板 找到 Flutter: New Project 执行 Assists & Quick Fixes 命令面板 Quick fix 或者 快速修复 (没错支持中文输入=。=) 或者使用快捷键cmd + . Sort Members