文章目录
- 一、需求分析
- 二、环境搭建
- 2.1 数据库环境
- 2.2 java环境:
- 2.3 配置数据库连接池
- 三、权限模块
- 3.1 展示权限列表(查询)
- 3.2 增加权限
- 3.3 删除权限
- 3.4 修改权限
- 3.5 分页功能
一、需求分析
主要有三大模块,分别是权限 , 角色, 用户 。 主要针对这三部分数据进行增删改等操作。
- 权限模块
- 展示权限列表,添加权限,修改相关权限,删除权限
Tips:修改、添加、删除都依赖于查询操作(因为你添加完了,改完了,肯定要再次展示给用户看改完了的数据,这时候需要再次查询,因此查询是基本操作,先实现)
二、环境搭建
2.1 数据库环境
创建数据库、创建数据库表
创建 权限表 t_permission
字段名 | 字段类型 | 描述 |
id | INT(11) AUTO_INCREMENT | 权限主键 |
name | VARCHAR(32) | 权限名称 |
keyword | VARCHAR(64) | 权限编码 |
description | VARCHAR(128) | 权限描述 |
2.2 java环境:
建包:web、service、dao、pojo(javaBean)、utils
建立lib:添加工具jar包
2.3 配置数据库连接池
使用C3P0连接池需要导入jar包,c3p0使用时还需要添加配置文件“c3p0-config.xml”放到项目src下
三、权限模块
3.1 展示权限列表(查询)
1 编写pojo下的javaBean ——> Permission.java,对应数据表t_permission下的实体,列名为属性名
2 修改前端给的界面index.jsp,看到我们点击权限列表的超链接a标签,修改链接为合适的格式,方便web层获取参数
<%--
获取所有权限数据的超链接
请求到permission,携带好的功能参数operator
--%>
<a class="btn btn-default" target="dataFrame" href="${pageContext.request.contextPath}/permission?operator=queryAll">权限列表</a>
tips:
permission?operator=queryAll设计用于后面的获取参数用反射调用queryAll名的方法,利于代码复用,不用写多个Servlet
超链接也能给服务器发送请求,都是get请求
3 web层声明queryAll方法
4 dao层操作权限表查询
查询全表数据,没用过滤参数,SQL语句没有条件
QueryRunner 查询Permission表的所有数据,结果封装成List集合,返回到业务层
5 service层:计算无,返回给web层
6 web层:获取查询结果集List集合
集合存储在域对象中,转发: 权限数据的展示页面
request.getRequestDispatcher("/permission.jsp").forward(request,response);
7 编写permission.jsp页面,完成跳转页面的展示
引入核心标签库,完成页面的展示
<c:forEach items="${requestScope.permissionList}" var="permission">
<tr>
<%--EL 表达式,取出permission键对应的值--%>
<td>${permission.id}</td>
<td>${permission.name}</td>
<td>${permission.keyword}</td>
<td>${permission.description}</td>
</tr>
</c:forEach>
3.2 增加权限
分析:
界面三个input输入框:web层获得三个请求参数,最终是要经过dao层写入数据库的,这三个参数封装到Permission对象中,这样只要传递一个对象参数就行了,而不需要传递三个
1 修改添加界面中addPermission.jsp中input框的name属性为我们数据库表、pojo实体对应名称,这样方便我们获取参数并封装到对象中
2 dao层编写参数是service层传递,取出pojo对象中的三个参数,写入数据表
3 service层编写调用dao层方法,传递pojo对象
4 web层编写表单参数封装到pojo对象,调用业务层方法,传递pojo对象,客户端响应,调用查询方法,应该让客户看到添加后的结果
3.3 删除权限
3.4 修改权限
1 回显功能
点击修改按钮后进入修改界面,修改界面会有回显参数,显示原始默认的数据,在原来的数据上进行修改。
2 修改功能
3.5 分页功能
分页需要哪些条件: