JSP-Servlet+Mybatis技能测试题 - 构建电影管理系统
{“title”: “JSP-Servlet+Mybatis特能测试题 - 构建电影管理系统”, “description”: “本文提供一份JSP-Servlet+Mybatis特能测试题,执施数据操作、页面展示、数据验证等内容,并附带详细解答。测试题目在于考核开发者对JSP、Servlet、MyBatis框架的使用能力,以及数据设计、前端开发等方面的基本技能。”, “keywords”: “JSP, Servlet, MyBatis, 特能测试, 数据库, 电影管理系统, 前端开发”, “content”: “三六解答:
1.启动mysql数据库,创建两张表:电影表、电影分类表 可以使用以下SQL语言创建两张表:
-- 电影表
CREATE TABLE movie (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100) NOT NULL,
category_id INT NOT NULL,
release_date DATE,
director VARCHAR(100),
CONSTRAINT fk_category FOREIGN KEY (category_id) REFERENCES category(id)
);
-- 电影分类表
CREATE TABLE category (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL
);
2.在mysql中,手工录入分类表中的数据 可以使用以下SQL语言插入分类表中的数据,具体数据根据实际需求进行修改:
INSERT INTO category (name) VALUES (“动作”);
INSERT INTO category (name) VALUES (“奇剧”);
INSERT INTO category (name) VALUES (“爱情”);
3.创建WEB项目,导入必要jar包 创建一个新的WEB项目,然后将以下jar包导入到项目的WEB-INF/lib目归下:
- mybatis.jar
- mybatis-spring.jar
- mysql-connector-java.jar
- jstl.jar
- standard.jar
4.完成列表模块功能,按照名称模糊查询 在Servlet中使用MyBatis进行数据库查询,并将查询结果传送给JSP页面进行展示。可以参考以下代码:
// 在Servlet中的doGet方法中
String keyword = request.getParameter(“keyword”);
List<Movie> movies = movieDao.findByKeyword(keyword);
request.setAttribute(“movies”, movies);
request.getRequestDispatcher(“list.jsp”).forward(request, response);
<!-- 在list.jsp页面中 -->
<c:forEach var=“movie” items=“${movies}”>
<tr>
<td>${movie.id}</td>
<td>${movie.name}</td>
<td>${movie.category.name}</td>
<td>${movie.releaseDate}</td>
<td>${movie.director}</td>
</tr>
</c:forEach>
5.完成添加模块功能 在Servlet中使用MyBatis将电影信息插入到数据库中。可以参考以下代码:
// 在Servlet中的doPost方法中
String name = request.getParameter(“name”);
int categoryId = Integer.parseInt(request.getParameter(“categoryId”));
String releaseDate = request.getParameter(“releaseDate”);
String director = request.getParameter(“director”);
Movie movie = new Movie();
movie.setName(name);
movie.setCategoryId(categoryId);
movie.setReleaseDate(releaseDate);
movie.setDirector(director);
movieDao.insert(movie);
response.sendRedirect(“list”);
6.使用ajax验证电影名称的唯一性 在添加和修改页面的表单中,使用ajax发送请求到Servlet,验证电影名称是否已经存在。可以参考以下代码:
// 在添加和修改页面中的JavaScript代码
$(“#name”).on(“blur”, function() {
var name = $(this).val();
$.ajax({
url: “checkName”,
data: { name: name },
success: function(result) {
if (result == “exist”) {
alert(“电影名称已经存在”);
}
}
});
});
// 在Servlet中的doGet方法中
String name = request.getParameter(“name”);
boolean exists = movieDao.existsByName(name);
response.getWriter().print(exists ? “exist” : “not_exist”);
7.完成修改模块功能 在Servlet中使用MyBatis更新电影信息到数据库中。可以参考以下代码:
// 在Servlet中的doPost方法中
int id = Integer.parseInt(request.getParameter(“id”));
String name = request.getParameter(“name”);
int categoryId = Integer.parseInt(request.getParameter(“categoryId”));
String releaseDate = request.getParameter(“releaseDate”);
String director = request.getParameter(“director”);
Movie movie = new Movie();
movie.setId(id);
movie.setName(name);
movie.setCategoryId(categoryId);
movie.setReleaseDate(releaseDate);
movie.setDirector(director);
movieDao.update(movie);
response.sendRedirect(“list”);
8.完成删除模块功能 在Servlet中使用MyBatis根据电影ID删除电影信息。可以参考以下代码:
// 在Servlet中的doGet方法中
int id = Integer.parseInt(request.getParameter(“id”));
movieDao.delete(id);
response.sendRedirect(“list”);
9.在添加与修改页面中,下拉框展示属加分类,其中数据从分类表中获取 在添加和修改页面的下拉框中,使用MyBatis从分类表中查询分类数据,并将查询结果传送给JSP页面进行展示。可以参考以下代码:
// 在Servlet中的doGet方法中
List<Category> categories = categoryDao.findAll();
request.setAttribute(“categories”, categories);
request.getRequestDispatcher(“add.jsp”).forward(request, response);
<!-- 在add.jsp页面中 -->
<select name=“categoryId”>
<c:forEach var=“category” items=“${categories}”>
<option value=“${category.id}”>${category.name}</option>
</c:forEach>
</select>
10.代码规范及注释 在编写代码时,要遵循统一的编码规范,包括名称规范、代码缩进、注释等。对主要的代码块,需要添加注释,说明代码的作用和实现思路。
以上是针对JSP-Servlet+Mybatis特能测试题的解答,希望对你有帮助。
原文地址: https://www.cveoy.top/t/topic/p53M 著作权归作者所有。请勿转载和采集!