开发环境
IDE: Eclipse Mars2
JDK: 1.7
数据库: MySQL
创建数据库
一.数据库sql文件
二.创建crm数据库,执行sql
工程搭建
使用Bootstrap前端框架,官方网站
http://www.bootcss.com/
工程使用SpringMVC、Spring、Mybatis框架整合完成
一.需要的jar包
- spring(包括SpringMVC)
- Mybatis
- Mybatis-spring 整合包
- 数据库驱动
- 第三方连接池
- Json依赖包Jackson
二.整合思路
- Dao层:
- SqlMapConfig.xml, 空文件即可,但是需要文件头
- applicationContext-dao.xml
a) 数据库连接
b) SqlSessionFactory对象,需要Spring和Mybatis整合包下的
c) 配置mapper文件扫描器
- Service层:
- applicationContext-service.xml包扫描器,扫描@service注解的类
- applicationContext-trans.xml配置事务
- Controller层:
- SpringMVC.xml
a) 包扫描器,扫描@Controller注解的类
b) 配置注解驱动
c) 配置视图解析器
- SpringMVC.xml
- Web.xml文件
- 配置Spring
- 配置前端控制器
三.创建工程
- 创建动态web工程
- 创建boot-crm
四.加入jar包
五.加入配置文件
创建config资源文件夹, 在里面创建mybatis和Spring文件夹
- SqlMapConfig.xml
空文件即可 - applicationContext-dao.xml
需要配置 : 加载properties文件, 数据源, SqlSessionFactory, Mapper扫描
六.加入静态资源
实现页面展示
一.代码实现
- 编写CustomerController 显示用户列表
二.页面显示问题
- 访问页面发现不能正常显示
- 原因: web.xml配置时, 是设置所有的请求都进入SpringMVC, 但是SpringMVC无法处理css,js等静态资源,所有无法正常显示
- 解决方案:
- 在springmvc.xml中配置
- 修改web.xml, 让所有以action结尾的请求都进入springMVC
如果使用此方式, 那么项目中的页面的请求都是以action结尾
- 在springmvc.xml中配置
自定义标签
一.编写自定义标签类
/**
* 自定义标签的使用
*
*/
public class MyTag extends TagSupport {
@Override
public int doStartTag() throws JspException {
JspWriter out = super.pageContext.getOut();
try {
out.print("<span>这个是自定义标签输出的内容<span>");
out.print("<h1>这个是自定义标签输出的大标题<h1>");
} catch (IOException e) {
e.printStackTrace();
}
return super.doStartTag();
}
}
二.编写tld描述文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
"http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
<taglib>
<tlib-version>2.0</tlib-version>
<jsp-version>1.2</jsp-version>
<short-name>myTag</short-name>
<uri>http://itheima/myTag/</uri>
<tag>
<name>out</name>
<tag-class>com.itheima.crm.utils.MyTag</tag-class>
<body-content>JSP</body-content>
</tag>
</taglib>
三.使用自定义标签,页面引入
<%@ taglib prefix="myTag" uri="http://itheima/myTag/"%>
<myTag:out></myTag:out>
实现查询条件初始化
一.需求分析
二.实现DAO开发
- pojo
- Mapper
- Mapper.xml
三.实现Service开发
- BaseDictService接口
- 实现类
四.实现Controller开发
客户列表展示
一.需求
二.创建pojo开发
三.实现DAO
- 分析
- 前台发起请求,需要接收请求过来的查询条件数据,可以使用pojo接收数据
- 前台需要分页显示,根据准备好的分页实现,应该返回分类页page
- 根据分析,DAO需要编写两个方法
- 需要根据条件分页查询客户信息
- 需要根据条件查询数据总条数
- 创建QueryVo ,
包含查询条件属性和分页数据 - Mapper
创建CustomerMapper接口 - Mapper.xml
创建CustomerMapper.xml
四.实现service
- 接口
编写接口CustomerService - 实现类
编写接口实现类CustomerServiceImpl
修改客户信息
一.需求
- 客户列表中点击"修改"按钮弹出客户信息修改窗,并初始化客户信息
- 点击"保存修改"按钮将修改后的结果保存到数据库中
三.回显功能实现
- Mapper接口
- Mapper.xml
- Service接口
- Service接口实现类
- Controller
四.实现编辑客户数据
- 页面中的请求逻辑
五.编辑功能实现
- Mapper接口
- Mapper.xml
在CustomerMapper.xml编写sql - Service接口
- Service接口实现类
- Controller
删除客户
一.需求分析
- 点击客户列表中的删除按钮,提示"警告信息"
- 点击确定后删除用户信息,并刷新页面
二.功能开发
- Mapper接口
- Mapper.xml
- Service接口
- Service实现类
- Controller