山东华软金科面试题整理
本文最后更新于:2 年前
对象:山东华软金科公司(简称“普元数智”)
待遇:3k(实习生)/4k-6k(转正)
难度:0.5(满分1)
项目:银行IT系统,手机银行、信贷系统等
面试题
数据库
一个学生表,查询每个班级多少人,写出SQL语句
SQL语句:
1 |
|
内链接和左连接的区别
- 内连接(等值连接)获取两表中字段匹配关系的记录。
- 左连接: 获取左表所有数据,即使右表无数据。
示例:
1 |
|
LEFT JOIN
和 RIGHT JOIN
用法相似。
框架
Mybatis中标记变量的符号,以及差别(SQL注入)
$和#
#可以防止SQL注入
SSM从controller开始,从上往下分那几层
略
数据库事务控制在那一层,事务控制有几种写法
Services层
什么是AOP,那些事物适合AOP实现
AOP为Aspect Oriented Programming的缩写。通过预编译方式和运行期间动态代理==实现程序功能的统一维护==的一种技术。
应用:
日志记录,性能统计,安全控制,事务处理,异常处理等等。
什么是事务,阐述事物的原子性(回滚)
事务是一种操作,用来==处理操作量大,复杂度高的数据== 。
特点:
- MySQL只有InnoDB支持事务
- 保证事物的完整性
- 管理INSERT、UPDATAE、DELETE语句
什么是声明式事务
声明式事务:该事务是建立在AOP之上的,其本质是对方法前后进行拦截,然后在目标方法开始之前创建或加入一个事务,在执行完目标方法之后根据执行情况提交或回滚事务。
前端
前端页面数据的提交方式
- 通过网络连接提交——GET URL
- 通过表单提交——POST multipart/form-data
- 通过AJAX(Asynchronous JavaScript and XML)提交——POST application/json
- 文件上传——POST application/x-www-form-urlencode
一个GET三个POST
GET和POST的区别
- POST相对安全。GET提交的数据放在URL中,POST则不会(POST也不安全,因为HTTP是明文传输抓包就能获取数据内容,要想安全还得加密)。
- GET回退浏览器无害,POST会再次提交请求(GET方法回退后浏览器再缓存中拿结果,POST每次都会创建新资源)。
- GET提交的数据大小有限制(是因为==浏览器==对URL的长度有限制,GET本身没有限制),POST没有。
- GET可以被保存为书签和浏览器历史记录中,POST不可以。
- GET能被缓存,POST不能。
- GET只允许ASCII字符,POST没有限制。
表单数据的提交方法
json格式提交
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20$(document).ready(function(){
$("#button_submit").click(function(){
var name = $("#userName").val();
var pass = $("#password").val();
var user = {userName:name,password:pass};//拼装成json格式
$.ajax({
type:"POST",
url:"${pageContext.request.contextPath}/user/addUser4",
data:user,
success:function(data){
alert("成功");
},
error:function(e) {
alert("出错:"+e);
}
});
});
});序列化表单提交
如果表单元素很多,手工拼装成json数据非常麻烦,可以使用jQuery提供的serializeArray()方法序列化表单元素,返回json数据结构数据。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22$(document).ready(function(){
$("#button_submit").click(function(){
//序列化表单元素,返回json数据
var params = $("#userForm").serializeArray();
//也可以把表单之外的元素按照name value的格式存进来
//params.push({name:"hello",value:"man"});
$.ajax({
type:"POST",
url:"${pageContext.request.contextPath}/user/addUser5",
data:params,
success:function(data){
alert("成功");
},
error:function(e) {
alert("出错:"+e);
}
});
});
});
Maven
项目依赖jar包的配置文件,依赖jar包的存放位置
配置文件: pom.xml
存放位置: 本地maven仓库,在setting.xml
中可以更改。
版本管理工具
有哪些
- Git
- SVN
- HG
- CVS
总结
面试后端和数据库的内容回答的不错,但是MyBatis回答的一般,事务操作和前端知识回答的一塌糊度。询问问题时可能会有面临全干工程师的危险。。。。。。。
面试官态度很友善,主动帮助捋顺思路。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!