IntelliJ IDEA

如何在本地调试你的 Spark Job

梦想的初衷 提交于 2020-08-11 07:17:25
生产环境的 Spark Job 都是跑在集群上的,毕竟 Spark 为大数据而生,海量的数据处理必须依靠集群。但是在开发Spark的的时候,不可避免我们要在本地进行一些开发和测试工作,所以如何在本地用好Spark也十分重要,下面给大家分享一些经验。 首先你需要在本机上安装好了Java,Scala和Spark,并配置好了环境变量。详情请参考官方文档或其他教程。 spark-shell 本地运行Spark最直接的方式就是在命令行里面运行spark-shell,成功后你将看到如下信息: 首先可以仔细阅读一下命令行的提示信息, Picked up _JAVA_OPTIONS: -Xmx512M -Xms512M // _JAVA_OPTIONS是我在系统环境变量里面设置的值 Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties // 告诉你log4j使用配置 Setting default log level to "WARN". // log级别 To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel). // 如何调整log级别 Spark context

IDEA 2020.2 稳定版发布,带来了不少新功能...

…衆ロ難τιáo~ 提交于 2020-08-11 07:05:45
IntelliJ IDEA 2020.2 稳定版已发布,此版本带来了不少新功能,包括支持在 IDE 中审查和合并 GitHub PR、新增加的 Inspections 小组件(Inspections Widget)支持在文件的警告和错误之间快速导航、使用 Problems 工具窗口查看当前文件中的完整问题列表,并在更改会破坏其他文件时收到通知。 此外还有针对部分框架和技术的新功能,包括支持使用 Jakarta EE 9 以及改进对 Quarkus, Micronaut, Amazon SQS API 和 OpenAPI 的支持(适用于旗舰版)。 新版下载地址: https://www.jetbrains.com/idea/download Java 支持 Java 15:更新对 Records 功能的支持,还增加了对 Sealed 类的基本支持。当然也提供了对文本块(Text Blocks)的全面支持 来源: oschina 链接: https://my.oschina.net/u/4399511/blog/4480242

SpringBoot + Shiro + JWT 实现认证和授权

亡梦爱人 提交于 2020-08-11 07:04:34
1、JWT JWT是JSON WEB TOKEN的缩写,它是基于 RFC 7519标准定义的一种可以安全传输的的JSON对象,由于使用了数字签名,所以是可信任和安全的。 1.JWT的组成 JWT token的格式:header.payload.signature header中用于存放签名的生成算法 {"alg": "HS512"} payload中用于存放用户名、token的生成时间和过期时间 {"sub":"admin","created":1489079981393,"exp":1489684781} signature为以header和payload生成的签名,一旦header和payload被篡改,验证将失败 //secret为加密算法的密钥 String signature = HMACSHA512(base64UrlEncode(header) + "." +base64UrlEncode(payload),secret) 2.JWT实现认证和授权的原理 用户调用登录接口,登录成功后获取到JWT的token; 之后用户每次调用接口都在http的header中添加一个叫Authorization的头,值为JWT的token; 后台程序通过对Authorization头中信息的解码及数字签名校验来获取其中的用户信息,从而实现认证和授权。 2、SpringBoot +

解放双手!IDEA常用代码一键补全,你学会了吗?

泪湿孤枕 提交于 2020-08-11 05:35:23
一、常用的代码补全操作 1、.for和.fori(for 循环遍历) 输入 args.for 回车(args是一个数组或集合类),则会生成for循环遍历: 输入 args.fori 回车,则会生成带有索引的for循环遍历语句: 2、sout(控制台输出语句) 代码中输入 sout 回车,会自动生成 System.out.println() 这个控制台输出打印语句: 3、psvm 在代码中输入psvm之后回车 会自动生成main函数,psvm是 public static void main 的首字母: 4、.var(为对象生成声明部分代码) 输入“xxx”.var回车,则会生成如下代码: 输入123.var回车,则会生成如下代码: 输入new ArrayList().var回车,则会生成如下代码: 5、.if(生成 if 语句) 写好一个判断条件之后加上.if,回车: 生成如下的if语句: 6、.null 与 .nn(空、非空判断) 输入args.null回车,则会生成如下代码,判断是否为null: 输入args.nn回车,则会生成如下代码,判断是否不为null: 二、常用快捷键 Ctrl + O 查看我们继承的类或者接口中的方法,以及我们要实现的方法 Ctrl+Alt+T 将代码包在一个块中,例如try/catch ;synchronized等 作用 windows 快捷键

