正在回答
8回答
同学可以看看一下这三种样式喜欢哪一个呢?

如果同学的想要的是这样

目前在Kaptcha中还不能够直接设置这样的图片样式呢,同学可能要自定义一个来运用了。
MasonM
2019-04-27 15:58:04
package com.mason.dto;
import com.mason.entity.Course;
import java.util.*;
//此类中的方法形式与CourseDao类一致,用于对CourseDao中对应方法的调用。
public class CourseDaoImpl implements CourseDao {
private static final List<Map<String, Object>> usersTable = new ArrayList<>();//用户表
private static final List<Course> coursesTable = new ArrayList<>();//课程表
static {
Map<String, Object> superAdmin = new HashMap<>();
superAdmin.put("type",0);
superAdmin.put("username","imooc");
superAdmin.put("password","imooc");
usersTable.add(superAdmin);
}
@Override
public int login(String username, String password) {//用户登录
for (Map<String, Object> userMap : usersTable) {
if (userMap.get("username").equals(username)) {
if (userMap.get("password").equals(password)) {
return 1;//登录成功返回1
}
}
}
return 0;//登录失败返回0
}
@Override
public void addUser(String username, String password) {//普通管理员添加方法
Map<String, Object> admin = new HashMap<>();
admin.put("type",1);
admin.put("username",username);
admin.put("password",password);
usersTable.add(admin);
}
@Override
public List<Map<String, Object>> getAllUsers() {//查询所有管理员
return usersTable;
}//查询所有管理员
@Override
public void delUser(String username) {//删除管理员
Map<String, Object> delUSerMap=null;
for (Map<String, Object> userMap : usersTable) {
if (userMap.get("username").equals(username)) {
delUSerMap=userMap;
break;
}
}
usersTable.remove(delUSerMap);
}
@Override
public void addCourse(Course couse) {//添加课程
coursesTable.add(couse);
}
@Override
public List<Course> getAllCourse() {//查询所有课程信息
return coursesTable;
}//查询所有课程信息
@Override
public void importCourse(ArrayList<ArrayList<String>> courseList) {//批量导入Excel课程表数据
}
}package com.mason.service;
import com.mason.dto.CourseDao;
import com.mason.dto.CourseDaoImpl;
import com.mason.entity.Course;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
public class CourseServiceImpl implements CourseService {
private CourseDao cd = new CourseDaoImpl();
@Override
public int login(String username, String password) {//用户登录
return cd.login(username, password);
}
@Override
public void addUser(String username, String password) {//普通管理员添加方法
cd.addUser(username, password);
}
@Override
public List<Map<String, Object>> getAllUsers() {//查询所有管理员
return cd.getAllUsers();
}
@Override
public void delUser(String username) {//删除管理员
cd.delUser(username);
}
@Override
public void addCourse(Course couse) {//添加课程
cd.addCourse(couse);
}
@Override
public List<Course> getAllCourse() {//查询所有课程信息
return cd.getAllCourse();
}
@Override
public void importCourse(ArrayList<ArrayList<String>> courseList) {//批量导入Excel课程表数据
cd.importCourse(courseList);
}
}<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>课程查询</title>
<!-- 分页查看 -->
<link rel="stylesheet" type="text/css" href="resources/js/dataTable/jquery.dataTables.min.css">
<script type="text/javascript" src="resources/js/dataTable/jquery.js"></script>
<script type="text/javascript" src="resources/js/dataTable/jquery.dataTables.min.js"></script>
<script type="text/javascript" src="/js/jquery-3.3.1.js"></script>
</head>
<body>
<center>
<h1>课程查询</h1>
<hr>
<div>
<div style="float: left;">显示
<select name="rowNum">
<option value="1">1</option>
<option value="2">2</option>
<option value="3" selected="selected">3</option>
</select>
条
</div>
<div style="float: right;">
<form action="<%=basePath%>/showCourse" method="post">
<input type="text" name="content"/>
<input type="submit" value="搜索">
</form>
</div>
</div>
<table cellspacing="0px" cellpadding="0px" border="1px" width="100%" class="tablelist" id="example">
<thead>
<tr>
<th>课程ID</th>
<th>课程名</th>
<th>方向</th>
<th>描述</th>
<th>时长(小时)</th>
<th>操作人</th>
</tr>
</thead>
<tbody>
<c:forEach items="${CourseList}" var="course" varStatus="idx">
<tr>
<td>${course.id}</td>
<td>${course.name}</td>
<td>${course.courseType}</td>
<td>${course.description}</td>
<td>${course.time}</td>
<td>${course.operator}</td>
</tr>
</c:forEach>
</tbody>
</table>
<div>
<div style="float: left;">从${1}到${1}条记录 总记录为${totalCourseNum}</div>
<div style="float: right;">
<a href="<%=basePath%>/showCourse?page=1">第一页</a>
<a href="<%=basePath%>/showCourse?page=${prePage}">上一页</a>
<button>${curPage}</button>
<a href="<%=basePath%>/showCourse?page=${nextPage}">下一页</a>
<a href="<%=basePath%>/showCourse?page=${totalPage}">最后一页</a>
</div>
</div>
</center>
</body>
</html>
MasonM
2019-04-27 15:57:04
package com.mason.servlet;
import com.mason.entity.Course;
import com.mason.service.CourseServiceImpl;
import org.w3c.dom.stylesheets.LinkStyle;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class ShowCourseServlet extends HttpServlet {
static CourseServiceImpl csi = new CourseServiceImpl();
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String pageStr = req.getParameter("page");
String content = req.getParameter("content");
System.out.println("content=" + content);
System.out.println("page=" + pageStr);
int page = 1;
if (null != pageStr && !"".equals(pageStr)) {
page = Integer.parseInt(pageStr);
}
int totalCourses = ShowCourseServlet.getCourseCount(content);
int totalPage = totalCourses % 3 > 0 ? totalCourses / 3 + 1 : totalCourses / 3;
req.setAttribute("curPage", page);
req.setAttribute("prePage", page > 1 ? page - 1 : 1);
req.setAttribute("nextPage", totalPage > page ? page + 1 : totalPage);
req.setAttribute("totalPage", totalPage);
req.setAttribute("totalCourseNum", totalCourses);
req.setAttribute("CourseList", ShowCourseServlet.getCourses(page, 3, content));
req.getRequestDispatcher("/jsp/showCourse.jsp").forward(req, resp);
req.getSession().setAttribute("DdaoChuCourseList", ShowCourseServlet.getCoursesList(content));
}
private static List<Course> getCourses(int page, int size, String content) {
List<Course> courseList = new ArrayList<>();
if (null != content && !"".equals(content)) {
csi.getAllCourse().forEach(course -> {
if (course.getName().contains(content)) {//名字
courseList.add(course);
} else if (course.getCourseType().contains(content)) {//方向
courseList.add(course);
} else if (course.getOperator().contains(content)) {//操作人
courseList.add(course);
}
});
} else {
courseList.addAll(csi.getAllCourse());
}
int start = (page - 1) * size;
int end = courseList.size() >= page * size ? page * size : courseList.size();
return courseList.subList(start, end);
}
private static List<Course> getCoursesList(String content) {//用来导出时使用的,不需要subList
List<Course> courseList = new ArrayList<>();
if (null != content && !"".equals(content)) {
csi.getAllCourse().forEach(course -> {
if (course.getName().contains(content)) {//名字
courseList.add(course);
} else if (course.getCourseType().contains(content)) {//方向
courseList.add(course);
} else if (course.getOperator().contains(content)) {//操作人
courseList.add(course);
}
});
} else {
courseList.addAll(csi.getAllCourse());
}
return courseList;
}
private static int getCourseCount(String content) {
List<Course> courseList = new ArrayList<>();
if (null != content && !"".equals(content)) {
csi.getAllCourse().forEach(course -> {
if (course.getName().contains(content)) {//名字
courseList.add(course);
} else if (course.getCourseType().contains(content)) {//方向
courseList.add(course);
} else if (course.getOperator().contains(content)) {//操作人
courseList.add(course);
}
});
} else {
courseList.addAll(csi.getAllCourse());
}
return courseList.size();
}
}
好帮手慕柯南
2019-04-25 16:47:54
同学可以下载老师的源码,源码中src文件下有搭建过程和参数说明,里边有关于背景颜色的设置,建议同学按照这个配置一下:

同学如果还需要修改其他的样式可以参照如下链接
https://code.google.com/archive/p/kaptcha/wikis/ConfigParameters.wiki 去设置自己想要的用样式,如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
从网页搭建入门Java Web2018版
- 参与学习 人
- 提交作业 1088 份
- 解答问题 10204 个
如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!
了解课程







恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星