IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 旅游网之后台管理系统 -> 正文阅读

[开发工具]旅游网之后台管理系统

前言

学习了快两个月的Web知识。终于到实际操作的时候了。于是自己便动手做了一个后台的管理系统,实现对数据的增删改查。

目录

前言

一、登录

二、基础功能

?三、总结


一、登录

由于此项目是自己的一个练手项目,所以就没有做其他比如验证码或者注册之类的功能。项目启动后便进入登录界面,通过输入用户名以及密码登录到系统中。

? ? ? ? 登录实现是通过前端页面发送ajax请求,后台接受参数,再通过查询数据库中对应的字段进行验证,如果比对正确即可登录。

? ? ? ? 核心代码:

script>
        $(function () {
            $("#btn_login").click(function () {
                $.post("admin/login",$("#login_form").serialize(),function (data) {
                    if (data.flag == true){
                        location.href = "index.html";
                    }else {
                        $("#errorMsg").html(data.errorMsg);
                    }
                });
            });
        });



    </script>
//1.接受数据
        Map<String, String[]> map = request.getParameterMap();
        Admin admin = new Admin();
        try {
            BeanUtils.populate(admin,map);
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        }
        //System.out.println(admin);
        //调用service查询
        Admin admin_login = adminService.login(admin);
        ResultInfo info = new ResultInfo();
        //System.out.println(admin_login);
        //判断对象是否为null
        if (admin_login == null){
            //账号密码输入错误
            info.setFlag(false);
            info.setErrorMsg("用户名或密码输入错误!");
        }else {
            //登录成功
            info.setFlag(true);
            request.getSession().setAttribute("admin",admin_login);
        }
        writeValue(info,response);

二、基础功能

? ? ? ? 此项目设计为对酒店信息、用户信息、订单信息的增删改查。所以逻辑都是差不多的,这里就以酒店信息展示为例,简单介绍一下。

? ? ? ? 登录进系统后

? ? ? ? ?这里的操作是,页面发送ajax请求,服务器接受请求,查询数据库,然后在把查询到的数据转为json格式,转发回前端页面。然后页面再遍历其返回的数据,进行数据展示。

? ? ? ? 核心代码

 $(function () {
           //发送ajax请求 获取酒店信息
           $.get("hotel/findHotel",{},function (hotel) {
              var tr = '<tr class="success">\n' +
                  '                <th>编号</th>\n' +
                  '                <th>姓名</th>\n' +
                  '                <th>价格</th>\n' +
                  '                <th>简介</th>\n' +
                  '                <th>是否主题酒店</th>\n' +
                  '                <th>已预订数量</th>\n' +
                  '                <th>操作</th>\n' +
                  '            </tr>';
              var num = 1;
               for (var i = 0; i <hotel.length ; i++) {
                   num =i+1;
                   if (hotel[i].rflag == '1'){
                       hotel[i].rflag = "已上架";
                   } else {
                       hotel[i].rflag = "未上架";
                   }
                    var td = '<tr>\n' +
        '                    <td>'+num+'</td>\n' +
        '                    <td>'+hotel[i].rname+'</td>\n' +
        '                    <td>'+hotel[i].price+'</td>\n' +
        '                    <td>'+hotel[i].routeIntroduce.substring(0,8)+'</td>\n' +
        '                    <td>'+hotel[i].rflag+'</td>\n' +
        '                    <td>'+hotel[i].count+'</td>\n' +
        '                    <td><a class="btn btn-default btn-sm"\n' +
        '                           href="http://localhost:8080/travelback/updateHotel.html?rid='+hotel[i].rid+'" id=\"updateHotel\">修改</a>&nbsp;\n' +
        '                        <a class="btn btn-default btn-sm" href="javascript:deleteHotel('+hotel[i].rid+')">删除</a></td>\n' +
                        '                </tr>';
                    tr+=td;
               }
               $("#table").html(tr);

           });
        });
        //删除函数
        function deleteHotel(rid) {
            if (confirm("确认删除吗?")) {
                //发送ajax请求
                $.post("hotel/delete",{rid:rid},function (data) {
                    if (!data.flag){
                        alert("删除成功!");
                        location.href = "hotel_manager.html";
                    }else {
                        alert("删除失败!")
                    }
                });
            }
        }
 //1.调用service查询酒店信息
        List<User> users = userService.findUser();
        ResultInfo info = new ResultInfo();
        if (users != null) {
            //有数据
            writeValue(users, response);
        } else {
            info.setFlag(false);
            info.setErrorMsg("当前无用户信息,请添加!");
            writeValue(info, response);
        }

?三、总结

? ? ? ? 这个项目是一个很基础的jsp项目,只能说完成之后,对前面所学的知识进行了一个回顾以及总结。在写这个项目的过程中,后端的代码其实花费的时间并不是很多,反而是在调试前端页面的时候花费了很多的时间。比如后端提供了数据,前端如何展示的问题。总之,完成这个项目即是对前面所有所学习的东西作了一个总结。在接下来就要开始框架的学习了,在编写这个项目的时候,尤其是在编写后端代码的时候,总有很多繁琐重复的操作,为了解决这些问题,学习框架就是很有必要的了,毕竟可以简化代码的书写量。

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-03-21 21:12:07  更:2022-03-21 21:15:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:34:02-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码