![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 50
eininotop
做更好的自己!
展开
-
hibernate 知识点
一、入门1、对于持久化类的唯一标识,我们通常不会操作,因此它的setter方法的访问级别应该声明private,当对象被保存的时候,只有hibernate可以分它分配值。2、持久化类都要求有无参的构造器,hibernate必须使用java反射机制来创建对象。构造器的访问级别可以是private,然后当生成运行时代理的时候则要求使用至少是package级别的访问控制,这样在没有字节码指令的情况下,从持久化类里获取数据会更有效率。3、generator指定了标识符生成策略,指定native表示根据已原创 2021-07-04 23:24:02 · 298 阅读 · 0 评论 -
jvm性能监控与故障处理工具
学习书籍:深入理解java虚拟机第二版官网学习地址:https://docs.oracle.com/javase/8/docs/technotes/tools/一、jps查看虚拟机进程状况工具jps命令格式: jps [options] [hostid]可选参数options:-q 只输出LVMID,省略主类的名称-m 输出虚拟机进程启动时传递给主类main()函数的参数-l 输出主类的全名,如果进程执行的是jar包,输出...原创 2020-06-27 15:39:14 · 195 阅读 · 0 评论 -
springdata的Slice好处
当后台需要循环处理大批量的数据时,可以使用返回Slice<User>,并通过hasNext()来判断是否还有下一个数据块,从而进行下一次查询。原创 2020-06-26 00:29:51 · 339 阅读 · 0 评论 -
spring-data jpa 的Projections介绍
常见的查询方法,查询都是把Person整个对象查询出来,Projections投影即是只查询部分属性1、关闭的投影:只查询firstname, lastname2、开放的投影:target即是jpa查询出来的Person对象通过默认接口生成拼接的全名如果是比较复杂的生成方式,还可以通过其他类进行方法调用生成还可以加上前缀:投影到dto类3、动态的投影:使用泛型完成动态的投影查询...原创 2020-06-25 18:23:28 · 506 阅读 · 0 评论 -
Collections.synchronizedList转化List为线程安全
当开启多个线程处理数据时,用于存储的ArrayList需要进行转化成线程安全的ArrayList,通过Collections.synchronizedList()public static boolean getSize() throws InterruptedException { final int threadSize = 1000; ListResp example1 = new ListResp(0, Collections.synchronizedList(new ArrayLis原创 2020-06-25 17:44:53 · 678 阅读 · 0 评论 -
(转)开发者常犯的十大加密错误
原文:Top 10 Developer Crypto Mistakes 作者:crazycontini 翻译:Kenneth在经历过成千上百行的代码审计以及在Stack Overflow上阅读了大量有关安全方面的帖子之后,我列出了开发人员常犯的10大加密错误。不幸地是,有问题的加密无处不在。能正确完成加密的次数远远小于不能正确完成的次数。很多问题是由如下两个原因造成的:在默认情转载 2017-05-17 09:33:33 · 803 阅读 · 0 评论 -
Java解惑学习有感(三)---循环之谜
谜题 24 : 尽情享受每一个字节如何将byte类型的数值b与0x90做比较?两种方式:第一种方式:将int类型的0x90转变为byte类型b == (byte)0x90第二种方式:将b转变为int类型b == (byte)0x90若在循环之中,应将0x90定义成常量形式:private static final byte TARGET = (byte)0x90;原创 2017-04-25 22:27:33 · 477 阅读 · 0 评论 -
(转)35 个毁掉你代码的不良习惯 !
作者|Christian Maioli M翻译|Viyi, leoxu, stevobm来源 | https://www.oschina.net/坏习惯很难改变,如果你不知道你的坏习惯正在影响工作,那就更难。如果你知道,但不在乎——这是最糟糕的情况。但好在你已经来这里看了,不是吗? 作为一个程序员,我看到很多不好的做法,不仅仅与代码相关,还包括团队合作能力。我转载 2017-05-16 08:29:12 · 604 阅读 · 0 评论 -
(转)Java 8中你可能没用过的10个特性
来自:deepinmind的技术博客 链接:it.deepinmind.com/java/2014/05/03/10-features-in-java-8-you-havent-heard-of.html原文:takipiblog.com/2014/04/30/10-features-in-java-8-you-havent-heard-of/lambda表达式,l转载 2017-05-06 12:20:59 · 244 阅读 · 0 评论 -
初入Java测试员之路
初入(在大神的指导下)小小的经验之谈:1、要熟悉需求分析说明书!重点要熟悉业务脉络,清晰业务流程传递!2、熟悉项目原型!原型界面需求要保证能在项目真正实现中看到!3、亲自操作真实项目实现,要切换不同的角色实现不同的功能,并从中发现与需求分析说明书和原型会有何不同或者缺少什么!并且要测试是否功能已经正常实现!符不符合业务流程规定!4、懂得使用思维导向,做好项目模块功能分布,便于进原创 2017-05-06 00:15:20 · 1383 阅读 · 0 评论 -
(转)如何快速处理线上故障
|转载自:cnblogs.com|原文链接:http://www.cnblogs.com/daoqidelv/p/6785372.html概述线上故障通常是指大规模的影响线上服务可用性的问题或者事件,通俗点讲就是:掉‘坑’里了,这个‘坑’就是线上故障!线上故障的处理过程可以形象地表达为:‘踩坑’、‘跳坑’、‘填坑’、‘避坑’。线上故障的处理不仅是一项技术活,更是对技术人员/技术转载 2017-05-18 09:24:21 · 3871 阅读 · 0 评论 -
(转)奇怪的Java题:为什么1000 == 1000返回为False,而100 == 100会返回为True?
来源:回忆和感动链接:evget.com/article/2015/11/19/23028.html这是我们今天要讨论的话题,因为我觉得它非常的有趣。如果你运行如下代码:1234Integer a = 1000, b = 1000; System.out.println(a == b);//1Integ转载 2017-05-10 10:21:19 · 287 阅读 · 0 评论 -
(转)前端安全之XSS攻击
前端安全之XSS攻击XSS(cross-site scripting跨域脚本攻击)攻击是最常见的Web攻击,其重点是“跨域”和“客户端执行”。有人将XSS攻击分为三种,分别是:1. Reflected XSS(基于反射的XSS攻击)2. Stored XSS(基于存储的XSS攻击)3. DOM-based or local XSS(基于DOM或本地的XSS攻击)Reflec转载 2017-05-19 10:23:59 · 512 阅读 · 0 评论 -
开发时,如何让火狐实时更新js文件
第一步:打开火狐浏览器第二步:在网址上输入about:config,点击回车第三步:找到原创 2017-05-21 00:45:13 · 848 阅读 · 0 评论 -
(转)Java反射机制应用实践
来自:ZiWenXie链接:https://www.ziwenxie.site/2017/03/22/java-reflection/引言Java反射机制是一个非常强大的功能,在很多大型项目比如Spring, Mybatis中都可以看见反射的身影。通过反射机制我们可以在运行期间获取对象的类型信息,利用这一特性我们可以实现工厂模式和代理模式等设计模式,同时也可以解决Jav转载 2017-05-22 08:25:19 · 300 阅读 · 0 评论 -
java中的“|=”的使用方法
在开发中,我们经常会遇到要经过for循环来判断该循环体中是否包含或不包含某一元素,这个时候我们也常用一个boolean值来介入判断。而“|=”可以轻松的让我们完成实现boolean flag = false; 在一个循环体中,flag |= (c==e);如果一直不相等,则flag一直为false,一旦有一个相等则为true;原创 2017-10-07 11:04:21 · 6643 阅读 · 3 评论 -
jpql查询问题
List<Map<String, String> list = this.entityManager.createQuery(jpql).getResultList();在这里返回的map中的值最好写成Object,即List<Map<String, Object> list = this.entityManager.createQuery(jpql)....原创 2018-08-10 13:02:44 · 483 阅读 · 0 评论 -
(转)Java基础干货
1、在Java语言中多态性体现在由方法重载实现的静态多态性和方法重写实现的动态多态性。2、final 类不能被继承,即不能有子类。 3、abstract 类不能创建对象,必须产生其子类,由子类创建对象。 4、如果一个方法被修饰为 final 方法,则这个方法不能被重写。 5、对于 abstract 方法,只允许声明,而不允许实现。 6、如果一个方法被转载 2017-05-06 00:11:03 · 402 阅读 · 0 评论 -
(转)每个程序员都可能犯过的10个错误
译文链接:http://www.codeceo.com/article/10-mistake-every-programmer-make.html英文原文:10 mistakes every programmer makes翻译作者:码农网 – 小峰转载 2017-05-23 09:24:02 · 290 阅读 · 0 评论 -
Java村旅游圣地(三)---浅谈设计模式之行为型模式
一、策略模式Java村有许多导游,但不同的导游,他们去相应的目的地,路线又不尽相同,有的路线用时少但开支大,有的用时多但开支小。二、观察者模式Java村有很强大的安保意识,每个旅客进入Java村,其安全都会备受观注,一旦旅客发生什么事情,安保人员也是能第一个收到消息。三、解释器模式Java村的导游会各种各样的方言,老一辈的人都是不怎么说普通话的,这个时候导游就能派上很大的用场了原创 2017-04-30 09:55:23 · 420 阅读 · 0 评论 -
Java村旅游圣地(二)---浅谈设计模式之构造型模式
一、装饰模式Java村有一家好吃的手抓饼店,可以吃到多种口味的手抓饼。刚开始只有面包,然后就可以开始自主搭配了,加火腿,培根等等,应有尽有。二、享元模式旅客在Java村游玩时,游完一处就会将所走路线记在本子里,作为再来玩的攻略。当旅客下次再来玩时,直接拿出本子按着曾经走过的路线游玩即可。三、代理模式 去Java村旅游,可能需要先做个攻略!但也可以报一个旅行社,这样就很省原创 2017-04-29 22:14:30 · 458 阅读 · 0 评论 -
Java村旅游圣地(四)---浅谈五大设计原则
一、开放封闭原则Java村在管理景区的业务里,有一个主要的负责人,他提供业务的规范,但并不提供真实的业务!比如门票,娱乐设施等,都由其他负责人处理。当要新增业务时,直接向负责人寻求业务规范,自己实行即可。二、单一职责原则Java区景区管理人员分工很明细,售票员仅负责售票,设备检修员仅负责检修设备,清洁人员仅负责景区卫生等等,他们都各尽其职,而又不互相干涉。三、里氏代换原则Jav原创 2017-04-30 12:53:34 · 361 阅读 · 0 评论 -
Java解惑学习有感(四)---异常之谜
谜题36:优柔寡断以下代码:public class Indecisive {public static void main(String[] args) {System.out.println(decision());}static boolean decision() {try {return true;} finally {return false;原创 2017-04-30 22:18:30 · 252 阅读 · 0 评论 -
Java解惑学习有感(五)---类之谜
谜题46:令人混淆的构造器案例如果你确实进行了重载,那么请确保所有的重载版本所接受的参数类型都互不兼容,这样,任何两个重载版本都不会同时是可应用的。如果做不到这一点,那么就请确保所有可应用的重载版本都具有相同的行为谜题47:啊呀!我的猫变成狗了静态域由声明它的类及其所有子类所共享。如果你需要让每一个子类都具有某个域的单独拷贝,那么你必须在每一个子类中声明一个单独的静态域。如果每一个实例原创 2017-04-30 23:26:03 · 294 阅读 · 0 评论 -
(转)35 个 Java 代码性能优化总结!搞Android的你更需要
作者:Java团长原文地址:http://www.jianshu.com/p/436943216526前言代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。代码优化也是一样,如果项目着眼于尽快无BU转载 2017-04-30 23:43:02 · 612 阅读 · 1 评论 -
Java解惑学习有感(一)---表达式之谜
谜题1:奇数性如何判断一个int类型的数是奇数,可用代码:i%2 != 0, 返回true为奇数,返回false为偶数,如果在一个强调性能环境中使用,用位操作符AND(&)替代取余操作更好:( i & 1) != 0谜题2:找零时刻在计算2.00 -1.10时是会得到很长的一串小数点后的数字的,这个时候就得用到BigDecimal()参数为String的构造器了,计算如下new Big原创 2017-04-19 18:13:55 · 342 阅读 · 0 评论 -
spring(一)---bean的学习上篇
一、IOC容器装配bean(xml配置)1、bean的三种实例化a、构造器实例化对象package top.einino.bean;public class Blog {}b、工厂调用静态方法创建实例package top.einino.bean;public class FactoryBlog {public Blog getBlog(){return n原创 2017-04-19 21:01:29 · 286 阅读 · 0 评论 -
spring(三)---aop底层实现原理
一、jdk实现原理1、接口package top.einino.service;public interface BankService {void getMoney( Double money);}2、接口实现类package top.einino.service.impl;import top.einino.service.BankService;publi原创 2017-04-20 09:37:24 · 1409 阅读 · 0 评论 -
Java解惑学习有感(六)---库之谜
谜题 56 :大问题1、BigInteger 实例是不可变的。String、BigDecimal 以及包装器类型:Integer、Long、Short、Byte、Character、Boolean、Float 和 Double 也是如此,你不能修改它们的值。我们不能修改现有实例的值,对这些类型的操作将返回新的实例。2、不要被误导,认为不可变类型是可变的。这是一个在刚入门的Java 程序员原创 2017-05-02 14:49:42 · 403 阅读 · 0 评论 -
Java解惑学习有感(七)---更多的类之谜
谜题66:一件私事当你在声明一个域、一个静态方法或一个嵌套类型时,如果其名字与基类中相对应的某个可访问的域、方法或类型相同,就会发生隐藏。隐藏是容易产生混乱的:违反包容性的隐藏域在某种意义上是特别有害的。更一般地讲,除了覆写之外,要避免名字重用。谜题67:对字符串上瘾要避免重用类名,尤其是 Java 平台类的类名。千万不要重用 java.lang 包内的类名,相同的教训也适用于类库的设原创 2017-05-02 16:26:19 · 1019 阅读 · 0 评论 -
Java解惑学习有感(二)---字符之谜
谜题11:最后的笑声如何打印'H'+'a'使之输出是Ha第一种方式:StringBuffer sb = new StringBuffer();sb.append('H');sb.append('a');System.out.println(sb);第二种方式:System.out.printf("%c%c",'H','a');//使用的是JDK5第三种方式:原创 2017-04-20 13:53:15 · 326 阅读 · 0 评论 -
Java解惑学习有感(八)---更多的库之谜
谜题76:乒乓1、当你想调用一个线程的 start 方法时要多加小心,别弄错成调用这个线程的 run 方法了。2、一个线程可以重复地获得某个相同的锁3、Thread 类之所以有一个公共的 run 方法,是因为它实现了 Runnable 接口。谜题77:搞乱锁的妖怪1、Thread.join 方法在表示正在被连接(join)的那个 Thread 实例上调用 Object.wait原创 2017-05-02 19:44:18 · 256 阅读 · 0 评论 -
Java解惑学习有感(九)---高级之谜
谜题86:有毒的括号垃圾1、符号-2147483648 构成了一个合法的Java表达式,它由一元负操作符加上一个int型字面常量2147483648组成。通过添加一对括号来注解(很不重要的)赋值顺序,即写成-(2147483648),就会破坏这条规则。上述情况也适用于 long 型字面常量。2、Java 不支持负的十进制字面常量;int 和 long 类型的负数常量都是由正数十进制字面常量原创 2017-05-02 21:05:06 · 571 阅读 · 0 评论 -
Effective Java学习有感(一)---创建和销毁对象
第1条:考虑用静态工厂方法代替构造器提纲:四大优势、两大缺点、一个切忌1、四大优势a、静态工厂方法与构造器不同的第一大优势在于,它们有名称,通过名称表达出方法的意思,使得用户使用起来更加清楚。b、静态工厂方法与构造器不同的第二大优势在于,不必在每次调用它们的时候都创建一个新的对象。这使得不可变类可以使用预先构建好的实例,或者将构建好的实例缓存起来,进行重复利用,从而避免创建不必要的原创 2017-05-03 12:59:39 · 339 阅读 · 0 评论 -
(转)关于Java的反射机制,你需要理解这些..
来自:简书 方志朋链接:www.jianshu.com/p/f1d1673f2336(点击尾部阅读原文前往)本篇将从以下几个方面讲述反射的知识:class 的使用方法的反射构造函数的反射成员变量的反射一、什么是class类在面向对象的世界里,万物皆对象。类是对象,类是java.lang.Class类的实例对象。另外class类只有java虚拟机才能n转载 2017-05-03 13:02:53 · 194 阅读 · 0 评论 -
Java村旅游圣地(一)---浅谈设计模式之创建型模式
一、工厂方法模式(类的创建型模式)旅客来到Java村旅游,对当地不是很熟,这时急需一名导游,但他又不知道哪里可以找到导游,所以他去找了Java村的村长,村长给他介绍了各个地点的导游。这时他只需要选择哪个地点,就能得到哪个导游了!二、抽象工厂模式(类的创建型模式)旅客在Java村玩完后想带点特产回去给家人,但有许多地方都有同样类型的东西,不知道该带什么好!所以他让各个地方的导游为他介绍各原创 2017-04-29 20:19:07 · 403 阅读 · 0 评论