当前位置: 首页 > news >正文

大网站成本品牌设计风格

大网站成本,品牌设计风格,网站建设可行性及需求分析,沙井网站制作联系电话目录 知识点介绍项目演示项目搭建动态菜单查询分析(权限表分析)权限系统表分析角色模块pageInfopageHelper实现前端动态分页高级查询新增与修改删除角色 分配权限-表分析角色授权数据-一级和二级权限查询 知识点介绍 项目演示 准备数据库 准备工程auth_new tips#xff1a;… 目录 知识点介绍项目演示项目搭建动态菜单查询分析(权限表分析)权限系统表分析角色模块pageInfopageHelper实现前端动态分页高级查询新增与修改删除角色 分配权限-表分析角色授权数据-一级和二级权限查询 知识点介绍 项目演示 准备数据库 准备工程auth_new tips 基于sspringboot的ssm架构 角色是权限系统的核心 项目搭建 一SSM整合1.导包 tipslombok在编译时生成getsetter 构造器toString等方法2.准备目录结构3.核心配置文件 yml4.启动类 加上mapper接口的扫描5.测试SpringBoot测试动态菜单查询分析(权限表分析) 权限系统表分析 角色模块 见代码 tips lombok只在编译时生成get set方法等写代码时不提示有对应方法可通过lombok插件来解决此问题 类名右键go to- test快速在测试包生成对应测试方法 pageInfo 在pageHelper里mybatis提供了pageInfo类 role_list.html th:block th:if${pageInfo.list ! null}....../th:blockth:block th:if${!pageInfo.isFirstPage}lia hrefjavascript:void(0); aria-labelPrevious th:href{/role/index(number${pageInfo.prePage})} span aria-hiddentruelaquo;/span/a/li /th:block th:block th:eachnums:${pageInfo.navigatepageNums}li th:class${numspageInfo.pageNum? active : }a hrefjavascript:void(0); th:href{/role/index(number${nums})} th:text${nums} 1/a/li /th:blockth:block th:if${!pageInfo.isLastPage}lia hrefjavascript:void(0); aria-labelNext th:href{/role/index(number${pageInfo.nextPage})} span aria-hiddentrueraquo;/span/a/li /th:blockRoleController RequestMapping(/index)public String toRoleList(Model model){model.addAttribute(pageInfo, roleService.loadAllByQuery());return views/role/role_list;}RoleServiceImpl Overridepublic PageInfoRole loadAllByQuery() {return new PageInfo(roleMapper.loadAll());}RoleMapper !--ListRole loadAll();--select idloadAll resultTypeRoleSELECT * FROM role/selectpageHelper 是mybatis提供的分页插件这里是基于springboot的pageHelper底层用aop实现分页自己算出来 导包 !-- pagehelper分页插件依赖 -- dependencygroupIdcom.github.pagehelper/groupIdartifactIdpagehelper-spring-boot-starter/artifactIdversion1.2.5/version /dependencyRoleController RequestMapping(/index)public String toRoleList(Model model){model.addAttribute(pageInfo, roleService.loadAllByQuery(new RoleQuery()));return views/role/role_list;}RoleServiceImpl Overridepublic PageInfoRole loadAllByQuery(RoleQuery roleQuery) {//使用PageHelper来做分页//1.分页参数准备Integer currentPage roleQuery.getCurrentPage();Integer pageSize roleQuery.getPageSize();//2.开启分页PageHelper.startPage(currentPage,pageSize);return new PageInfoRole(roleMapper.loadAll());}RoleMapper !--ListRole loadAll();--select idloadAll resultTypeRoleSELECT * FROM role/selectapplication.yml #cn.ming包下所有操作打印详细日志 logging:level:cn:ming: trace实现前端动态分页 BaseQuery Data public class BaseQuery {private Integer currentPage 1;private Integer pageSize 5;// SpringMVC 通过使用set参数名称作为方法绑定前端传过来的参数public void setNumber(Integer currentPage) {this.currentPage currentPage;} }RoleController RequestMapping(/index)public String toRoleList(RoleQuery roleQuery,Model model){model.addAttribute(pageInfo, roleService.loadAllByQuery(roleQuery));return views/role/role_list;}application.yml #pagehelper分页插件 pagehelper:#分页方言 因为不同数据库拼接分页sql的关键字不同如mysql分页关键字是limit oracle分页关键字是rownumhelper-dialect: mysql#分页容错 传的当前页码小于1时定位第一页传的当前页码大于最末页时定位到末页reasonable: true#支持在参数传递分页参数 支持在mapper接口层传分页参数support-methods-arguments: true高级查询 RoleQuery Data public class RoleQuery extends BaseQuery{private String roleName; }RoleServiceImpl Overridepublic PageInfoRole loadAllByQuery(RoleQuery roleQuery) {//使用PageHelper来做分页//1.分页参数准备Integer currentPage roleQuery.getCurrentPage();Integer pageSize roleQuery.getPageSize();//2.开启分页PageHelper.startPage(currentPage,pageSize);return new PageInfoRole(roleMapper.loadAll(roleQuery));}RoleMapper.xml !--ListRole loadAll(RoleQuery roleQuery);--select idloadAll resultTypeRoleSELECT * FROM rolewhereif testroleName ! null and roleName ! AND name like concat(%,#{roleName},%)/if/where/selecttips去除空格一般交给前端或controller处理避免放到数据层处理那会引起性能下降 新增与修改 tips 先看好前端页面请求过来的路径参数返回值 查询用只读事务增删改用默认的需要事务 RoleController // 添加角色RequestMapping(/save)ResponseBodypublic MapString,Object save(Role role){MapString,Object map new HashMap();try {roleService.save(role);map.put(success, true);map.put(msg,操作成功);} catch (Exception e) {e.printStackTrace();map.put(success, false);map.put(msg,系统繁忙稍后重试);}return map;}// 修改角色RequestMapping(/update)ResponseBodypublic MapString,Object update(Role role){MapString,Object map new HashMap();try {roleService.update(role);map.put(success, true);map.put(msg,操作成功);} catch (Exception e) {e.printStackTrace();map.put(success, false);map.put(msg,系统繁忙稍后重试);}return map;}RoleServiceImpl OverrideTransactionalpublic void save(Role role) {roleMapper.save(role);}OverrideTransactionalpublic void update(Role role) {roleMapper.update(role);}RoleMapper.xml !--void save(Role role);--insert idsaveINSERT INTO role(name,sn) VALUES (#{name},#{sn})/insert!--void update(Role role);--update idupdateUPDATE role SET name #{name},sn#{sn}WHERE id #{id}/update删除角色 tips中间表不应该有实体类或Mapper RoleController // 删除角色RequestMapping(/delete)ResponseBodypublic MapString,Object delete(Long id){MapString,Object map new HashMap();try {roleService.delete(id);map.put(success, true);map.put(msg,操作成功);} catch (Exception e) {e.printStackTrace();map.put(success, false);map.put(msg,系统繁忙稍后重试);}return map;}RoleServiceImpl /*** 删除角色* 1.删除角色权限中间表数据* 2.删除角色表数据*/OverrideTransactionalpublic void delete(Long roleId) {roleMapper.deleteRolePermission(roleId);roleMapper.delete(roleId);}RoleMapper.xml !--void deleteRolePermission(Long roleId);--delete iddeleteRolePermission parameterTypelongDELETE FROM role_permission WHERE role_id #{roleId}/delete!--void delete(Long roleId);--delete iddelete parameterTypelongDELETE FROM role WHERE id #{id}/delete分配权限-表分析 角色授权数据-一级和二级权限查询 RoleController // 查询一级和二级权限并返回页面RequestMapping(/toPermission)public String toRoleList(Long roleId, Model model){model.addAttribute(map, roleService.loadOneAndTwoLevel(roleId));return views/role/role_permission;}domain Data public class Permission {private Long id;private String name;private String url;private Long menu_id;private Permission parent;private ListPermission children new ArrayList(); }RoleServiceImpl Overridepublic MapString, Object loadOneAndTwoLevel(Long roleId) {MapString, Object map new HashMap();map.put(permissions, roleMapper.loadOneAndTwoLevel());//角色回显map.put(rid, roleId);return map;}RoleMapper.xml !--自定义结果集映射--resultMap idxx typePermissionid columnpid propertyid/result columnpname propertyname/result columnpurl propertyurl/collection propertychildren ofTypePermissionid columnid propertyid/result columnname propertyname/result columnurl propertyurl//collection/resultMap!--ListPermission loadOneAndTwoLevel();--select idloadOneAndTwoLevel resultMapxxSELECTp.id pid,p. NAME pname,p.url purl,c.*FROMpermission pJOIN permission c ON p.id c.parent_idWHEREp.parent_id IS NULL/select
http://www.zqtcl.cn/news/217769/

