java面试基础复习----基础的基础(1)

{}与${}区别

  1. #{}是sql预编译
  2. ${}是字符串替换,也就是占位符,占位符就是用来替换的

MYSQL索引,为什么用索引,优缺点

1.mysql索引优点是可以保证数据的唯一性,更加快速找到需要的值.
2.缺点是维护效率低,增加删除的时候索引也需要改变

grop by与order by -----什么意思

  1. group by是用来分组的,要有聚合函数来配合,例如sum(),avg()等等
  2. order by是用来排序的,默认升序,结尾家desc就是降序。

SQL中limit的参数

sql中limit是用来设置返回的数量的例如 select * from aa limit 0,1。0表示从什么开始的,1表示个数,也就是1条数据

SQL语句优化

WHERE + ORDER BY + LIMIT
或者
WHERE + ORDER BY(多栏位) + LIMIT

jQuery中选择器

1.元素选择器

$(“p”) 选择所有p标签
$(“p.intro”). 选择所有class=“intro” 的p标签
$(“p#demo”) 选择所有id=“demo” 的p标签、

2.属性选择器
$(”[href]“) 选择属性是href的元素
$("[href!=aa]") 选择href不等于aa的元素

3.css选择器
$(“p”).css(“background-color”,“red”)把所有p标签的背景颜色改为红色。

JSP与servlet区别,及生命周期

jsp编译后就变成了servlet(jsp本质上就是servlet,只不过JVM只能识别 java类,不能够识别 jsp代码,web容器将 jsp代码编译成 jvm可以识别的 java代码)。
jsp更擅长页面展示,servlet则更加擅长逻辑控制。

servlet生命周期

  1. 初始化阶段,调用init()方法。
  2. 相应客户请求阶段,调用servlet()方法。
  3. 生命结束,调用destroy()方法。

jsp生命周期(其实和servlet差不多
jsp必须转化servlet,才可以对请求服务,所以只是多几个转译的过程

  1. 转化
  2. 编译
  3. 加载并实例化
  4. 初始化,调用jspinit()方法,
  5. 用户响应阶段,调用jspservlet().
  6. 结束时候调用jspdestroy().

mybatis中resultMap的参数配置,如何在输出栏,打印SQL语言

//例如我写过的访美团系统中的映射
<resultMap type="Shangjia" id="sj">
<result property="Sid" column="Sid"/>
<result property="Sc" column="Sc"/>
<result property="Sorimage" column="Sorimage"/>
<result property="Sname" column="Sname"/>
<result property="Pei" column="Pei"/>
<result property="Sphone" column="Sphone"/>
<collection property="cais" ofType="Scai">
<result property="Cid" column="Cid"/>
<result property="Cimage" column="Cimage"/>
<result property="Cname" column="Cname"/>
<result property="Cmoney" column="Cmoney"/>
<result property="Cmiao" column="Cmiao"/>
</collection>
</resultMap>

//一对多映射,一个商家可以有多个菜
property意思是实体的名字 而column则对应的是数据库中的字段名字

至于打印sql语句,只需要在myBayis中添加log4j即可在运行是在控制台看到sql语句。

Ajax中的同步与异步,如何实现

Ajax中同步的意思是,当js执行到这个ajax的时候,页面中其他代码停止加载,出现假死状态,当这个Ajax执行完毕后,页面其他代码才会继续执行,假死状态结束。
相反异步的意思是,执行到Ajax时候,页面其他代码继续执行,不存在出现假死状态。
至于实现,只需要更改Ajax中的async,默认fales,默认异步。ture是同步。

object类有哪些方法

一共有13个方法

在这里插入图片描述

联表查询

select 查询的字段
from 表名(1),表名(2)
where 条件关系

例如:
select s.name
from class c,student s
where s.sid =c.cid

map和set的区别

首先来说一下Map

  1. map不是collection的子接口和实现类,map是一个接口
  2. map一个键一个值,例如Map<k,v> 其中v可以重复,但是k只可以是唯一,k也可以为Null,但是只能有一个Null

我再说一下Set

  1. set是不可以重复的
  2. set是一个无序容器,你无法保证set的顺序排列
  3. 同样最多也只能有一哥null、

最后我再顺便提一下List

  1. list是可以重复的
  2. list同样可以有多个Null
  3. list是一个有序容器,保持了每一个插入顺序,输出即是插入顺序

Arraylist与Array区别

  1. Arraylist用我的话来说的话就是会自动扩展容量的Array
  2. 当你无法确定无法确定数组大小的时候才用Arraylist,否则还是用Array吧,因为毕竟Array效率高

猜你喜欢

转载自blog.csdn.net/weixin_44791262/article/details/90611127