Redis里有哪几种数据类型
Redis数据类型,String、hash、list、set、sorted set,应该还可以简单的说了下各种使用场景(但是忘记说了- -)
git 的使用,平时的使用,包括代码冲突如何解决
远程的项目代码克隆一份副本到本地,对副本进行添加修改删除代码不影响远程库,当其他人更新了代码以后你可以将最新数据拖至本地,配置git相关编辑器工具可以显示变更的代码
代码冲突问题出现于git分支管理
<1>两个分支中修改了同一个文件(不管什么地方)
<2>两个分支中修改了同一个文件的名称
Java集合类
ArrayList 和 Map的区别 , 他们的底层实现是基于什么算法
ArrayList 和 Map 底层实现都为数组 ,Map需要存放<K,V>,Key不可以重复,然后Set的底层实现是存放Map的Key,所以Set中也不可以,ArrayList 有序, Set和Map无序
JRE和JDK的区别
Java Runtime Environment 和 Java Development Kit的区别故名思意一个是Java运行环境包括虚拟机和一些基本类库 , JDK则是开发人员使用的,JDK包括JRE,还包括编译源码的Javac工具,还有各种其他的工具。
MyBatis中#{} 和 ${}的区别
配置文件中的SQL语句使用#{value}代表参数则语句在预编译时由占位符代替(?),后由DBMS转换为带单引号的参数;而用${value}代表参数则其在预编译阶段就已被编译成SQL的一部分,且不带引号,这会引发所谓的“SQL注入”的问题。
那么想要预编译有效,就要尽量使用#{value}代表参数。
而在不需要参数成为一个引用的情况下不得不使用${value},如:
1、Like子句中的参数不额外写%,而是将%固定写在配置文件中
select * from user where username like ‘%${value}%’
2、字段名、表名作为参数时,其不能加引号,因为MySQL不会将带引号的字符串视为表结构的名称。