相关文章:

  • 电大形考任在哪个网站做湖南seo推广服务
  • dede网站 异步生成wordpress 页面新建
  • 郑州网站制作网页网站优化我自己可以做吗
  • 合肥做网站的公司百度做兼职去哪个网站
  • 重庆市城市建设规划官方网站一款app从开发到上线的流程
  • 微网站开发难吗登录qq网页版
  • 网站不备案能解析吗网站开发项目中职责
  • 三优科技 网站开发网站开发实训报告总结
  • 离线推广网站规划书常用的网站都有哪些
  • 成都 视频网站建设网站邮件推送
  • 深圳均安网站制作温州网站优化案例
  • 做网站需要哪些流程网站建设中项目经理的职责
  • 专业低价建设微网站微商城怎么样在wordpress上添加播放视频
  • 网站制作经费预算表域名备案信息查询系统
  • 苏州网站建设找苏州聚尚网络推荐南昌个人网站制作怎么做
  • 普法网站建设wordpress伪静态404错误
  • 易语言如何做浏网站湛江高端网站开发
  • 窦各庄网站建设wordpress 意见反馈
  • 建站公司还有前途吗海拉尔做网站的公司
  • 素材网站有哪些如何做简单视频网站
  • 如何做网站公证宁波网站建设公司比较好
  • 网站建设公司行情新网站建设风格
  • 30天网站建设实录 pdf微信分销工具
  • 深圳电子商务网站 开发招标文件范本
  • 常州网站制作包括哪些网站商城模板
  • wordpress下拉式菜单哈尔滨seo优化公司
  • 网站添加百度地图标注怎么在百度免费推广
  • 如何用照片做模板下载网站南京做网站seo的
  • 网站建设平台方案设计删除网站内容
  • 建设部人才交流中心网站wordpress theauthor