视频上云网关平台EasyCVR如何保证项目数据的安全性和保密性?(后端配置)

纵饮孤独 提交于 2020-08-11 05:34:59
近几年我们总是能看到一些关于手机软件或者电脑软件的安全问题的新闻,隐私安全成为越来越重要的问题。实际上,对于任何一款的软件或者产品开发,其安全性和保密性都是大家比较关注的问题,试问假如软件连数据安全都保证不了,如何让用户放心使用这款产品呢? 因此在视频上云的研发上,我们也将产品安全放在了首位。为了满足EasyCVR的使用需要,我们规定前端的密码不允许明文传输给后端,进行密码验证,因此多了一个对密码进行前端加密和后端解密的过程。 1.以前对加密这块不了解,查阅了很多资料,加密方式很多种,但是大概区分两种,一个就是对称加密(DES,3DES,AES,IDEA等),另外一个就是非对称加密(RSA,Elgamal,背包算法,Rabin,D-H等) 2.这两种区别还是有的,粗浅的说: (1)对称加密方式效率高,但是有泄露风险; (2)非对称加密方式效率比对称加密方式效率低,但是基本上没有泄露风险。 于是采用RSA前端用公钥加密,后端用私钥解密的方案。 由于本文设计的内容比较多,我们先来讲一下后端的设置: 1、先写好RSA工具 2、在配置文件中配置好使用RSA工具生成的私钥 3、在用户登录的事件中,对前端传过来的密码利用私钥进行解密 至此,后端已经配置好了。下面我们到前端的配置,可以点击此处直达: 前端配置 。 来源: oschina 链接: https://my.oschina.net/u

打破你的认知!Java空指针居然还能这样玩,90%人不知道…

心不动则不痛 提交于 2020-08-11 05:34:45
相信在座的各位都遇到过空指针异常,不甚其烦,本文不是教你避免空指针,而是一些对空指针其他方面的理解。 本文可能有点另类,也可能会打破你对空指针的认知。 1、null.method() 空指针? 我们知道调用一个对象的方法,如果对象为 null 肯定会报空指针错误的,但你确定一定会吗? 不一定! 来看下面的示例: /** * 访问静态方法 * @from 微信公众号:Java技术栈 */ private static void test() { NullTest nullTest = null; // hello nullTest.test1("hello"); } /** * @from 微信公众号:Java技术栈 * 关注获取更多好玩的 Java 技术干货 */ private static void test1(String text) { System.out.println(text); } 如果 null 对象指向该类型的静态方法,不但不会报空指针错误,而且还会运行正常,是不是很6? 因为静态方法不属于任何对象,它属于类本身的,相当于直接调用类的静态方法。 2、拆箱空指针 是的,大家要注意拆箱引发的空指针风险,不知道的赶紧往下看,来看下面的例子: /** * 拆箱 * @from 微信公众号:Java技术栈 */ private static void test() {

idea中新导入的项目找不到maven project, 如何解决

你说的曾经没有我的故事 提交于 2020-08-11 05:30:16
刚导入的项目,导入进来之后,找不到maven project,idea打开view ->tool windows下也没有maven模块。查看了setting下plugins中maven插件也在。最后发现项目在导入过程中,因为选择的原因,没有指定位maven工程,所以,需要重新修改项目类型。 选择项目,右键点击,选择第二个项目,添加项目架构支持add frameworkss support, 找到maven,勾选,保存退出即可,这时maven project就出来了,然后重新加载项目。 这里主要是个人的操作失误造成的,提供类似情况的解决方法,供大家借鉴。 来源: oschina 链接: https://my.oschina.net/u/4390196/blog/4446117

Unknown initial character set index '255' received from server. 解决办法 idea

强颜欢笑 提交于 2020-08-11 03:19:52
<property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/YourDatabaseName?useUnicode=true&amp;characterEncoding=utf8"/> <property name="username" value="root"/> <property name="password" value="****"/> 将Mymatis配置文件中对连接数据库的url改为 jdbc:mysql://localhost:3306/?useUnicode=true&characterEncoding=utf8即可 其中的&amp;是单用&会出现非限定字符(实体引用)问题,需要进行转义(根据idea提示修改) 来源: oschina 链接: https://my.oschina.net/u/4013710/blog/4276798