记录一下问到的相关问题
- redis 的数据类型
String list set zset hash
- spring controller 的单例 如何验证 其单例是不安全的,有什么解决办法
controller默认是单例的,不要使用非静态的成员变量,否则会发生数据逻辑混乱。 正因为单例所以不是线程安全的. 非要使用 非静态变量时,需要在 class 上面使用
@scope(prototype),将其设置为多例模式。 解决方案: 1、不要在controller中定义成员变量。2、万一必须要定义一个非静态成员变量时候,则通过注解@Scope(“prototype”),将其设置为多例模式。3、在Controller中使用ThreadLocal变量
- mysql 的引擎
- Integer 比较相等是用 equals 或 == ?涉及到 128 或 IntegerCache 只要是引用对象比较,我们都使用 Object.equals() 比较即可. 当然了,对于上面的问题,如果 Integer 的值在 -128~127 范围内时,可以使用 ==,其余范围使用 equals
- String[] 转 list
// String[]转List<String>
String[] arr = new String[]{"s1","s2","s3"};
List<String> list = Arrays.asList(arr);
// List<String>转String[]
List<String> list = new ArrayList<String>();
list.add("s1");
list.add("s2");
list.add("s3");
String[] arr = list.toArray(new String[list.size()]);
List<String> list1和List<String> list2去除重复元素
public static void main(String[] args) {
List<String> list1 = new ArrayList<>();
list1.add("a");
list1.add("1");
list1.add("b");
list1.add("e");
list1.add("x");
List<String> list2 = new ArrayList<>();
list2.add("a");
list2.add("1");
List<String> list3 = new ArrayList<>();
list3.addAll(list1);
// list3.removeAll(list2); //list3 中去除掉重复元素后剩余的元素集合 //[b, e, x]
list3.retainAll(list2); // list3 中 输出重复的元素 //[a, 1]
System.out.println(list3);
}
- OSI 7层网络模型 物理层、数据链路层、网络层、传输层、会话层、表示层、应用层
- sql 优化
- mybaits 中 #{} 和 ${} 的区别
- spring ioc 源码
- mysql 表数据很大,需要根据sex分组,在sex上做索引合适吗?
在InnoDB中每一个表都会有聚集索引,如果表定义了主键,则主键就是聚集索引。一个表只有一个聚集索引,其余为普通索引.在使用普通索引查询时,会先加载普通索引,通过普通索引查询到实际行的主键。再使用主键通过聚集索引查询相应的行。以此循环查询所有的行。 若直接全量搜索聚集索引,则不需要在普通索引和聚集索引中来回切换.性别字段为什么不适合加索引.可以看到相同的sql,加索引之后比不加索引慢许多.参考(blog.csdn.net/zxcc1314/ar…)
- maven jar 包冲突怎么解决?
用
<exclusions>来排除掉冲突的jar包
- sql中定义了索引,但是查询时没有用到索引?