# 【CRM客户管理系统】
## 调研
## 产品
## 需求
参考《01_CRM需求概要文档V1.0》
## UI
## 开发
* 技术选型:
SSM、MYSQL57、tomcat7、jdk1.7、boostrap、anglur.js、quartz、ehcache、富文本编辑器(百度编辑器)
* 框架搭建:
* 数据库设计:
数据库名称=工程名称CRM_16
表设计:
表字符:utf-8、utf8
表字段:
主键、bigint(20) 自增、(32) UUID、不能为空
索引:
外键、关联字段、查询比较频繁的字段
单表:500M、索引个数16个
临时表、存储过程、视图、触发器、监听器
* 数据库优化原则:
* CRM数据库表设计说明:
参考脚本文件《crm.sql》
hj_user 用户表
userid 用户主键
roleid 角色主键
deptid 部门主键
hj_role 角色表
roleid 角色ID
deptid 部门ID
hj_dept 部门表
deptid 部门ID
deptparaid 上一级部门ID
hj_menu 菜单表
menuid 菜单主键ID
menuparaid 上一级菜单ID
hj_role_menu 角色-菜单关系表
roleid 角色ID
menuid 菜单ID
* SQL需求:
* 需求1:查询用户ID=2的信息: 用户ID,用户名,角色ID,角色名称,部门ID,部门名称
select
u.userid,u.username,u.roleid,r.rolename,u.deptid,d.deptname
from hj_user u
left join hj_role r on r.roleid = u.roleid
left join hj_dept d on d.deptid = u.deptid
where u.userid = 2;
* 需求2:查询角色ID=2所属的菜单信息:角色ID,角色名称,菜单ID,菜单名称
select
rm.roleid,r.rolename,rm.menuid,m.menuname
from hj_role_menu rm
left join hj_role r on r.roleid = rm.roleid
left join hj_menu m on m.menuid = rm.menuid
where rm.roleid = 2;
select
rm.roleid,r.rolename,rm.menuid,
-- group_concat()
group_concat(m.menuname separator ',') menuname
from hj_role_menu rm
left join hj_role r on r.roleid = rm.roleid
left join hj_menu m on m.menuid = rm.menuid
group by r.rolename;
* 需求3:查询系统管理(菜单ID=1)所有下级菜单
select *
from hj_menu m
where m.menuparaid = 1;
* 需求4:查询所有的上级菜单信息
select *
from hj_menu m
where m.menuparaid is null;
* 项目工程搭建步骤:
* 1:新建一个web project工程CRM_16
* 2:解压FTP中CRM压缩包到本地文件夹
* 3:工程名右键,选择build path,选中最后一个选项,将tomcat的jar包导入工程
* 4:复制压缩文件中的webroot文件夹“内”的文件,到工程的WebROOT文件夹下
* 5:复制lib文件夹下的jar包复制到工程中
* 6:取消前端文件验证表达式错误,操作步骤,参考下图
![](https://i.imgur.com/7rGu5JI.png)
* 框架代码:
* web.xml:
通用性设置如下:
<!-- spring配置文件信息 -->
<!-- springMVC配置文件信息 -->
<!-- 编码格式 -->
<!-- 日志信息 -->
<!-- session有效期 -->
<!-- 404、500 -->
<!-- 请求后缀拦截.do(后台管理系统),.htm(前端网站) -->
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>CRM_16</display-name>
<!-- spring配置文件信息 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- springMVC配置文件信息 -->
<servlet>
<servlet-name>crm_16</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:context-dispatcher.xml</param-value>
</init-param>
<!-- 启用即加载 -->
<load-on-startup>1</load-on-startup>
</servlet>
<!-- 请求后缀拦截.do(后台管理系统),.htm(前端网站) -->
<servlet-mapping>
<servlet-name>crm_16</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<!-- 编码格式UTF-8 -->
<filter>
<filter-name>encodingFilter</filter-name >
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*</url-pattern>
</filter-mapping>
<!-- 日志信息 -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:/log4j.xml</param-value>
</context-param>
<!-- 加载log4j配置文件 -->
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
<!-- session有效期 -->
<session-config>
<session-timeout>120</session-timeout><!-- 默认的是分钟 -->
</session-config>
<!-- 404、500 -->
<error-page>
<error-code>404</error-code>
<location>/404.do</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/500.do</location>
</error-page>
<!-- 首页信息(可选) -->
<welcome-file-list>
<welcome-file>/index.do</welcome-file>
</welcome-file-list>
</web-app>
* 连接池:
* c3p0:
* 阿里:
问题:
1:游标越界
2:事务连接次数过多 too many connect
解决方式:
参考代码
### 登录页面跳转
* 开发步骤:
1:获取跳转页面的接口地址(前端获取)
2:增加controller类进行页面跳转
* 代码示例:
* UserLoginController.java:
/**
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【资源说明】 1、该资源包括项目的全部源码,下载可以直接使用! 2、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 3、本资源作为“参考资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研,自行调试。 基于SSM框架搭建的CRM客户管理系统源码+项目说明.zip
资源推荐
资源详情
资源评论
收起资源包目录
基于SSM框架搭建的CRM客户管理系统源码+项目说明.zip (905个子文件)
StudentController.class 39KB
ResourceController.class 37KB
Student.class 34KB
CustomController.class 27KB
StudentServiceImpl.class 27KB
ReportController.class 23KB
ExcelExportUtil.class 20KB
Resource.class 16KB
ResourceServiceImpl.class 16KB
PublicExcelExportUtil.class 16KB
SqlBuilder.class 14KB
MatchController.class 14KB
DateUtil.class 12KB
ImportDataUtil.class 12KB
ReportExcelExportUtil.class 10KB
BaseController.class 10KB
BaseOperInterceptor.class 9KB
User.class 9KB
ReportServiceImpl.class 8KB
LogController.class 6KB
ForgetPasswordController.class 6KB
CourseServiceImpl.class 6KB
ContextUtil.class 6KB
ExcelReaderUtil.class 6KB
UserServiceImpl.class 6KB
IStudentService.class 5KB
CourseController.class 5KB
JsonUtil.class 5KB
MatchinfoServiceImpl.class 5KB
DataAccessImpl.class 5KB
RoleController.class 5KB
UserLoginController.class 5KB
EmailSendTool.class 5KB
JackSonUtils.class 5KB
MenuServiceImpl.class 5KB
AnnotationBeanNameGenerator.class 5KB
UserController.class 5KB
PageBean.class 5KB
JumpViewConstants.class 4KB
Transferrecord.class 4KB
MenuController.class 4KB
IResourceService.class 4KB
ExcelReaderByCaiWuUtil.class 4KB
Menu.class 4KB
PatterController.class 4KB
Passstudent.class 4KB
PatterServiceImpl.class 4KB
Dealrecord.class 4KB
Course.class 4KB
RoleServiceImpl.class 4KB
Patter.class 4KB
AddressUtils.class 4KB
Userlogs.class 4KB
Visitrecord.class 3KB
SystemMessageController.class 3KB
Matchinfo.class 3KB
WebSocketNeedBean.class 3KB
BaseEntity.class 3KB
TransferRecordServiceImpl.class 3KB
WebSocketManager.class 3KB
TaskWebSocketManager.class 3KB
TaskController.class 3KB
Subject.class 3KB
BackgroundLoginInterceptor.class 3KB
DownLoadExcelUtil.class 3KB
SystemMessageServiceImpl.class 3KB
CellinfoController.class 3KB
Action.class 3KB
ReflectUtil.class 3KB
Dept.class 3KB
Role.class 3KB
StateConstants.class 3KB
ProportionConstants.class 3KB
DeptController.class 3KB
DeptServiceImpl.class 3KB
CreatUserIpinfo.class 3KB
IReportService.class 3KB
Pattertype.class 2KB
MD5Tools.class 2KB
TaskServiceImpl.class 2KB
CellinfoServiceImpl.class 2KB
TaskPushInfoThreadPool$1.class 2KB
Forget.class 2KB
PushInfoThreadPool$1.class 2KB
Pattercontenttype.class 2KB
TodaynoteServiceImpl.class 2KB
Cellinfo.class 2KB
Systemmessage.class 2KB
ForgetServiceImpl.class 2KB
UserLoginServiceImpl.class 2KB
Todaynote.class 2KB
LogsServiceImpl.class 2KB
TodayNoteController.class 2KB
UserLogsController.class 2KB
UuidCodeUtil.class 2KB
BusinessException.class 1KB
DaoException.class 1KB
UserContext.class 1KB
NextVisitMessageJob.class 1KB
EmailConfig.class 1KB
共 905 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
土豆片片
- 粉丝: 1555
- 资源: 5641
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功