1.redis的类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。php
2.hashmap怎样保证key的惟一性:维护了一张 HashTable 。容器中的元素所有存储在Hashtable 中,每次添加元素都会先判断是否有重复的元素,hashcode()方法进行比较,若同样再equals()方法比较,他们的底层数据结构若是也相同的话,JVM就认为数据已经存在了,就不会添加数据css
map的key值为object怎么避免重复?类的属性为id,name,用id计算hashcode,能够值定下来,name能够更改。mysql
3.单例模式:redis
class Asql
{数据库
private A(){}json
private static A obj =null;浏览器
public static A getInstance(){安全
if(obj=null){服务器
obj=newA();
}
return obj;
}
}
4.二叉树的遍历
5.rpc--远程过程调用
dubbo
6.执行几回,每次输出的结果
public static void main(String[]args ){
for(int i=0,j=0,k=0;i<10&&j<4&&k<10;j=j+2){
System.out.print(i++);
System.out.print(++k+i);
}
}
2次。0214。
7.冒泡排序
1 public static void main(String[] args) { 2 int[] arr={6,3,8,2,9,1}; 3 for(int i=0;i<arr.length-1;i++){//外层循环控制排序趟数 4 for(int j=0;j<arr.length-1-i;j++){//内层循环控制每一趟排序多少次 5 if(arr[j]<arr[j+1]){ 6 int temp=arr[j]; 7 arr[j]=arr[j+1]; 8 arr[j+1]=temp; 9 } 10 } 11 } 12 for(int a=0;a<arr.length ;a++){ 13 System.out.print(arr[a]); 14 } 15 }
8.abcddefdebcafmncdcf 不重复的最长字符串
1 public static void main(String[]args){ 2 String str="abcddefdebcafmncdcf"; 3 List<Character> LongerStr=new ArrayList<>(); 4 for(int i=0;i<str.length();i++){ 5 List<Character> temp=new ArrayList<>(); 6 for(int j=i;j<str.length();j++){ 7 char c=str.charAt(j); 8 if(temp.contains(c)){ 9 if(LongerStr.size()<temp.size()){ 10 LongerStr=temp; 11 } 12 break; 13 } 14 else{ 15 temp.add(c); 16 } 17 } 18 } 19 System.out.print(LongerStr); 20 for(char c:LongerStr){ 21 System.out.print(c); 22 } 23 }
9.
name kecheng fenshu
张三 语文 81
张三 数学 75
李四 语文 76
李四 数学 90
王五 语文 81
王五 数学 100
王五 英语 90
(1)查询出每门课都大于80 分的学生姓名
select name from table group by name having min(fenshu)>80
(2)给出成绩所有合格的学生信息(包含姓名、课程、分数),注:分数在60以上评为合格
select * from 成绩表 where 姓名 not in (select distinct 姓名 from 成绩表 where 分数 < 60)
10.redis干吗用的,hbase干吗用的?
redis基于内存的高性能key-value数据库,具备加速和持久化的特征,速度快,由于存在内存中,分布式,读写分离,支持事物原子性。
hbase是一个分布式的,面向列的开源数据库,非结构化数据的分布式存储系统,对于数据结构字段不可以肯定或杂乱无章,很是难按一个概念去进行抽取的数据适合hbase,由于它支持动态添加列。
11.首页加载慢怎么办?
1.是不是图片太大,压缩图片。
2.是够访问量过载
3.是否请求了大量接口
4.某个请求返回来的数据太多
5.是不是网络问题
6.按需加载
7.js和css合并
12.注册要注意的?
1.密码在网络传输的安全性,post:不能在本地存储与安全相关的用户信息,在向服务器传递数据的时候,都不能直接传递与安全相关的用户信息。https
2.数据库中存储密码的安全性,md5加密,加盐,随机生成字符串
3.在浏览器输入的安全性,禁止密码能够复制
4.预防sql注入
13.mock测试就是在测试过程当中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来建立以便测试的测试方法。
14.列表生成式:能够生成列表的表达式
b = range(1, 11) c = [x*x for x in b] print(c)
15.装饰器:为已经存在的函数或对象添加额外的功能,decorator
16.自动化用的插件,jsonpath,redis,pymysql,yagmail,time,unittest,request
17.性能检测的检测指标
资源指标:CPU使用率,内存利用率,磁盘I/O,网络带宽
系统指标:并发用户数,在线用户数,平均响应时间,事务成功率,超时错误率
18.二级接口
19.unittest
20.get,post请求的区别
get post
外观上 | 在地址上看到传递的参数和值 | 地址栏上看不到数据 |
提交数据大小 | 提交少许数据,不一样的浏览器最大值不同,IE是255个字符 | 提交大量数据,能够经过更改php.ini配置文件来设置post提交数据的最大值 |
安全性 | 低 | 高 |
提交原理 | 提交的数据和数据之间在独立的 | 将提交的数据变成XML格式提交 |
灵活性 | 很灵活,只要有页面的跳转就能够get传递数据 | 不灵活 |
21.list【1,2,4,8,16】
public static void main(String []args){
for(int i=1;i<=16;i=i*2){
system.out.print(i)
}
}
22.链表
10,20,50
50,20,10
1 public static void main(String args[]) { 2 List<Integer> list=new ArrayList(); 3 list.add(10); 4 list.add(30); 5 list.add(50); 6 List<Integer> list2=new ArrayList(); 7 for (int i = list.size()-1; i>=0; i--){ 8 list2.add(list.get(i)); 9 } 10 for(Integer a:list2){ 11 System.out.println(a); 12 } 13 14 }
23.查全部重复的email
id name email
1 zhangsan zs@163.com
2 lisi ls@163.com
3 zhangsansan zs@163.com
select email,count(id) from table group by email having count(id)>1