1.#{}和${}分别
1.#将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by "111", 如果传入的值是id,则解析成的sql为order by "id".
2.将传入的数据直接显示生成在sql中。如:orderby将传入的数据直接显示生成在sql中。如:orderbyuser_id$,如果传入的值是111,那么解析成sql时的值为order by user_id, 如果传入的值是id,则解析成的sql为order by id.
3.#方式能够很大程度防止sql注入。
4.$方式无法防止Sql注入。
5.$方式一般用于传入数据库对象,例如传入表名.
6.一般能用#的就别用$.
MyBatis排序时使用order by 动态参数时需要注意,用$而不是#
2.Tomcat,MySQL,Redis端口号
8080 3306 6379
3.什么是泛型?
把类型明确的工作推迟到创建对象或调用方法的时候才去明确的特殊类型
作用: 代码更加简洁【不用强制转换】
程序更加健壮【只要编译时期没有警告,那么运行时期就不会出现ClassCastException异常】
可读性和稳定性【在编写集合的时候,就限定了类型】
4.HashMap与HashTable是什么?怎么写
HashMap允许键和值是null,而Hashtable不允许键或者值是null。
Hashtable是同步的,而HashMap不是。因此,HashMap更适合于单线程环境,而Hashtable适合于多线程环境。
5.项目准备好之后怎么配置Maven
6.Redis的类型
string(字符串),hash(哈希),list(列表),set(集合)及 zset(sorted set:有序集合)。
7.Redis基础命令
$ redis-cli 基础语法
有时候会有中文乱码。要在 redis-cli 后面加上 --raw
8.Mybatis和jpa什么区别
1. hibernate是全自动,而mybatis是半自动
2 mybatis相比hibernate需要关心很多细节——mybatis由于不用考虑很多细节,开发模式上与传统jdbc区别很小,因此很容易上手并开发项目,但忽略细节会导致项目前期bug较多
3 sql直接优化上,mybatis要比hibernate方便很多
9.介绍一下Spring
Spring框架是一个开源的容器性质的轻量级框架。主要有三大特点:容器、IOC(控制反转)、AOP(面向切面编程)
10什么是SpringBoot
11.介绍jdk,jre,jvm;
JDK=JRE+Java开发工具,jre=jvm+类包
14,怎么启动SpringBoot
一:IDE 运行Application这个类的main方
二:在springboot的应用的根目录下运行mvn spring-boot:run
三:使用mvn install 生成jar后运行
先到项目根目录
mvn install
cd target
java -jar xxxx.jar