在一个 Grails 项目里面,我想写一个过滤不良信息的 Service,而将过滤的规则放置在 xml 文件之中。...Grails 运行时出现中文问题,并且不止是页面,在 filter 方法里面就已经无法正确显示中文,而 Service 中同样的代码在普通 Groovy 应用程序中就没有中文问题。...按照以前 J2EE 开发的经验,尝试使用如下方法: String result=new String(testString.getBytes("iso-8859-1"),"UTF-8") 依旧乱码……...> 仍然无效…… ---- 琢磨了半天,得出解决方案: 譬如打算将整个项目编码统一成 UTF-8 格式的,我使用 Eclipse 开发,我的 Eclipse 默认的的编码是 GBK 的,那么这个可以保持不变...注意:这样的后果是项目 groovy 等文件中原本使用 GBK 的中文会变成乱码!因此请选择合适的编码。 之后删除运行参数-Dfile.encoding=UTF-8。
简介 本篇博客介绍一下在Intellij IDEA下对Springboot类型的项目的远程调试功能。...所谓的远程调试就是服务端程序运行在一台远程服务器上,我们可以在本地服务端的代码(前提是本地的代码必须和远程服务器运行的代码一致)中设置断点,每当有请求到远程服务器时时能够在本地知道远程服务端的此时的内部状态...填写name,配置Host地址(远程服务器地址)和端口(选一个未被占用的端口)。...经过以上步骤,已经获得了启动远程服务器的参数。在启动springboot时默认使用java命令来启动。...启动完成,对需要debug的代码打上断点,剩下的操作步骤就是访问远程服务器对应的业务请求,本地就会同步debug。其余的操作与本地debug相同,此处就不再赘述了。
文章目录 调试的重要性 配置断点 启动调试 利用 IntelliJ IDEA 的调试功能 观察变量和表达式 单步执行和逐级跳转 查看调用栈 条件断点 监视变量 远程调试 使用断点条件和日志 调试最佳实践...提高开发效率: 通过快速发现和解决问题,你可以更快地开发和测试代码。 现在,让我们来看看如何使用 IntelliJ IDEA 的调试功能来实现这些好处。...接下来,我们将探讨如何有效地使用 IntelliJ IDEA 的调试功能。 利用 IntelliJ IDEA 的调试功能 观察变量和表达式 在调试模式下,你可以查看变量的当前值以及表达式的计算结果。...查看调用栈 调试时,了解方法调用的层次结构非常重要。你可以使用 IntelliJ IDEA 的调用栈视图查看方法的调用关系。...调试最佳实践 为了更有效地使用 IntelliJ IDEA 的调试功能,以下是一些调试最佳实践: 使用版本控制: 在调试之前,确保你的代码已经提交到版本控制系统(如Git)。
博主说:在调试代码的过程中,为了更好的定位及解决问题,有时候需要我们使用远程调试的方法。在本文中,就让我们一起来看看,如何利用 IntelliJ IDEA 进行远程 Tomcat 的调试。...IP 地址; 标注 5:服务器端口号,默认为5005,需要修改为目标服务器的真实端口号; 标注 6:搜索资源是使用的环境变量,默认为,即整个项目。...memory: Windows 系统使用此种传输方式。...然后,复制 标注 1,即 IntelliJ IDEA 自动生产的命令行参数,然后导入到 Tomcat 的配置文件中。...至此,IntelliJ IDEA 远程调试 Tomcat 的配置已经完成了,调试的后续步骤按正常的调试技巧进行就可以啦!
在实际的 Maven 项目开发中,由于项目引入的依赖过多,遇到 jar 冲突算是一个很常见的问题了。在本文中,我们就一起来看看,如何使用 IntelliJ IDEA 解决 jar 包冲突的问题!...其中,只有在点击 标注 2 所示的Dependencies之后,才会显示 标注 3 所示的Show Dependencies按钮。...好办,点击鼠标右键,呼出右键菜单栏,然后点击Actual Size: [autoSize] 如上图所示,项目依赖图的尺寸放大了,这回利于我们排除 jar 包冲突的问题啦!...[conflict] 如果我们仔细观察上图,会发现在项目依赖图中,有一些红色标记的线,实际上,这些红色标记出来的线所指向的 jar 包,就是项目中冲突的 jar 包!...---------- ———— ☆☆☆ —— 返回 -> 史上最简单的 IntelliJ IDEA 教程 <- 目录 —— ☆☆☆ ————
冲突算是一个很常见的问题了。...在本文中,我们就一起来看看,如何使用 IntelliJ IDEA 解决 jar 包冲突的问题!简单粗暴,直接上示例: ?...如上图所示,项目依赖图的尺寸放大了,这回利于我们排除 jar 包冲突的问题啦! ?...如果我们仔细观察上图,会发现在项目依赖图中,有一些红色标记的线,实际上,这些红色标记出来的线所指向的 jar 包,就是项目中冲突的 jar 包!...如上图所示,想要排除冲突的 jar 包,其方法为:点击冲突的 jar 包,右键呼出菜单栏,点击Exclude选项。 ?
本篇开发环境 1、操作系统: Windows 10 X64 2、Java SDK: jdk-8u141 3、Maven:3.5 4、IDE:IntelliJ IDEA 2017 二、调试技巧 设置断点...启动调试 鼠标右键菜单->Run App.main(),或者使用快捷键Shift+F9启动调试 ? 启动调试后,程序启动,并会停留在第一个断点这一行。且这行的代码并未执行。...,可以使用该功能快捷返回。...修改变量值 选中要修改变量,使用快捷键F2进入编辑模式 ? 回车键保存,然后F8进行单步调试 ? 这样,本来运行后result=false,结果由于我们修改了变量的值。...Alt+F10 回到当前待执行,调试过程中如果查看引用的方法跳来跳去,可以使用该功能快捷返回 F8 单步调试:执行一条语句,但是遇到方法调用时不进入,直到方法执行完成后直接继续。
然而,在现网服务器gdb调试python时,却因为缺少乱七八糟的库而无法分析。 所以,最靠谱的办法是gdb generate-core-file 生成core文件,拖回开发机上面分析。...然后,又因为开发机linux发行版比较特殊,死活装不上python的dbg脚本,于是只能人肉跑去ubuntu里拖过来,放到开发机里。我放了一个修改版的到github里了。...目录的对应的gdb脚本;我的python是软链到 usr/local/services/python/bin/python2.7.py的,所以脚本要放到这个路径: /usr/lib/debug/usr/...local/services/python/bin/python2.7-gdb.py 环境搞好后,就可以开心地调试python了!...看了下gdb的脚本和python代码,发现虽然f_code参数被优化掉了,但是co参数、freevars参数还在啊,根据python代码里freevars的用法,只要-1, -2, -3地退格使用,就是对应的
趁手的工具让开发事半功倍,好用的IDEA插件让效率加倍。 今天给大家分享几个优秀的IDEA插件。 图片 插件安装 首先得知道在IDEA哪安装插件?...Codota 代码智能提示插件 图片 只要打出首字母就能联想出一整条语句,这也太智能了,还显示了每条语句使用频率。 原因是它学习了我的项目代码,总结出了我的代码偏好。...PS: 这里也为大家准备了Intellij IDEA正版专属激活码,方便大家使用。关注公众号: 【前端实验室】,回复关键字:cccc222, 即可免费获取激活码。...CheckStyle 代码风格检查插件 功能跟Alibaba Java Coding Guidelines类似 PS: 这里也为大家准备了Intellij IDEA正版专属激活码,方便大家使用。...Rainbow Brackets 彩虹括号插件 图片 成对儿的括号显示相同的颜色,有了这个插件,再也不用满篇找方法的开头和结尾了。分析方法的逻辑时,特别高效。
通常来说,多线程的并发及条件断点的debug是很难完成的,或许本篇文章会给你提供一个友好的调试方法。让你在多线程开发过程中的调试更加的有的放矢。 我们将通过一个例子来学习。...在这里,我编写了一个多线程程序来计算此数学问题:100! + 100000!。即:100的阶乘 + 100000的阶乘。...最后将两个线程的计算结果相加,得到100! + 100000! 下面就让我们使用IntelliJ IDEA工具来调试这段多线程的代码。...因为我们开启的两个线程使用的是同一段代码,所以我们会遇到一个问题-使用该段代码的所有线程遇到断点都将被挂起,包括应用程序的“Thread 1”和“Thread 2”。我不希望两个线程都暂停。...此条件确保调试器仅在当前线程的名称为“Thread 2”时才暂停当前线程: ? 现在执行调试程序,当应用暂停时,仅“Thread 2”被暂停。
是否还记得在博文“ IntelliJ IDEA 安装目录的核心文件讲解 ”中,这张充满神秘色彩的图片呢?进入她,让咱们一起感受她的魅力吧!...在这里,为了进一步介绍 IntelliJ IDEA,咱们创建一个 Static Web 项目,点击Create New Project,进入如下界面: 标注1:IntelliJ IDEA 支持的框架及语言...对于首次创建或打开的新项目,IntelliJ IDEA 都会创建项目索引,大型项目在创建索引的过程中可能会出现卡顿的现象,因此强烈建议在 IntelliJ IDEA 创建索引的过程中不要动项目。...此外,IntelliJ IDEA 的默认界面是隐藏Toolbar和Tool Buttons的,博主比较喜欢把两者显示出来,大家可以按自己的个人爱好选择开启与否。...至此,IntelliJ IDEA 的使用界面介绍完毕。
废话不说了,来看下如何解决 Intellij IDEA 最头大的问题:自定义注释模板。。 IDEA 中有以下两种配置模板。...File and Code Templates Live Templates 下面介绍下这两种的使用方法。...另外,就是设置模板使用的场景,如以下所示,点击 Define 链接,设置类模板只能在 Java 语言下使用。 ? 方法注释和类注释配置一致,配置示例如下: ? ?...'\\n' : '')}; return result", methodParameters()) 而且方法注释这里还有一个坑,使用 mc 时不能在方法上面,要在方法里面使用,不然 @param 带出来的是...好了,今天就深圳了 Intellij IDEA 如何配置文件代码模板、类和方法注释,更多的就去研究这两个菜单吧。
在我们使用 IntelliJ IDEA 的时候,经常会遇到这种情况,即: 从 SVN 检出项目之后,并用 IDEA 首次打开项目,IDEA 会弹出如下选择框: 如上图所示,让我们选择是否将XXX.iml...实际上,XXX.iml文件是 IDEA 自动为我们(首次)打开的项目生成的配置文件,例如我们的项目名为accounting-hessian,那么 IDEA 就自动为我们的项目生产了一个名为accounting-hessian.iml...的配置文件。...同理,当我们在项目中新建文件时,IDEA 也会弹出选择框: 如上图所示,当我们创建了一个名为IdeaTest的 Java 类的时候,IDEA 给出了同样的提示。...最后,我们尝试提交代码,测试 IDEA 的表现: 如上图所示,当我们对第一次弹框选择了No,对第二个弹框选择了Yes,则在提交代码的时候,IDEA 忽略了自动创建的XXX.iml文件,并将我们创建的IdeaTest
在当前使用的 IntelliJ 中的 JDK 版本为 1.8,如何修改 IntelliJ 使用的 JDK 版本为 1.11 呢? 你可以在 IntelliJ 中进行修改。...然后需要在你的项目结构中首先安装不同的 JDK 版本。 ? 选择项目(Project)后选择不同的 JDK 和不同的编译级别。...然后刷新你的项目在进行编译的时候,你会发现你的 IntelliJ 已经使用设置的新 JDK 版本进行编译项目了。 ? 请参考链接有关具体的问答内容:IntelliJ 更改项目使用的 JDK 版本
lombok是一款可以精减java代码、提升开发人员生产效率的辅助工具,利用注解在编译期自动生成setter/getter/toString()/constructor之类的代码。...代码越少,意味着出bug的可能性越低。 官网地址:https://projectlombok.org/ 首页有一段几分钟的演示视频,看完就明白是怎么回事了。...,各种注解的详细用法,请参考:https://projectlombok.org/features/index.html IDEA下使用时,可以通过插件的形式安装,插件下载地址:https://github.com.../mplushnikov/lombok-intellij-plugin/releases 然后 Plugins -> Install plugin from disk......为了让设置生效,建议再重启一次idea,然后就可以开心的编码了,可以ide里可以直接看到生成的方法:(下图中打红圈的都是自动生成的) ?
在当前使用的 IntelliJ 中的 JDK 版本为 1.8,如何修改 IntelliJ 使用的 JDK 版本为 1.11 呢? 你可以在 IntelliJ 中进行修改。...选择 File 后,然后选择 Project Structure 然后需要在你的项目结构中首先安装不同的 JDK 版本。 选择项目(Project)后选择不同的 JDK 和不同的编译级别。...然后刷新你的项目在进行编译的时候,你会发现你的 IntelliJ 已经使用设置的新 JDK 版本进行编译项目了。 请参考链接有关具体的问答内容:IntelliJ 更改项目使用的 JDK 版本
android hooking search classes 包名包含的关键词 # 在内存中所有已加载的类中搜索包含特定关键词的类 android hooking list activities...android heap execute 地址(hashcode的地址) 方法名 # 调用实例的方法 android sslpinning disable #屏蔽SSL 校验, 使得ssl pinning...失效 Memory 指令 memory list modules # 查看内存中加载的库 memory list exports libssl.so #查看库的导出函数 memory list exports...ios keychain dump #就能转储keychain的内容。...有时,我们能够从中发现应用程序存储的敏感信息。 绕过越狱检测 ios jailbreak disable
2、navicat 登录 caching_sha2_password can not be loaded
,给了几个纸糊的建议还是解决不了问题,刚好在开会这事就暂且放下了。...Tips: ndb 是一个开箱即用的 node debugger 工具,不需要做任何配置就能调试 node 应用,非常方便 OK,答案揭晓了,在 ouput.publicPath = './' 场景下会命中这个中间件...比较幸运,publicPath 关键字出现的频率还是比较少的: webpack-dev-middleware/lib/middleware.js 文件中被使用了 1 次 webpack-dev-middleware.../lib/util.js 文件中被使用了 23 次 那,就先挑软柿子捏,看看 middleware.js 文件中是怎么用的: const { getFilenameFromUrl } = require...,逐层解密直到问题的根源
,给了几个纸糊的建议还是解决不了问题,刚好在开会这事就暂且放下了。...node debugger 工具,不需要做任何配置就能调试 node 应用,非常方便 OK,答案揭晓了,在 ouput.publicPath = './' 场景下会命中这个中间件,执行 serveIndex...那就直接搜关键词 publicPath 试试吧: 比较幸运,publicPath 关键字出现的频率还是比较少的: webpack-dev-middleware/lib/middleware.js 文件中被使用了...1 次 webpack-dev-middleware/lib/util.js 文件中被使用了 23 次 那,就先挑软柿子捏,看看 middleware.js 文件中是怎么用的: const { getFilenameFromUrl...值导致默认打开的路径与真正的 index 首页不一致,而且还没返回 「404」 一类通用的错误提示,取而代之以一个不明所以的「文件列表页」,开发者很难迅速 get 到问题到底出在哪 到这里就把问题从表象