找不到测试自己的方式??为你们准备的Java考试试题快来测试一下自己的水平;
附:试题答案+视频讲解
考试时间180分钟
总分 100分
一、 选择题(单选,每题1分)
1. JavaScript中哪个不是不是它的基本组成部分()
A DOM
B BOM
C ECMAScript
D History
2. jQuery中ID选择标识符()
A .(点)
B $
C #
D \
3. 在HTTP协议中,响应头中哪个参数可以设置响应的内容类型()
A. Content-Type
B. Cookie
C. Type-Content
D. Accept
4. Tomcat默认端口号()
A 80
B 8080
C 443
D 8088
5. 在Servlet中四大作用域不包含()
A Request
B Response
C Session
D Application
6. 在Servlet中,当获取到session对象后,下面哪行代码可以销毁session()
A session.clear()
B session.remove()
C session.invalidate()
D session.stop()
7. 在Servlet中,向请求域中设置参数名为name,值为张三的写法()
A response.setAttribute(“name”,”张三”);
B response.setAttribute(“张三”,”name”);
C request.setAttribute(“name”,”张三”);
D request.setAttribute(“张三”,”name”);
8. 在Spring中,关于IoC说法错误的是()
A IoC 可以由Spring帮助实例化对象。
B IoC 实例化的对象只能是单例的。
C 通过IoC可以让Spring管理的实例进行依赖注入。
D Spring整合其他技术最主要就是通过IoC特性。
9. 在Spring中,关于AOP说法错误的是()
A AOP 中文名称面向切面编程。
B 切面可以是一个方法。
C 切面可以是很多方法。
D 通过AOP可以让Spring帮助实例化对象。
10. 在Spring中,关于声明式事务说法错误的是()
A 可以在方法上添加@Transactional 对方法添加声明式事务。
B 声明式事务是基于Spring AOP实现的。
C 声明式事务主要目的是管理查询方法。
D 声明式事务可以让程序员更加轻松的管理事务。
11. 在Spring MVC中,在控制器方法上添加哪个注解可以接收Get请求()
A @RequestMapping()
B @PostMapping
C @Controller
D @ResponseBody
12. 在Spring MVC中,在控制器类上添加哪个注解后就不需要在控制器方法上添加@ResponseBody注解()
A @Controller
B @RequestMapping
C @RestController
D @RequestParam
13. 在Spring MVC有如下代码,当请求时没有携带参数age会出现什么情况()
@RequestMapping("/demo") @ResponseBody public String getAge(int age){ return "demo";} |
---|
A 控制台打印:正常执行
B 出现NullPointException异常
C 出现跳转到demo.html页面
D 出现IllegalStateException异常
14. 在Spring MVC中有如下代码,当发起请求 http://localhost:8080/demo2/bjsxt 后会出现什么结果()
@RequestMapping("/demo2/{name}") @ResponseBody public String demo(String name){ System.out.println("获取到的name:"+name); return "demo";} |
---|
A 控制台打印:获取到的name:bjsxt
B 控制台打印:获取到的name:null
C 出现异常:NullPointException
D 跳转到demo.html页面
15. 在Spring MVC中,对@ResponseBody注解说法错误的是()
A 添加了@ResponseBody注解的方法会对方法返回值进行转换处理。
B 如果项目中转换类依赖只有jackson-databind依赖,会对返回值转换为JSON
C 如果方法返回值是Map,响应头中Content-Type:application/json;charset=utf-8
D 如果方法返回值是实体类,响应头中Content-Type:text/html
16. 在Spring MVC中,哪种方式不是request作用域传值()
A public String demo3(HttpServletRequest req){ req.setAttribute("a","b"); return "demo";}
B public String demo3(Model model){ model.addAttribute("a","b"); return "demo";}
C public String demo3(ModelMap model){ model.addAttribute("a","b"); return "demo";}
D public String demo3(HttpSession session){ session.setAttribute("a","b"); return "demo";}
17. 在Spring MVC 中,给定下面页面代码,关于说法错误的是()
<form action="/demo" enctype="multipart/form-data" type="post"> <input type="file" name="upload" /> <input type="submit" value="上传文件" /> </form>
A 实现文件上传时表单的enctype必须设置为multipart/form-data
B 实现文件上传时表单的请求方式必须是POST类型
C 控制器方法参数可以使用public String upload(MultipartFile file)接收。file参数可以不用和文件域name对应。
D MultipartFile的getInputStream()方法可以获取文件流。
18. 在SpringMVC中哪个注解可以设置请求参数的默认值()
A @Controller
B @RequestMapping
C @RequestParam
D @ResponseBody
19. 在SpringMVC中当使用Restful传参时,发起请求url:http://localhost:8080/demo/123,下面哪种写法无法获取URL中123()
A @RequestMapping("/demo/{id}") @ResponseBody public String demo(@PathVariable Long id){ return "demo";}
B @RequestMapping("/demo/{id}") @ResponseBody public String demo3(@PathVariable String id){ return "demo";}
C @RequestMapping("/demo/{id}") @ResponseBody public String demo3(@PathVariable("id") String name){ return "demo";}
D @RequestMapping("/demo/{id}") @ResponseBody public String demo3(@PathVariable String name){ return "demo";}
20. 在jQuery中,以下哪个函数不支持GET请求方式()
A $.ajax()
B $.get()
C $.getJSON()
D $.post()
21. 在Maven中,不属于Maven支持的POM模型()
A 继承
B 依赖
C 聚合
D 组合
22. 以下对EasyUI说法错误的是()
A EasyUI是前端框架。
B EasyUI 适合做项目后台系统。
C EasyUI 适合做管理类系统。
D EasyUI 向服务器端发起的请求都是同步请求。
23. 以下对RBAC描述错误的是()
A RBAC 中文名称:基于角色的访问控制。
B RBAC 是一种数据库设计的指导思想。
C RBAC的核心是角色。
D RBAC是一个框架。
24. 在Spring Boot中关于启动类说法错误的是()
A 启动类上要有@SpringBootApplication注解
B Spring Boot能够扫描启动类所在包及子包的注解。
C 启动类一定要放在包中,如果直接src/main/java下,可能导致无法扫描注解。
D 启动类必须放在com.bjsxt包中。
25. 在Spring Boot中,关于整合MyBatis说法错误的是()
A 需要导入mybatis-spring-boot-starter依赖
B 可以通过在启动类添加@MapperScan注解扫描Mapper接口
C Mapper.xml和Mapper接口必须放在同一个包下
D 可以通过@Mapper注解标识Mapper接口。
26. 在Spring Boot中,以下说法错误的是()
A Spring Boot支持properties类型配置文件。
B Spring Boot 支持yml类型配置文件。
C Spring Boot 配置文件可以放在项目根目录下。
D Spring Boot 配置文件必须放在resources目录中 。
27. 在Spring Boot中,关于整合Thymeleaf说法错误的是()
A Spring Boot项目中只能使用Thymeleaf作为页面技术。
B thymeleaf页面需要放在src/main/resources/templates目录中
C Spring Boot整合Thymeleaf后,视图解析器默认前缀classpath:/templates/
D Spring Boot 整合Thymeleaf后,视图解析器默认后缀 .html
28. 在Spring Boot中,以下说法错误的是()
A 在Spring Boot项目中一般都会继承spring-boot-starter-parent,保证相关依赖版本统一。
B 静态资源都放在src/main/resources/static 目录中。
C Spring Boot推荐除了Java代码以外资源都放入到resources中,所以很少配置资源拷贝插件。
D Spring Boot项目和Spring 框架没有关系。
29. 在Shiro中,以下说法错误的是()
A Shiro是权限管理框架。
B Shiro 不能和RBAC同时使用。
C Shiro 核心功能包含认证。
D Shiro 多用在项目后台或管理类型项目中。
30. 在Git中,以下说法错误的是()
A Git是目前主流的版本控制软件。
B 使用Git便于团队项目的整合。
C 市场上除了Git还有SVN,CVS等版本控制软件。
D 使用Git 时需要频繁的把项目复制、粘贴到本地其他目录进行备份保存。
二、 机试(总分70分)
1 核心考点:
-
Spring Boot
-
MySQL
-
MyBatis
-
Ajax
-
事务控制
-
业务实现能力
2 数据库设计
表一: 按照下面要求创建数据库表,并录入两条初始数据。(表创建3分)
表名 | item | 表中文名 | 商品表 |
---|---|---|---|
字段名 | 字段类型 | 字段约束 | 字段描述 |
id | bigint | 主键、自增 | 商品主键 |
title | varchar(200) | 非空 | 商品标题 |
price | double(10,2) | 非空 | 商品价格,单位分 |
num | int(7) | 非空 | 商品库存 |
表二:按照下面要求创建数据库表,此表可以不录入初始数据。(表创建3分)
表名 | e_order | 表中文名 | 订单表 |
---|---|---|---|
字段名 | 字段类型 | 字段约束 | 字段描述 |
id | bigint | 主键、自增 | 订单主键 |
price | double(10,2) | 非空 | 商品价格,单位分 |
3 机试要求
创建项目:项目名称为姓名拼音全拼。例如:张三的项目名为zhangsan(项目名2分)
现要开发一个简易订单系统。给定要求如下:
当用户在浏览器输入 http://localhost:9999 (端口号2分)后会显示全部商品数据(能够正常显示商品列表信息15分)。
此处必须使用Ajax实现页面数据显示,使用作用域传值即使实现效果也没有分数。
页面效果如下:
当点击删除按钮后弹出确认框,询问是否要删除这条商品。(显示确认框5分)
如果点击取消不做任何操作,如果点击确定后发送Ajax请求进行删除,删除成功后使用jQuery或JavaScript脚本把当前行删除。删除当前行时不允许刷新当前页面。(正确删除15分)
点击购买按钮后发送ajax请求,并携带当前商品的主键值作为参数,服务器服务器端接收商品主键值后需要根据主键查询出商品信息。然后把对订单表新增一条数据,订单表中价格就是当前购买商品价格。然后还需要修改商品表中数量,让数量减一。购买成功后,使用JavaScript或jQuery让数量减一。如果购买失败,页面直接alert商品购买失败。
注:在当前练习中不需要考虑库存负数等情况。
注:在当前练习中不需要考虑团队开发问题,可以直接在商品service中调用订单Mapper
点击购买按钮后询问是否要购买当前商品吗?(询问购买确认框5分)
点击确定按钮后进行购买, 如果购买成功后提示购买成功
点击确定按钮后页面中数量减一(此处减一使用JavaScript或jQuery的DOM操作实现)(实现页面数量修改4分)
查看数据库中e_order表发现新增了一条数据(新增数据成功8分)
查看数据库中item表发现对应商品数量减少1(修改数据成功8分)