• SSM客户管理系统CRM开发mysql数据库web结构java编程计算机网页源码eclipse项目


    一、源码特点
      SSM 客户管理系统CRM是一套完善的信息系统,结合springMVC框架完成本系统,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具有完整的源代码和数据库,系统主要采用B/S模式开发。
    前段主要技术 html.css jquery
    后端主要技术 SSM
    数据库 mysql
    开发工具 eclipse  JDK1.8 TOMCAT 8.5

    视频链接 https://www.bilibili.com/video/BV1Ru4y1L7bm/

    二、功能介绍
    本系统模块实现功能如下:

    (1)员工管理:对员工信息进行添加、删除、修改和查看
    (2)菜单管理:对菜单信息进行添加、删除、修改和查看
    (3)菜单权限管理:对菜单权限信息进行添加、删除、修改和查看 动态菜单实现
    (4)职位管理:对职位信息进行添加、删除、修改和查看
    (5)客户管理:对客户信息进行添加、删除、修改和查看
    (6)联系人管理:对联系人信息进行添加、删除、修改和查看
    (7)商机管理:对商机信息进行添加、删除、修改和查看
    (8)邮件管理:对邮件信息进行添加、删除、修改和查看
    (9)任务管理:对任务信息进行添加、删除、修改和查看
    (10)产品管理:对产品信息进行添加、删除、修改和查看
    (11)个人信息修改、登录

    数据库设计

    (1)员工信息表如表5.1所示:

    表5.1 员工信息表

    序号

    字段名称

    数据类型

    长度

    主键

    描述

    1

    ygid

    INTEGER

    11

    员工编号

    2

    yhm

    VARCHAR

    40

    用户名

    3

    mm

    VARCHAR

    40

    密码

    4

    xm

    VARCHAR

    40

    姓名

    5

    qx

    VARCHAR

    40

    权限

    6

    lxdh

    VARCHAR

    40

    联系电话

    7

    lxdz

    VARCHAR

    40

    联系地址

    8

    zw

    VARCHAR

    40

    职位

    (2)菜单信息表如表5.2所示:

    表5.2 菜单信息表

    序号

    字段名称

    数据类型

    长度

    主键

    描述

    1

    cdid

    INTEGER

    11

    菜单编号

    2

    cdmc

    VARCHAR

    40

    菜单名称

    (3)菜单权限信息表如表5.3所示:

    表5.3 菜单权限信息表

    序号

    字段名称

    数据类型

    长度

    主键

    描述

    1

    cdqxid

    INTEGER

    11

    菜单权限编号

    2

    cd

    VARCHAR

    40

    菜单

    3

    qx

    VARCHAR

    40

    权限

    (4)职位信息表如表5.4所示:

    表5.4 职位信息表

    序号

    字段名称

    数据类型

    长度

    主键

    描述

    1

    zwid

    INTEGER

    11

    职位编号

    2

    zwmc

    VARCHAR

    40

    职位名称

    3

    js

    VARCHAR

    40

    介绍

    (5)客户信息表如表5.5所示:

    表5.5 客户信息表

    序号

    字段名称

    数据类型

    长度

    主键

    描述

    1

    khid

    INTEGER

    11

    客户编号

    2

    khmc

    VARCHAR

    40

    客户名称

    3

    jyfw

    VARCHAR

    40

    经营范围

    4

    djsj

    VARCHAR

    40

    登记时间

    5

    sm

    VARCHAR

    40

    说明

    6

    lxdh

    VARCHAR

    40

    联系电话

    (6)联系人信息表如表5.6所示:

    表5.6 联系人信息表

    序号

    字段名称

    数据类型

    长度

    主键

    描述

    1

    lxrid

    INTEGER

    11

    联系人编号

    2

    kh

    VARCHAR

    40

    客户

    3

    lxr

    VARCHAR

    40

    联系人

    4

    lxdh

    VARCHAR

    40

    联系电话

    5

    sm

    VARCHAR

    40

    说明

    控制层设计

    1. @RequestMapping(value="/add")
    2. public String add(kehu kehu,HttpServletRequest request){//添加方法
    3. Map<String,Object> map= new HashMap<String,Object>();//初始化对象
    4. //String name=(String)request.getParameter("name");
    5. map.put("khid", kehu.getKhid());//客户编号
    6. map.put("khmc", kehu.getKhmc());//客户名称
    7. map.put("jyfw", kehu.getJyfw());//经营范围
    8. map.put("djsj", kehu.getDjsj());//登记时间
    9. map.put("sm", kehu.getSm());//说明
    10. map.put("lxdh", kehu.getLxdh());//联系电话
    11. String khid=(String)kehu.getKhid();//客户编号
    12. String khmc=(String)kehu.getKhmc();//客户名称
    13. String jyfw=(String)kehu.getJyfw();//经营范围
    14. String djsj=(String)kehu.getDjsj();//登记时间
    15. String sm=(String)kehu.getSm();//说明
    16. String lxdh=(String)kehu.getLxdh();//联系电话
    17. kehudao.save(map);//调用 add方法 保存kehu 数据
    18. request.setAttribute("msg", "");
    19. System.out.println("addok");
    20. return "kehu/kehuadd";
    21. }
    22. /**删除 kehu
    23. *
    24. */
    25. @RequestMapping(value="/del")
    26. public String del(Integer id,HttpServletRequest request,Map<String,Object> map){
    27. // Map<String,Object> map= new HashMap<String,Object>();//初始化对象
    28. String a=(String)request.getParameter("keyid");//request 方式获得主键id
    29. id=Integer.parseInt(a);
    30. request.setAttribute("msg", "");
    31. kehudao.del(id);//调用 删除方法
    32. return selectall(null,map,request);
    33. }
    34. /**
    35. * 修改kehu信息
    36. */
    37. @RequestMapping(value="/update")
    38. public String update(kehu kehu,HttpServletRequest request,Map<String,Object> map1){
    39. Map<String,Object> map= new HashMap<String,Object>();//初始化对象
    40. map.put("khid", kehu.getKhid());//客户编号
    41. map.put("khmc", kehu.getKhmc());//客户名称
    42. map.put("jyfw", kehu.getJyfw());//经营范围
    43. map.put("djsj", kehu.getDjsj());//登记时间
    44. map.put("sm", kehu.getSm());//说明
    45. map.put("lxdh", kehu.getLxdh());//联系电话
    46. String khid=(String)kehu.getKhid();//客户编号
    47. String khmc=(String)kehu.getKhmc();//客户名称
    48. String jyfw=(String)kehu.getJyfw();//经营范围
    49. String djsj=(String)kehu.getDjsj();//登记时间
    50. String sm=(String)kehu.getSm();//说明
    51. String lxdh=(String)kehu.getLxdh();//联系电话
    52. request.setAttribute("msg", "");
    53. kehudao.update(map);//执行update 方法
    54. return selectall(null,map1,request);
    55. }
    56. /**
    57. * 查询kehu信息
    58. */
    59. @RequestMapping(value="/modify")
    60. public String modify(Integer id,Map<String,Object> map,HttpServletRequest request){
    61. String keyid=(String)request.getParameter("keyid");//request 方式获得主键id
    62. List<Map<String,Object>> list= new ArrayList>();//初始化对象
    63. list=kehudao.select(Integer.parseInt(keyid));//根据id返回 kehu对象数据
    64. request.setAttribute("khid", list.get(0).get("khid"));//客户编号
    65. request.setAttribute("khmc", list.get(0).get("khmc"));//客户名称
    66. request.setAttribute("jyfw", list.get(0).get("jyfw"));//经营范围
    67. request.setAttribute("djsj", list.get(0).get("djsj"));//登记时间
    68. request.setAttribute("sm", list.get(0).get("sm"));//说明
    69. request.setAttribute("lxdh", list.get(0).get("lxdh"));//联系电话
    70. return "kehu/kehumodify";
    71. }
    72. @RequestMapping(value="/detail")
    73. public String detail(Integer id,Map<String,Object> map,HttpServletRequest request){
    74. String keyid=(String)request.getParameter("keyid");//request 方式获得主键id
    75. List<Map<String,Object>> list= new ArrayList>();//初始化对象
    76. list=kehudao.select(Integer.parseInt(keyid));//根据id返回 kehu对象数据
    77. request.setAttribute("khid", String.valueOf(list.get(0).get("khid")));//客户编号
    78. request.setAttribute("khmc", list.get(0).get("khmc"));//客户名称
    79. request.setAttribute("jyfw", list.get(0).get("jyfw"));//经营范围
    80. request.setAttribute("djsj", list.get(0).get("djsj"));//登记时间
    81. request.setAttribute("sm", list.get(0).get("sm"));//说明
    82. request.setAttribute("lxdh", list.get(0).get("lxdh"));//联系电话
    83. return "kehu/kehudetail";
    84. }

    持久层设计

    1. public void save(Map<String, Object> map) {
    2. sqlSession.insert("com.chanpin.insertchanpin", map);//执行insert 插入方法
    3. }
    4. /**
    5. * 删除aa
    6. * @param id
    7. */
    8. public void del(Integer id) {
    9. sqlSession.delete("com.chanpin.delchanpin", id);//执行delete 删除方法
    10. }
    11. /**
    12. * 修改chanpin信息
    13. * @param map
    14. */
    15. public void update(Map<String, Object> map) {
    16. sqlSession.update("com.chanpin.updatechanpin", map);//执行update 修改方法
    17. }
    18. /**
    19. * 查询chanpin信息
    20. * @param id
    21. * @return
    22. */
    23. public List<Map<String, Object>> select(Integer id) {
    24. return sqlSession.selectList("com.chanpin.selectchanpin", id) ; //执行select 查询
    25. }

    三、注意事项
    1、管理员账号:admin密码:admin 数据库配置文件DBO.java
    2、开发环境为eclipse开发,数据库为mysql,使用java语言开发。
    3、数据库文件名是jspssmcrm.sql 系统名称ssmcrm
    4、地址:http://127.0.0.1:8080/ssmcrm/login.jsp

    四 系统实现

    源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

  • 相关阅读:
    PySide6精简教程
    【C++编程语言】之STL常用算法之遍历 查找算法
    基于阿基米德优化算法优化概率神经网络PNN的分类预测 - 附代码
    redis集群相关
    Speedoffice(excel)如何快捷隐藏表格内所有空行
    Springboot之Bean懒加载的实现详解
    Python中8种经典数据结构 之 集合
    jmeter实战
    【Go实现】实践GoF的23种设计模式:迭代器模式
    db.sqlite3
  • 原文地址:https://blog.csdn.net/qq_41221322/article/details/134523449