1.栈和消息队列的区别
栈先进后出,消息队列先进先出,
栈的性能比较低,而消息队列性能比较高,
栈是限定只能在表的一端进行插入和删除操作的线性表。
队列是限定只能在表的一端进行插入和在另一端进行删除操作的线性表。
栈只能从头部取数据,也就最先放入的需要遍历整个栈最后才能取出来,而且在遍历数据的时候还得为数据开辟临时空间,保持数据在遍历前的一致性。
队列则不同,它基于地址指针进行遍历,而且可以从头或尾部开始遍历,但不能同时遍历,无需开辟临时空间,因为在遍历的过程中不影像数据结构,速度要快的多
ps: 消息队列可进行订阅,广播,可以一对一,一对多,可以群发。
2.两张表多对多怎么设计表
多对多的话,需要建立一张关系表,把关联字段做成一张表进行两张表的关联。总共三张表。
3.同时查两张表,一张表3条数据,一张表2条数据,会查出几条数据
假如3条的在前就会查出6条3条数据表的两两重复数据,假如2条的在前就会查出6条2条数据表的三三重复数据。(涉及到笛卡尔积,盲区)
4.mybaits使用#号和$符的区别
#{变量名}可以进行预编译、类型匹配等操作,
#{变量名}会转化为jdbc的类型。
#方式能够很大程度防止sql注入。
${变量名}不进行数据类型匹配,直接替换。
$方式无法方式sql注入。
$方式一般用于传入数据库对象,例如传入表名。
尽量多用#方式,少用美元符号方式。
#会自动加双引号,$不会加双引号
ps:由于一直用#以至于疏忽$符号的使用,忘记不同点。
5.类定义,方法定义格式,常量定义格式,包名定义格式
类定义首字母大写
方法定义遵循驼峰形式,
首字母小写,
常量定义静态常量全部大写,普通常量遵循驼峰形式,首字母小写。
6.常量指什么
常量是指已经定义好的数字,字符串,bool型。
在程序执行过程中,其值不发生该的量称为常量,他们可与数据类型结合起来分类,在程序中,常量可以不经声明直接引用。
7.假如方法返回一个属性类信息,但是返回的类信息为空我不返回空要返回没有参数怎么做。
定义一个泛型类进行结果集接收,有数据就返回接收数据返回,没有数据接收字符串消息返回。
使用Object对象也可以进行直接返回。(ps:这个没回答,后面才想起来)
结语:
有些坑不得不踩,有些事不得不做,希望能通过分享互相进步,走过这段平凡的路。