• 基于SSM的IT运维管理系统


    博主主页猫头鹰源码

    博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战

    主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询

    文末联系获取

    项目介绍: 

    该系统创作于2022年2月,包含详细数据库设计。基于SSM整合,数据层为MyBatis,mysql数据库,具有完整的业务逻辑,适合选题:IT、运维、运维管理等。

    项目功能:

    1. 系统共分为管理员,运维人员两种角色,管理员可以新增不同角色(包括管理员、运维人员)
    2. 管理员:
    3. 个人信息管理:查看、修改
    4. 运维人员管理:新增员工(不同角色),修改,查看,删除
    5. 设配管理:
    6. 软件管理:新建软件,删除,修改,查看,导出Excel
    7. 服务器管理:新建服务器,删除,修改,查看,导出Excel
    8. 数据库管理:新建数据库,删除,修改,查看,导出Excel
    9. 运维信息管理:新建运维信息,删除,修改,查看,导出Excel
    10. 运维指南管理:
    11. 服务器运维常用命令:新增、删除、修改、查看
    12. 数据库运维常用命令:新增、删除、修改、查看
    13. 运维人员:
    14. 个人信息管理:查看、修改
    15. 设配管理:
    16. 软件管理:新建软件,删除,修改,查看,导出Excel
    17. 服务器管理:新建服务器,删除,修改,查看,导出Excel
    18. 数据库管理:新建数据库,删除,修改,查看,导出Excel
    19. 运维信息管理:新建运维信息,删除,修改,查看,导出Excel
    20. 运维指南管理:
    21. 服务器运维常用命令:查看
    22. 数据库运维常用命令:查看

    数据库表结构文档:

     

    系统包含技术:

    后端:SSM
    前端:layui,js,css等
    开发工具:eclipse
    数据库:mysql 5.7
    JDK版本:jdk1.8
    tomcat版本:tomcat8

    部分截图说明:

    下面登录页面

    以管理员为例,登录后是首页

    管理员对软件进行管理

     管理员对数据库进行管理

    管理员对运维人员进行管理

    对运维信息维护

    查看信息

     修改信息

    运维人员首页

     

     运维人员对服务器管理

    部分代码:

    登录

    1. /**
    2. * 去登录
    3. */
    4. @RequestMapping(value = "/gologin")
    5. public String gologin() {
    6. return "login";
    7. }
    8. /**
    9. * 欢迎页面
    10. */
    11. @RequestMapping(value = "/welcome")
    12. public String welcome(Model model) {
    13. model.addAttribute("softwareNum",softwareService.getAll().size());
    14. model.addAttribute("serverNum",serversService.getAll().size());
    15. model.addAttribute("datainfoNum",datainfoService.getAll().size());
    16. Map mp = new HashMap();
    17. mp.put("day","01");
    18. List<Software> softwares = softwareService.queryFilter(mp);
    19. model.addAttribute("softwares",softwares);
    20. return "welcome";
    21. }
    22. /**
    23. * 登录
    24. * 将提交数据(username,password)写入Admin对象
    25. */
    26. @RequestMapping(value = "/login")
    27. public String login(Admin admin, Model model, HttpSession session, HttpServletRequest request) {
    28. if(admin.getPhone()==null || admin.getPhone().length()<=0 ){
    29. model.addAttribute("msg", "请输入手机号!");
    30. return "login";
    31. }
    32. if(admin.getPassword()==null || admin.getPassword().length()<1){
    33. model.addAttribute("msg", "请输入密码!");
    34. return "login";
    35. }
    36. if(admin.getType()==null || admin.getType().length()<1){
    37. model.addAttribute("msg", "请选择人员类型!");
    38. return "login";
    39. }
    40. Map mp = new HashMap();
    41. mp.put("phone",admin.getPhone());
    42. mp.put("password",admin.getPassword());
    43. if(admin.getType().equals("01")){
    44. List<Admin> ad = adminService.queryFilter(mp);
    45. if(ad!=null && ad.size()==1){
    46. session.setAttribute("ad", ad.get(0));
    47. session.setAttribute("type", "01");
    48. return "homepage1";
    49. }else{
    50. model.addAttribute("msg", "请确定账户信息是否正确!");
    51. return "login";
    52. }
    53. }else{
    54. List<User> ad = userService.queryFilter(mp);
    55. if(ad!=null && ad.size()==1){
    56. session.setAttribute("ad", ad.get(0));
    57. session.setAttribute("type", "02");
    58. return "homepage2";
    59. }else{
    60. model.addAttribute("msg", "请确定账户信息是否正确!");
    61. return "login";
    62. }
    63. }
    64. }

    服务器操作

    1. /**
    2. * 分页查询
    3. * pageIndex 当前页码
    4. * pageSize 显示条数
    5. */
    6. @RequestMapping(value = "/findServers")
    7. public String findServers(Integer pageIndex, Integer pageSize,String vendor,String system, Model model,HttpServletRequest request) {
    8. HttpSession session = request.getSession();
    9. if(session.getAttribute("ad") == null){
    10. session.setAttribute("msg", "对不起,请登录!");
    11. return "login";
    12. }
    13. Map mp = new HashMap();
    14. mp.put("vendor",vendor);
    15. mp.put("system",system);
    16. PageInfo<Servers> pageList = serversService.findPageInfo(pageIndex,pageSize,mp);
    17. model.addAttribute("pageList",pageList);
    18. return "ServersList";
    19. }
    20. /**
    21. * 添加
    22. */
    23. @RequestMapping(value = "/addServers" ,method = RequestMethod.POST)
    24. @ResponseBody
    25. public String addServers( @RequestBody Servers servers) {
    26. try{
    27. SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    28. servers.setCreateTime(sf.format(new Date()));
    29. serversService.addServers(servers);
    30. return "200";
    31. }catch (Exception e){
    32. e.printStackTrace();
    33. return "201";
    34. }
    35. }
    36. /**
    37. * 导出excel
    38. */
    39. @RequestMapping("/downExcel")
    40. public void downExcel(HttpServletRequest request, HttpServletResponse response) throws Exception{
    41. List<Servers> servers = serversService.getAll();
    42. String[] columnNames = { "ID","服务器厂商","服务器IP/MAC","操作系统","CPU", "内存", "地址", "运维账号及密码", "联系厂商", "创建时间"};
    43. String fileName = "服务器信息表";
    44. ExportExcelUtil exportExcelUtil = new ExportExcelUtil();
    45. exportExcelUtil.mtyExcel(fileName, fileName, columnNames, servers, response, ExportExcelUtil.EXCEL_FILE_2003);
    46. }
    47. /**
    48. * 删除
    49. */
    50. @RequestMapping( "/deleteServers")
    51. @ResponseBody
    52. public String deleteServers(String id) {
    53. int d = serversService.deleteServers(id);
    54. return "ServersList";
    55. }
    56. /**
    57. * 修改
    58. */
    59. @RequestMapping( "/updateServers")
    60. @ResponseBody
    61. public String updateServers(@RequestBody Servers servers) {
    62. try{
    63. serversService.updateServers(servers);
    64. return "200";
    65. }catch (Exception e){
    66. e.printStackTrace();
    67. return "201";
    68. }
    69. }
    70. /**
    71. * 按照ID查询
    72. */
    73. @RequestMapping( "/findServersById")
    74. @ResponseBody
    75. public Servers findServersById(String id,Model model,HttpServletRequest request) {
    76. Servers servers= serversService.findServersById(id);
    77. return servers;
    78. }

    数据库操作

    1. /**
    2. * 分页查询
    3. * pageIndex 当前页码
    4. * pageSize 显示条数
    5. */
    6. @RequestMapping(value = "/findSoftware")
    7. public String findSoftware(Integer pageIndex, Integer pageSize,String sofeName,String industry, Model model,HttpServletRequest request) {
    8. HttpSession session = request.getSession();
    9. if(session.getAttribute("ad") == null){
    10. session.setAttribute("msg", "对不起,请登录!");
    11. return "login";
    12. }
    13. Map mp = new HashMap();
    14. mp.put("sofeName",sofeName);
    15. mp.put("industry",industry);
    16. PageInfo<Software> pageList = softwareService.findPageInfo(pageIndex,pageSize,mp);
    17. model.addAttribute("pageList",pageList);
    18. return "SoftwareList";
    19. }
    20. /**
    21. * 添加
    22. */
    23. @RequestMapping(value = "/addSoftware" ,method = RequestMethod.POST)
    24. @ResponseBody
    25. public String addSoftware( @RequestBody Software software) {
    26. try{
    27. SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    28. software.setCreateTime(sf.format(new Date()));
    29. softwareService.addSoftware(software);
    30. return "200";
    31. }catch (Exception e){
    32. e.printStackTrace();
    33. return "201";
    34. }
    35. }
    36. /**
    37. * 导出excel
    38. */
    39. @RequestMapping("/downExcel")
    40. public void downExcel(HttpServletRequest request, HttpServletResponse response) throws Exception{
    41. List<Software> softwares = softwareService.getAll();
    42. String[] columnNames = { "ID","软件名称","项目名称","行业","上线时间", "部署服务器", "数据库", "开发商", "功能介绍", "联系开发商", "创建时间"};
    43. String fileName = "软件信息表";
    44. ExportExcelUtil exportExcelUtil = new ExportExcelUtil();
    45. exportExcelUtil.mtyExcel(fileName, fileName, columnNames, softwares, response, ExportExcelUtil.EXCEL_FILE_2003);
    46. }

    以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。

    好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~

  • 相关阅读:
    我去探访了下杭州最贵的奢华酒店之一
    Golang中的type关键字
    linux部署SpringBoot项目
    四川竹哲电子商务有限公司为创业者保驾护航
    论文阅读 (74):A Review: Knowledge Reasoning over Knowledge Graph
    计算机毕业设计Java机械生产企业办公设备管理系统(源码+系统+mysql数据库+lw文档)
    猿创征文| Redis的发布订阅
    支付模块-微信支付
    【算法】一类支持向量机OC-SVM(2)
    Multimodal Token Fusion for Vision Transformers
  • 原文地址:https://blog.csdn.net/mtyedu/article/details/126735758