- 浏览: 96498 次
- 性别:
- 来自: 青岛
最新评论
文章列表
数组转换遇到异常:java.lang.UnsupportedOperationException
代码:
String[] otherUserFromArray = new String[]{"a","b","c"};
List<String> userFromList = Arrays.asList(otherUserFromArray);
userFromList.add("d");
使用Arrays.asList()生产List的时候,表面看是java.util.ArrayLis ...
RabbitMQ安装
- 博客分类:
- MQ
由于RabbitMQ是基于Erlang(面向高并发的语言)语言开发,所以在安装RabbitMQ之前,需要先安装Erlang。Erlang在默认的YUM存储库中不可用,因此您将需要安装EPEL存储库。
安装EPEL存储库
yum -y install epel-release
yum -y update
安装Erlang
yum -y install erlang socat
安装成功,查看Erlang版本
erl -version
下载RabbitMQ
org.springframework.amqp.AmqpIOException: java.io.IOException
at org.springframework.amqp.rabbit.support.RabbitExceptionTranslator.convertRabbitAccessException(RabbitExceptionTranslator.java:71) ~[spring-rabbit-2.0.3.RELEASE.jar:2.0.3.RELEASE]
at org.springframework.amqp.rabbit.connection. ...
org.springframework.amqp.AmqpTimeoutException: java.util.concurrent.TimeoutException
at org.springframework.amqp.rabbit.support.RabbitExceptionTranslator.convertRabbitAccessException(RabbitExceptionTranslator.java:74)
at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory ...
containsAll
- 博客分类:
- java
判断两个数组里是否有相同的数据,用到了containsAll,后来发现,及时有相同的,也返回false。
经排查,原来是A.containsAll(B),A必须完全包含B才会返回true,即A>=B。
源码:
源码里遍历,只要有一个不存在的,立马会返回false。
group_concat函数默认长度1024,超过会自动截取。
解决:
修改group_concat限制长度。
1.数据库直接通过sql修改
查询限制长度
show variables like 'group_concat_max_len';
修改当前会话的长度限制
SET SESSION group_concat_max_len = 10240;
修改全局的长度限制,需要更大的权限才能修改
SET GLOBAL group_concat_max_len = 10240;
2.java修改
相同事务执行查询之前,先执行这个方法
@Select("SET SES ...
下载jdk8:jdk-8u161-linux-x64.tar
链接:https://pan.baidu.com/s/1sL0huIx--uULfVkBONsnuA 提取码:er81
1.解压
tar -zxvf jdk-8u161-linux-x64.tar
2.修改配置
vim /etc/profile 打开环境变量
按下 i 键进入编辑模式,移动到最后一行增加如下配置:
export JAVA_HOME=解压目录的路径export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/ ...
nginx实现负载均衡
- 博客分类:
- nginx
1.增加如下配置:
负载均衡初步完成了。upstream按照轮询(默认)方式进行负载,每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
2.权重
增加 weight 参数,指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。如下所示,8083的访问比率要比8081的访问比率高一倍。
3.ip_hash(访问ip)
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
nginx实现负载均衡,按后端服务器的响应时间来分配请求,响应时间短的优先分配。需要使用fair参数(第三方);
添加配置后报错:
解决:
下载 nginx-upstream-fair 并安装
博客园地址:https://files.cnblogs.com/files/DreamFather/nginx-upstream-fair-master.zip
官方地址:https://yq.aliyun.com/go/articleRenderRedirect?spm=a2c4e.11153940.0.0.75217464tmlm1b&url=https%3A%2F%2F ...
linux系统服务器复制文件到另一台服务器上
- 博客分类:
- Linux
scp 账号@IP:文件地址 目标地址
scp root@192.168.0.1:/data/jdk-8u161-linux-x64.tar.gz /data/jdk-8u161-linux-x64.tar.gz
1.检查型异常(Checked Exception) 检查是指编译器要检查这类异常,检查的目的一方面是因为该类异常的发生难以避免,另一方面就是让开发者去解决掉这类异常,所以称为必须处理(try ...catch)的异常。如果不处理这类异常,集成开发环境中的编译器一般会给出错误提示。 例如:一个读取文件的方法代码逻辑没有错误,但程序运行时可能会因为文件找不到而抛出FileNotFoundException,如果不处理这些异常,程序将来肯定会出错。所以编译器会提示你要去捕获并处理这种可能发生的异常,不处理就不能通过编译。
2.非检查型异常(Unchecked Exception) 非检查是 ...
Struts2本身action类是多例,设计的原因是action担任了数据载体,如果做成单例,则会导致数据乱套;
当Struts2 与 spring整合时,Struts2的Action交由spring来管理,spring默认将struts2的action以单例管理,此时必须手工设置为多例,否则,后果将会很严重。
<bean id="testAction" class="com.test.action.TestAction" scope="prototype">
<property name="tes ...
青岛某企业面试题(2019-11)
- 博客分类:
- 面试题
1.以下对接口描述不正确的是()
A 接口没有提供构造方法
B 接口中可以有具体方法
C 接口中的属性默认使用public static final 修饰
D 接口不允许多继承
2.下拉叙述正确的是()
A abstract修饰符可修饰字段、方法和类
B 抽象类可以有非抽象方法
C 抽象方法可以定义具体实现
D 抽象类可以实例化
3.下列对象中是线程安全的是()
A LinkedList
B HashMap
C HashSet
D StringBuffer
4.在Java Web开发中,如果某个数据需要跨多个请求存在,则数据应该存储在()中
...
二分算法也称折半查找,是一种效率较高的查找方法。是一种在有序数组中查找某一特定元素的搜索算法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。
首先,假设表中元素是升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个字表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一字表,否则进一步查找后一字表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到字表不存在为止,此时查找不成功。
共有四种:
读未提交(Read uncommitted)
定义:一个事务可以读取另一个未提交事务的数据。
事例:老板给程序员发工资,程序员的工资是3.6万/月。但发工资时老板不小心按错数字,按成3.9万/月,改钱已打到程序员账户 ...