美文网首页自动化测试AdminLTE
半暖商城第一季--后台管理系统框架AdminLTE的搭建和使用(

半暖商城第一季--后台管理系统框架AdminLTE的搭建和使用(

作者: Alibct | 来源:发表于2017-06-20 19:41 被阅读2252次

    1. 前言

    这个时代就是互联网发展最好的时代,无论是资源还是框架都是层出不穷,作为一名开发人员,如何避免重复造轮子就变成一项尤为重要的技能。本篇我将介绍Github Star量将近16k的一个开源管理框架AdminLTE。

    2. AdminLTE

    这是AdminLTE的Github地址。
    这是AdminLTE的官网地址。

    相关详细介绍请阅读官方文档。

    3. 引入AdminLTE

    1. 首先到Github下载最新的开源项目。


      AdminLTE
    2. 因为AdminLTE项目是基于BootStrap的所以项目还需要引入BootStrap的文件。


      Bootstrap
    1. 拷贝下图中的文件到项目静态资源文件内。


      static
    1. 新建main.jsp。并将官方的示例代码starter.html拷贝到main.jsp中,然后根据自己的需求进行相应的更改。

    main.jsp

    <%--
      Created by IntelliJ IDEA.
      User: alibct
      Date: 2017/3/9
      Time: 下午2:14
      Desc: 半暖商城-后台管理系统
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <%
        Long administratorId = (Long) session.getAttribute("administratorId");
        String administratorName = (String) session.getAttribute("administratorName");
        Integer privilegeLevel = (Integer) session.getAttribute("privilegeLevel");
        if (null == administratorId) {
            response.sendRedirect(request.getContextPath() + "/signIn");
            return;
        }
    %>
    <!DOCTYPE html>
    <html lang="zh">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <link rel="shortcut icon" href="<%=request.getContextPath()%>/static/images/favicon.ico">
        <title>半暖商城-后台管理系统</title>
        <%--Tell the browser to be responsive to screen width--%>
        <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
        <link rel="stylesheet" href="<%=request.getContextPath()%>/static/css/bootstrap.min.css">
        <link rel="stylesheet" href="<%=request.getContextPath()%>/static/css/font-awesome.min.css">
        <link rel="stylesheet" href="<%=request.getContextPath()%>/static/css/ionicons.min.css">
        <link rel="stylesheet" href="<%=request.getContextPath()%>/static/css/AdminLTE.min.css">
        <%--
        AdminLTE Skins. We have chosen the skin-blue for this starter
        page. However, you can choose any other skin. Make sure you
        apply the skin class to the body tag so the changes take effect.
        --%>
        <link rel="stylesheet" href="<%=request.getContextPath()%>/static/css/skin-red-light.min.css">
        <%--HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries--%>
        <%--WARNING: Respond.js doesn't work if you view the page via file://--%>
        <%--[if lt IE 9]--%>
        <%--<script src="../../static/js/html5shiv.min.js"></script>--%>
        <%--<script src="../../static/js/respond.min.js"></script>--%>
        <%--[endif]--%>
    </head>
    <%--
    BODY TAG OPTIONS:
    =================
    Apply one or more of the following classes to get the
    desired effect
    |---------------------------------------------------------|
    | SKINS         | skin-blue                               |
    |               | skin-black                              |
    |               | skin-purple                             |
    |               | skin-yellow                             |
    |               | skin-red                                |
    |               | skin-green                              |
    |---------------------------------------------------------|
    |LAYOUT OPTIONS | fixed                                   |
    |               | layout-boxed                            |
    |               | layout-top-nav                          |
    |               | sidebar-collapse                        |
    |               | sidebar-mini                            |
    |---------------------------------------------------------|
    --%>
    <body class="hold-transition skin-red-light sidebar-mini">
    <div class="wrapper">
        <%--顶部导航条--%>
        <header class="main-header">
            <a class="logo" href="#">
                <span class="logo-mini"><b>半</b>暖</span>
                <span class="logo-lg"><b>S</b>emi<b>W</b>arm</span>
            </a>
    
            <nav class="navbar navbar-static-top" role="navigation">
                <a class="sidebar-toggle" data-toggle="offcanvas" href="#" role="button">
                    <span class="sr-only">Toggle navigation</span>
                </a>
                <div class="navbar-custom-menu">
                    <ul class="nav navbar-nav">
                        <li class="dropdown user user-menu">
                            <a class="dropdown-toggle" data-toggle="dropdown" href="#">
                                <img class="user-image" src="<%=request.getContextPath()%>/static/images/user_logo.png"
                                     alt="User Image">
                                <span class="hidden-xs"><%=administratorName%></span>
                            </a>
                            <ul class="dropdown-menu">
                                <li class="user-header" style="color: white">
                                    <img class="img-circle" src="<%=request.getContextPath()%>/static/images/user_logo.png"
                                         alt="User Image">
                                    <p style="color: white">
                                        <%=administratorName%>
                                    </p>
                                    <small>权限等级</small>
                                    <%=privilegeLevel%>
                                </li>
                                <li class="user-body">
                                    <div class="row">
                                        <div class="col-xs-4">
                                            <%--消息图标--%>
                                            <ul class="nav navbar-nav">
                                                <li>
                                                    <a href="#">
                                                        <i class="fa fa-envelope-o"></i>
                                                        <span class="label label-success">4</span>
                                                    </a>
                                                </li>
                                            </ul>
                                        </div>
                                        <div class="col-xs-4">
                                            <%--通知图标--%>
                                            <ul class="nav navbar-nav">
                                                <li>
                                                    <a href="#">
                                                        <i class="fa fa-bell-o"></i>
                                                        <span class="label label-warning">10</span>
                                                    </a>
                                                </li>
                                            </ul>
                                        </div>
                                        <div class="col-xs-4">
                                            <%--任务图标--%>
                                            <ul class="nav navbar-nav">
                                                <li>
                                                    <a href="#">
                                                        <i class="fa fa-flag-o"></i>
                                                        <span class="label label-danger">9</span>
                                                    </a>
                                                </li>
                                            </ul>
                                        </div>
                                    </div>
                                </li>
                                <li class="user-footer">
                                    <div class="pull-left">
                                        <%--设置界面--%>
                                        <a class="btn btn-default btn-flat" href="#">设 置</a>
                                    </div>
                                    <div class="pull-right">
                                        <%--退出登录按钮--%>
                                        <a class="btn btn-default btn-flat" href="<%=request.getContextPath()%>/signIn">退
                                            出</a>
                                    </div>
                                </li>
                            </ul>
                        </li>
                    </ul>
                </div>
            </nav>
        </header>
    
        <%--左侧导航栏--%>
        <aside class="main-sidebar">
            <section class="sidebar">
                <div class="user-panel">
                    <div class="pull-left image">
                        <img class="img-circle" src="<%=request.getContextPath()%>/static/images/user_logo.png"
                             alt="User Image">
                    </div>
                    <div class="pull-left info">
                        <p><%=administratorName%>
                        </p>
                        <a href="#"><i class="fa fa-circle text-success"></i> 在线</a>
                    </div>
                </div>
                <%--搜索表单--%>
                <form class="sidebar-form" action="#" method="get">
                    <div class="input-group">
                        <input class="form-control" name="txtSearch" type="text" title="请输入搜索内容">
                        <span class="input-group-btn">
                            <button class="btn btn-flat" id="btnSearch" name="btnSearch" type="submit"><i
                                    class="fa fa-search"></i></button>
                        </span>
                    </div>
                </form>
                <ul class="sidebar-menu">
                    <%--主页--%>
                    <li class="active">
                        <a href="<%=request.getContextPath()%>/main">
                            <i class="fa fa-home" style="font-size: larger"></i>
                            <span>主页</span>
                        </a>
                    </li>
                </ul>
            </section>
        </aside>
    
        <%--主要内容区--%>
        <div class="content-wrapper">
            <section class="content-header">
                <h1>
                    主 页
                    <small>后台管理</small>
                </h1>
                <ol class="breadcrumb">
                    <li class="active">
                        <a href="<%=request.getContextPath()%>/main"><i class="fa fa-home"></i> 主页</a>
                    </li>
                </ol>
            </section>
    
            <!-- 内容区域 -->
            <section class="content">
    
                <!-- 页面内容 -->
    
            </section>
        </div>
    </div>
    <%--引用文件--%>
    <script src="<%=request.getContextPath()%>/static/js/jquery.min.js"></script>
    <script src="<%=request.getContextPath()%>/static/js/bootstrap.min.js"></script>
    <script src="<%=request.getContextPath()%>/static/js/app.min.js"></script>
    </body>
    </html>
    

    以上是根据我的项目修改之后的主要框架代码,仅供参考。每个部分都有相应的注释,如果还有看不懂的地方,请建议仔细阅读官方示例。

    以上的简单配置之后就可以运行了,下面提一些简单的注意点。

    1. <!DOCTYPE html>一定要添加,否则可能会出现兼容性问题。
    2. 每一个界面都必须拷贝以上的代码,并在内容区域添加自定义内容。(这个还是有点麻烦的)
    3. 如果需要使用官方的插件,请自行阅读官方文档。

    相关文章

      网友评论

      本文标题:半暖商城第一季--后台管理系统框架AdminLTE的搭建和使用(

      本文链接:https://www.haomeiwen.com/subject/gneaqxtx.html