- Spring学习笔记07——SpringBoot中关于接口文档管理的注解
Shaoxi Zhang
Javaspring学习笔记
一、Lombok注解@Data:生成所有字段的getter/setter、toString()、equals()和hashCode()。@Getter/@Setter:单独为所有字段或指定字段生成getter/setter。importlombok.Data;@DatapublicclassUser{privateLongid;privateStringname;}编译后,Lombok会为id和n
- 【Java】基于ArrayList手写HashMap集合
即使再小的️帆也能远航
集合HashMapjava开发语言集合HashMap手写HashMap
HashMap底层不是基于ArrayList实现的,而是基于HashCode值计算的,基于ArrayList查询效率非常低,时间复杂度O(n)虽然可以保证存放键值对的有序性但是并不可取示例代码packagecom.collection.Demo10;importjava.util.ArrayList;/***基于ArrayList手写HashMap集合*手写简易版本的HashMap,不推荐这样使用
- equals和hashCode的关系,equals相等,hashCode就必须要相等吗?
架构师springboot
我们经常听见hashCode相等,那么equals可以不相等,但是equals相等,那么hashCode就一定相等这2个定理,没有看源码的同学就会认为jdk保证了equals相等,那么hashCode就一定相等,但是事实真的是这样吗?答案是否定的,equals相等,hashCode也是可以不相等的,看下面的那个例子:packagecontroller.abstractfactory;importj
- Kruptos2CL.exe OnLineRecovery.exe HashCodeProvider.dll InstallDriver.exe VNETBIOS.VXD serf1255.
2504_92288299
windowsmicrosoft游戏
在使用电脑系统时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用MicrosoftVisualStudio编写的,所以这类软件的运行需要依赖微软VisualC++运行库,比如像QQ、迅雷、Adobe软件等等,如果没有安装VC++运行库或者安装的版本不完整,就可能会导致这些软件启动时报错,提示缺少库文件。如果我们遇到关于文件在系统使用过程中提示缺少找不到的情况,如果文件是属于运行库文件的
- HashMap的加载因子为什么选择0.75?
弹钢琴的崽崽
为什么HashMap需要加载因子?HashMap的底层是哈希表,是存储键值对的结构类型,它需要通过一定的计算才可以确定数据在哈希表中的存储位置:staticfinalinthash(Objectkey){inth;return(key==null)?0:(h=key.hashCode())^(h>>>16);}//AbstractMappublicinthashCode(){inth=0;Iter
- 小架构step系列17:getter-setter-toString
秋千码途
架构java开发语言
1概述在写代码的时候,有两类bean:一类是专门承载数据而无业务逻辑的bean,如DTO;另外一类是业务模型bean,其既要承载数据也要提供业务逻辑,在DDD中它们就对应于领域模型对象和值对象。这些bean里面可能要提供getter、setter、equals、hashCode、toString,甚至构造方法,这些代码写起来比较无聊,基本都是根据字段来的,属于非常机械化而无技术含量的操作,而这些操
- 实体类序列化报错:Caused by: java.lang.NoSuchMethodException: com.xx.PoJo$Item.<init>()
DN金猿
java开发语言
原实体类代码@EqualsAndHashCode(callSuper=true)@DatapublicclassPojoextendsBaseBean{privatestaticfinallongserialVersionUID=-4291335073882689552L;@ApiModelProperty("")privateIntegerid;......privateListlist;@Al
- Java中hashmap的原理
好好沉淀
笔记学习java经验分享
是什么hashmap底层是由哈希表组成,用于存储键值对的,其核心就是将哈希值映射到数组索引位置上,通过数组+链条的方式来解决哈希冲突,java8之后优化成数组+链条+红黑树。存放hashmap的哈希值由hashcode方法来进行计算,确定存储在数组上的位置,哈希值进过计算之后可能会重复,此时直接加在链表上即可,防止冲突分布不均。扩容hashmap的数组默认长度是16,负载因子是0.75,当大于16
- Java基础系列:深入解析反射机制与代理模式及避坑指南
JouJz
java代理模式开发语言
目录一、反射机制:动态操控类的艺术1.反射核心原理2.反射操作全流程3.五大经典陷阱陷阱1:泛型检查绕过陷阱2:性能黑洞陷阱3:破坏单例模式陷阱4:模块系统限制(Java9+)陷阱5:错误处理缺失二、代理模式:控制访问的智慧1.静态代理实现2.JDK动态代理3.CGLIB动态代理4.四大核心陷阱陷阱1:错误处理导致异常丢失陷阱2:循环调用问题陷阱3:equals/hashCode处理陷阱4:CGL
- Java对象哈希值深度解析
小W求学之旅
java哈希算法spring
在Java开发中,对象的哈希值(hashCode())是一个看似基础却暗藏玄机的概念。它不仅影响着HashMap、HashSet等集合框架的性能,还涉及到JVM内存模型和对象相等性判断的核心逻辑。本文将从JVM底层实现、哈希冲突处理、性能优化等多个维度,一起深入理解Java对象哈希值的工作原理。一、JVM如何生成默认哈希值?Java中所有类都继承自Object类,其hashCode()方法是一个本
- Java equals方法揭秘:为何必须重写?
青衫-郁郁寡欢
javaintellij-idea开发语言
一、引言我们在编写Java实体类时,会使用构造器生成对应的有参的构造方法,无参的构造方法,以及set方法和get方法、equals方法和hashCode方法。那么我们来关注一下idea构造器生成的equals方法到底写了什么?而且为什么要写equals方法。二、equals方法里面都写了什么?这里我们举例一下Student类,包含学号、姓名、年龄属性。publicclassStudent{priv
- Java面试题100道及答案
编程大全
面试题java开发语言
一、Java基础Java17中的sealed类和record类的作用和区别?答案:sealed类:限制继承关系,通过permits指定允许的子类。示例代码:publicsealedclassShapepermitsCircle,Square{...};record类:不可变数据类,自动生成equals()、hashCode()和toString()。示例代码:publicrecordUser(St
- Python Json数据排序
weixin_33851177
pythonjsonjava
importhashlib#recursivelycalculateeachelementblock'shashcode,andreorderthechildnodesinthelistbasingonthehashcode#finallywillgettheorderedjsonobjectandoverallhashcodedefordered(jsonNode):ifisinstance(j
- JAVA基础:讲一下equals()与hashcode(),什么时候重写,为什么重写,怎么重写?
Hellyc
八股文自用javajvm开发语言
当equals方法进行重写后,hashcode方法也需要重写。因为equals方法进行重写,那么原本不同的两个对象可能就会相同了,比如两个学生,我们的eqauls判别标准是两个学生的id相同,就会认为(学生A).equals(学生B),然而A与B显然是不同的对象,对应不同的地址,那么hashcode此时不重写,此时hashcode就会产生两个不同值,这与哈希表的逻辑不符,所以此时hashcode需
- 深入剖析HashMap:原理、结构、优势及更新过程
未来并未来
java哈希算法散列表
1.哈希函数HashMap的核心在于其使用的哈希函数。哈希函数的作用是将键(Key)转换为一个整数,这个整数将作为数组索引,用于存储和检索键值对。理想的哈希函数应具备以下特点:均匀分布:能够将不同的键均匀分布到哈希表中,减少哈希冲突。计算效率:哈希函数的计算应当快速,以减少插入和查找的时间。在Java中,HashMap通过以下步骤计算哈希值:调用键对象的hashCode()方法获取初始哈希码。通过
- c#中equal方法与gethashcode方法之间有何关联?
汤姆爱耗儿药
日常随笔c#哈希算法散列表
文章目录前言一、对hash运算的深入思考二、equal与gethashcode的关联三、equal与gethashcode不同步的后果四、规范的重写gethashcode前言大家有没有遇到过,当你重写了c#对象的equal方法之后,编译器会提示你对相应的gethashcode进行重写,你是否感到疑惑?这两者之间有什么关联?为什么要有这样的规范?不重写又会发生什么问题?一、对hash运算的深入思考我
- java面试一定会遇到的100个面试题
小高求学之路
java学习笔记面试java面试
1.问题:如果main方法被声明为private会怎样?答案:能正常编译,但运行的时候会提示”main方法不是public的”。2.问题:Java里的传引用和传值的区别是什么?答案:传引用是指传递的是地址而不是值本身,传值则是传递值的一份拷贝。3.问题:如果要重写一个对象的equals方法,还要考虑什么?答案:hashCode。4.问题:Java的”一次编写,处处运行”是如何实现的?答案:[Jav
- 掌握 Java 16 的记录类(Record)特性
潜意识Java
Java知识javapython开发语言
一、设计背景与核心目标1.传统数据类的痛点在Java中,创建简单的数据载体(如DTO、POJO)需要编写大量样板代码:字段声明构造器getter/setterequals/hashCodetoString示例(传统写法):publicclassPoint{privatefinalintx;privatefinalinty;publicPoint(intx,inty){this.x=x;this.y
- Java-Objects类高效应用的全面指南
AA-代码批发V哥
JavaSE开发语言java
Java_Objects类高效应用的全面指南前言一、Objects类概述二、Objects类的核心方法解析2.1`requireNonNull`系列方法:空指针检查的利器2.2`equals`方法:安全的对象比较2.3`hashCode`方法:统一的哈希值生成2.4`toString`方法:灵活的对象字符串表示三、Objects类的应用场景3.1方法参数校验3.2集合操作中的对象处理3.3对象比较
- Java基础面试题大全(2022最新版汇总)
一、基础篇1.1.Java语言有哪些特点1.2.面向对象和面向过程的区别1.3.八种基本数据类型的大小,以及他们的封装类1.4.标识符的命名规则。1.5.instanceof关键字的作用1.6.Java自动装箱与拆箱1.7.重载和重写的区别1.8.equals与==的区别1.9.Hashcode的作用1.10.String、StringStringBuffer和StringBuilder的区别是什
- 关于HashMap的十个灵魂拷问(含源码级解析)
laowangpython
哈希算法算法其他
文章目录一、为什么HashMap总被面试官翻牌子?二、底层结构到底藏着什么玄机?三、put方法执行时的暗箱操作四、初始容量16是玄学吗?五、扩容机制里的骚操作六、线程安全问题有多可怕?七、为什么重写equals必须重写hashCode?八、加载因子能不能随便改?九、遍历时顺序不可靠?十、红黑树转换的隐藏条件高频面试题集锦(背熟保命)最后的小贴士一、为什么HashMap总被面试官翻牌子?在Java技
- 关于 java:3. Java 常用类库与数据结构
shenyan~
java数据结构开发语言
一、String1.1String是什么?publicfinalclassStringimplementsjava.io.Serializable,Comparable,CharSequence特点:是不可变对象(immutable)是final类,不能被继承内部使用字符数组存储内容重写了equals()、hashCode()、toString()等方法实现了Comparable和CharSequ
- Java面经
只是当时已惘然——
java成神之路java开发语言
为什么重写equal()方法也要重写hashcode()方法在使用HashMap存放键值对时,首先会判断key的hashcode()在map中是否存在,若不存在直接存入,若存在会调用equal方法进行比较。那么我们现在知道一个前提了,即equal()相等,那么其hashcode()一定相等。如果我们重写equal不重写hashcode()话,导致equal()相等,而hashcode()不相等,即
- Java中HashMap底层为什么用2的倍数来扩容
珊瑚怪人
javamaphashmapjava开发语言hashmap哈希算法map数据结构算法
最近在看面试题时看到了这个问题一、前置知识:HashMap的存储结构在HashMap中,数据是以键值对(key-value)的形式存在底层数组(桶)中的。我们通过键的hashCode()方法得到一个哈希值,然后定位到具体的数组下标,再将数据放入该位置的链表或红黑树中。详细信息可以看深入理解HashMap底层结构-CSDN博客这一步中就涉及到:如何将哈希值转为数组下标。二、下标计算:与操作取代模运算
- 【技能篇】Java 面试题大全
wxiaohe1
javajava面试开发语言
目录1.JDK和JRE有什么区别?2.==和equals的区别是什么?3.两个对象的hashCode()相同,则equals()也一定为true,对吗?4.final在java中有什么作用?5.java中的Math.round(-1.5)等于多少?6.String属于基础的数据类型吗?7.java中操作字符串都有哪些类?它们之间有什么区别?8.Stringstr="i"与Stringstr=new
- 20个关于Java编程语言的常见问题
大霸王龙
java开发语言
以下是20个关于Java编程语言的常见问题,涵盖基础、进阶和实际应用场景:基础概念Java的“一次编写,到处运行”是如何实现的?(JVM的作用与字节码机制)Java中的基本数据类型有哪些?对应的包装类是什么?(如int与Integer的区别)==和equals()方法有什么区别?如何正确重写equals()和hashCode()?Java中String、StringBuilder和StringBu
- HashMap中put()方法的执行流程
寒士obj
Java哈希算法散列表java
HashMap是Java中最常用的数据结构之一,用于存储键值对。其put()方法是向哈希表中插入或更新键值对的核心操作。本文将详细解析put()方法的执行过程,涵盖哈希值计算、桶定位、冲突处理和扩容等步骤。一、put()方法的执行过程put()方法通过一系列步骤实现键值对的高效存储和更新。以下是详细的执行流程:1.计算键的哈希值步骤:HashMap首先调用键的hashCode()方法获取其哈希码。
- Java中String类部分源码分析以及常见面试考点
-yanhui-
Java基础string字符串引用比较equals
Java面试中涉及到的面试题,最容易出错的就是各种字符串和String对象之间以及与其自身的比较、拼接、==、equals等。如果没有阅读String的源码,可能很多程序的运行结果与预想的结果不一致时,主要是因为String类对equals方法、hashCode方法、compareTo方法等进行了重写。文章目录一、关键部分源码介绍1.final修饰2.compareTo方法3.Comparator
- 反射的几种创建方式
軒BOY
学习反射
反射Personperson=newStudent();System.out.println("这个人是:"+person.name);//方式一:以对象的形式构建反射Classperson1=person.getClass();System.out.println(person1.hashCode());//方式二:通过forname()创建反射或取对象Classperson2=Class.fo
- (面试)List、Map、Set的区别与联系
夜晚&星光
Android面试总结面试list职场和发展
List和Set是存储单列数据的集合,Map是存储键值对这样的双列数据的集合;List中存储的数据是有顺序的,并且值允许重复;Map中存储的数据是无序的,键是不允许重复的,值是允许重复的;Set中存储的数据是无顺序的,并且不允许重复,但元素在集合中的位置是由元素的hashcode决定,即位置是固定的(Set集合是根据hashcode来进行数据存储的,所以位置是固定的,但是这个位置不是用户可以控制的
- iOS http封装
374016526
ios服务器交互http网络请求
程序开发避免不了与服务器的交互,这里打包了一个自己写的http交互库。希望可以帮到大家。
内置一个basehttp,当我们创建自己的service可以继承实现。
KuroAppBaseHttp *baseHttp = [[KuroAppBaseHttp alloc] init];
[baseHttp setDelegate:self];
[baseHttp
- lolcat :一个在 Linux 终端中输出彩虹特效的命令行工具
brotherlamp
linuxlinux教程linux视频linux自学linux资料
那些相信 Linux 命令行是单调无聊且没有任何乐趣的人们,你们错了,这里有一些有关 Linux 的文章,它们展示着 Linux 是如何的有趣和“淘气” 。
在本文中,我将讨论一个名为“lolcat”的小工具 – 它可以在终端中生成彩虹般的颜色。
何为 lolcat ?
Lolcat 是一个针对 Linux,BSD 和 OSX 平台的工具,它类似于 cat 命令,并为 cat
- MongoDB索引管理(1)——[九]
eksliang
mongodbMongoDB管理索引
转载请出自出处:http://eksliang.iteye.com/blog/2178427 一、概述
数据库的索引与书籍的索引类似,有了索引就不需要翻转整本书。数据库的索引跟这个原理一样,首先在索引中找,在索引中找到条目以后,就可以直接跳转到目标文档的位置,从而使查询速度提高几个数据量级。
不使用索引的查询称
- Informatica参数及变量
18289753290
Informatica参数变量
下面是本人通俗的理解,如有不对之处,希望指正 info参数的设置:在info中用到的参数都在server的专门的配置文件中(最好以parma)结尾 下面的GLOBAl就是全局的,$开头的是系统级变量,$$开头的变量是自定义变量。如果是在session中或者mapping中用到的变量就是局部变量,那就把global换成对应的session或者mapping名字。
[GLOBAL] $Par
- python 解析unicode字符串为utf8编码字符串
酷的飞上天空
unicode
php返回的json字符串如果包含中文,则会被转换成\uxx格式的unicode编码字符串返回。
在浏览器中能正常识别这种编码,但是后台程序却不能识别,直接输出显示的是\uxx的字符,并未进行转码。
转换方式如下
>>> import json
>>> q = '{"text":"\u4
- Hibernate的总结
永夜-极光
Hibernate
1.hibernate的作用,简化对数据库的编码,使开发人员不必再与复杂的sql语句打交道
做项目大部分都需要用JAVA来链接数据库,比如你要做一个会员注册的 页面,那么 获取到用户填写的 基本信后,你要把这些基本信息存入数据库对应的表中,不用hibernate还有mybatis之类的框架,都不用的话就得用JDBC,也就是JAVA自己的,用这个东西你要写很多的代码,比如保存注册信
- SyntaxError: Non-UTF-8 code starting with '\xc4'
随便小屋
python
刚开始看一下Python语言,传说听强大的,但我感觉还是没Java强吧!
写Hello World的时候就遇到一个问题,在Eclipse中写的,代码如下
'''
Created on 2014年10月27日
@author: Logic
'''
print("Hello World!");
运行结果
SyntaxError: Non-UTF-8
- 学会敬酒礼仪 不做酒席菜鸟
aijuans
菜鸟
俗话说,酒是越喝越厚,但在酒桌上也有很多学问讲究,以下总结了一些酒桌上的你不得不注意的小细节。
细节一:领导相互喝完才轮到自己敬酒。敬酒一定要站起来,双手举杯。
细节二:可以多人敬一人,决不可一人敬多人,除非你是领导。
细节三:自己敬别人,如果不碰杯,自己喝多少可视乎情况而定,比如对方酒量,对方喝酒态度,切不可比对方喝得少,要知道是自己敬人。
细节四:自己敬别人,如果碰杯,一
- 《创新者的基因》读书笔记
aoyouzi
读书笔记《创新者的基因》
创新者的基因
创新者的“基因”,即最具创意的企业家具备的五种“发现技能”:联想,观察,实验,发问,建立人脉。
第一部分破坏性创新,从你开始
第一章破坏性创新者的基因
如何获得启示:
发现以下的因素起到了催化剂的作用:(1) -个挑战现状的问题;(2)对某项技术、某个公司或顾客的观察;(3) -次尝试新鲜事物的经验或实验;(4)与某人进行了一次交谈,为他点醒
- 表单验证技术
百合不是茶
JavaScriptDOM对象String对象事件
js最主要的功能就是验证表单,下面是我对表单验证的一些理解,贴出来与大家交流交流 ,数显我们要知道表单验证需要的技术点, String对象,事件,函数
一:String对象;通常是对字符串的操作;
1,String的属性;
字符串.length;表示该字符串的长度;
var str= "java"
- web.xml配置详解之context-param
bijian1013
javaservletweb.xmlcontext-param
一.格式定义:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>contextConfigLocationValue></param-value>
</context-param>
作用:该元
- Web系统常见编码漏洞(开发工程师知晓)
Bill_chen
sqlPHPWebfckeditor脚本
1.头号大敌:SQL Injection
原因:程序中对用户输入检查不严格,用户可以提交一段数据库查询代码,根据程序返回的结果,
获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。
本质:
对于输入检查不充分,导致SQL语句将用户提交的非法数据当作语句的一部分来执行。
示例:
String query = "SELECT id FROM users
- 【MongoDB学习笔记六】MongoDB修改器
bit1129
mongodb
本文首先介绍下MongoDB的基本的增删改查操作,然后,详细介绍MongoDB提供的修改器,以完成各种各样的文档更新操作 MongoDB的主要操作
show dbs 显示当前用户能看到哪些数据库
use foobar 将数据库切换到foobar
show collections 显示当前数据库有哪些集合
db.people.update,update不带参数,可
- 提高职业素养,做好人生规划
白糖_
人生
培训讲师是成都著名的企业培训讲师,他在讲课中提出的一些观点很新颖,在此我收录了一些分享一下。注:讲师的观点不代表本人的观点,这些东西大家自己揣摩。
1、什么是职业规划:职业规划并不完全代表你到什么阶段要当什么官要拿多少钱,这些都只是梦想。职业规划是清楚的认识自己现在缺什么,这个阶段该学习什么,下个阶段缺什么,又应该怎么去规划学习,这样才算是规划。
- 国外的网站你都到哪边看?
bozch
技术网站国外
学习软件开发技术,如果没有什么英文基础,最好还是看国内的一些技术网站,例如:开源OSchina,csdn,iteye,51cto等等。
个人感觉如果英语基础能力不错的话,可以浏览国外的网站来进行软件技术基础的学习,例如java开发中常用的到的网站有apache.org 里面有apache的很多Projects,springframework.org是spring相关的项目网站,还有几个感觉不错的
- 编程之美-光影切割问题
bylijinnan
编程之美
package a;
public class DisorderCount {
/**《编程之美》“光影切割问题”
* 主要是两个问题:
* 1.数学公式(设定没有三条以上的直线交于同一点):
* 两条直线最多一个交点,将平面分成了4个区域;
* 三条直线最多三个交点,将平面分成了7个区域;
* 可以推出:N条直线 M个交点,区域数为N+M+1。
- 关于Web跨站执行脚本概念
chenbowen00
Web安全跨站执行脚本
跨站脚本攻击(XSS)是web应用程序中最危险和最常见的安全漏洞之一。安全研究人员发现这个漏洞在最受欢迎的网站,包括谷歌、Facebook、亚马逊、PayPal,和许多其他网站。如果你看看bug赏金计划,大多数报告的问题属于 XSS。为了防止跨站脚本攻击,浏览器也有自己的过滤器,但安全研究人员总是想方设法绕过这些过滤器。这个漏洞是通常用于执行cookie窃取、恶意软件传播,会话劫持,恶意重定向。在
- [开源项目与投资]投资开源项目之前需要统计该项目已有的用户数
comsci
开源项目
现在国内和国外,特别是美国那边,突然出现很多开源项目,但是这些项目的用户有多少,有多少忠诚的粉丝,对于投资者来讲,完全是一个未知数,那么要投资开源项目,我们投资者必须准确无误的知道该项目的全部情况,包括项目发起人的情况,项目的维持时间..项目的技术水平,项目的参与者的势力,项目投入产出的效益.....
- oracle alert log file(告警日志文件)
daizj
oracle告警日志文件alert log file
The alert log is a chronological log of messages and errors, and includes the following items:
All internal errors (ORA-00600), block corruption errors (ORA-01578), and deadlock errors (ORA-00060)
- 关于 CAS SSO 文章声明
denger
SSO
由于几年前写了几篇 CAS 系列的文章,之后陆续有人参照文章去实现,可都遇到了各种问题,同时经常或多或少的收到不少人的求助。现在这时特此说明几点:
1. 那些文章发表于好几年前了,CAS 已经更新几个很多版本了,由于近年已经没有做该领域方面的事情,所有文章也没有持续更新。
2. 文章只是提供思路,尽管 CAS 版本已经发生变化,但原理和流程仍然一致。最重要的是明白原理,然后
- 初二上学期难记单词
dcj3sjt126com
englishword
lesson 课
traffic 交通
matter 要紧;事物
happy 快乐的,幸福的
second 第二的
idea 主意;想法;意见
mean 意味着
important 重要的,重大的
never 从来,决不
afraid 害怕 的
fifth 第五的
hometown 故乡,家乡
discuss 讨论;议论
east 东方的
agree 同意;赞成
bo
- uicollectionview 纯代码布局, 添加头部视图
dcj3sjt126com
Collection
#import <UIKit/UIKit.h>
@interface myHeadView : UICollectionReusableView
{
UILabel *TitleLable;
}
-(void)setTextTitle;
@end
#import "myHeadView.h"
@implementation m
- N 位随机数字串的 JAVA 生成实现
FX夜归人
javaMath随机数Random
/**
* 功能描述 随机数工具类<br />
* @author FengXueYeGuiRen
* 创建时间 2014-7-25<br />
*/
public class RandomUtil {
// 随机数生成器
private static java.util.Random random = new java.util.R
- Ehcache(09)——缓存Web页面
234390216
ehcache页面缓存
页面缓存
目录
1 SimplePageCachingFilter
1.1 calculateKey
1.2 可配置的初始化参数
1.2.1 cach
- spring中少用的注解@primary解析
jackyrong
primary
这次看下spring中少见的注解@primary注解,例子
@Component
public class MetalSinger implements Singer{
@Override
public String sing(String lyrics) {
return "I am singing with DIO voice
- Java几款性能分析工具的对比
lbwahoo
java
Java几款性能分析工具的对比
摘自:http://my.oschina.net/liux/blog/51800
在给客户的应用程序维护的过程中,我注意到在高负载下的一些性能问题。理论上,增加对应用程序的负载会使性能等比率的下降。然而,我认为性能下降的比率远远高于负载的增加。我也发现,性能可以通过改变应用程序的逻辑来提升,甚至达到极限。为了更详细的了解这一点,我们需要做一些性能
- JVM参数配置大全
nickys
jvm应用服务器
JVM参数配置大全
/usr/local/jdk/bin/java -Dresin.home=/usr/local/resin -server -Xms1800M -Xmx1800M -Xmn300M -Xss512K -XX:PermSize=300M -XX:MaxPermSize=300M -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=5 -
- 搭建 CentOS 6 服务器(14) - squid、Varnish
rensanning
varnish
(一)squid
安装
# yum install httpd-tools -y
# htpasswd -c -b /etc/squid/passwords squiduser 123456
# yum install squid -y
设置
# cp /etc/squid/squid.conf /etc/squid/squid.conf.bak
# vi /etc/
- Spring缓存注解@Cache使用
tom_seed
spring
参考资料
http://www.ibm.com/developerworks/cn/opensource/os-cn-spring-cache/
http://swiftlet.net/archives/774
缓存注解有以下三个:
@Cacheable @CacheEvict @CachePut
- dom4j解析XML时出现"java.lang.noclassdeffounderror: org/jaxen/jaxenexception"错误
xp9802
java.lang.NoClassDefFoundError: org/jaxen/JaxenExc
关键字: java.lang.noclassdeffounderror: org/jaxen/jaxenexception
使用dom4j解析XML时,要快速获取某个节点的数据,使用XPath是个不错的方法,dom4j的快速手册里也建议使用这种方式
执行时却抛出以下异常:
Exceptio