面试题反思

今天实验室面试,正好压线进入,选了后端方向,其实菜得很。特来把脑海中还有映像的来做个订正。

1、请简述css的盒子模型

盒子模型就是类比现实生活中的盒子,它有margin(外边距)、padding(内边距)、border(边间距)、content(盒子里面实物的大小)。

代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>css盒模型</title>
</head>
<style type="text/css">
.content {
    width: 300px;
    height: 400px;
    border: 5px solid #242424;
    padding: 20px;
    background-color: #898989;
}
</style>
<body>
    <div class="content"></div>
</body>
</html>

图中可以发现的信息:

1.明明设置的div宽高是300*400的,查看器显示是350*450,why?

不难想到(即盒子模型),350*450才是该元素的总面积

350(width) = 300(content) + 20(padding)* 2 + 5(border)* 2
450(height)= 400 (content)+ 20(padding)* 2 + 5(border)* 2
 

2.明明没有设置外边界,但和页面左上边界明显有距离,打开chrome控制台,发现body标签的margin的默认值是8(见下图)。

 

扫描二维码关注公众号,回复: 3961051 查看本文章

2.css的position的取值有哪些,阐释一下你的理解。

这里有一篇博客个人觉得阐释的很明白。

3.用jquery或者js发送一次ajax请求。

这里简单用一下load,详细的ajax会在其他帖子展开。

异步加载另一个页面的内容

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>ajax</title>
		<script type="text/javascript" src="bootstrap/js/jquery-3.3.1.js"></script>
		<script type="text/javascript">
			$(function(){
				$("#send").click(
				function(){
					$("#qwer").load("ajaxhuoque.html");
				}
				);
			});
			
		</script>
	</head>
	<body>
		<input type="button" id="send" value="ajax获取">
		<div id="qwer">
			
		</div>
	</body>
</html>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<div class="comment">
			搞什么鬼?
		</div>
	</body>
</html>

4.用js创建一个对象,并调用。

	<script type="text/javascript">
		var Student={
			createNew:function(x,y){
				var student={
					name:x,
					age:y
				}
				return student;
			}
		};
		var temp=Student.createNew("ycj",21);
		alert(temp.name);
	</script>

js里面貌似没有类,需要用对象进行模拟。

 

5.js的基本数据类型。

字符串  数值 (包括整型和浮点型)  布尔(空字符串为false)   对象()   数组(可以嵌套数组,里面的元素类型可以不一致)

 

6.简述一种java web 框架及工作原理。

复制的网上的,目前忘了差不多了,不太会用

作用:

SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层

使用spring MVC负责请求的转发和视图管理

spring实现业务对象管理,mybatis作为数据对象的持久化引擎

原理:

SpringMVC:

1.客户端发送请求到DispacherServlet(分发器)

2.由DispacherServlet控制器查询HanderMapping,找到处理请求的Controller

3.Controller调用业务逻辑处理后,返回ModelAndView

4.DispacherSerclet查询视图解析器,找到ModelAndView指定的视图

5.视图负责将结果显示到客户端

Spring:我们平时开发接触最多的估计就是IOC容器,它可以装载bean(也就是我们Java中的类,当然也包括service dao里面的),有了这个机制,我们就不用在每次使用这个类的时候为它初始化,很少看到关键字new。另外spring的aop,事务管理等等都是我们经常用到的。

Mybatis:mybatis是对jdbc的封装,它让数据库底层操作变的透明。mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。

猜你喜欢

转载自blog.csdn.net/zpjlkjxy/article/details/82708705