SSM 是 Spring + SpringMVC + Mybatis集成的框架。
MVC即model view controller。(模型,视图,控制器)
一、entity层(model层,domain层)
用于存放我们的实体类,类中定义了多个类属性,并与数据库表的字段保持一致,一张表对应一个类。
主要用于定义与数据库对象应的属性,提供get/set方法,tostring方法,有参无参构造函数。
二、mapper层(dao层)
数据持久层,先设计接口,然后在配置文件中进行配置其实现的关联。对数据库进行数据持久化操作,他的方法语句是直接针对数据库操作的。该层的作用为访问数据库,向数据库发送sql语句,完成数据的增删改查任务。
数据持久化操作就是指,把数据放到持久化的介质中,同时提供增删改查操作。
三、Service层=service接口+servicelmpl实现类
用来存放业务逻辑处理,也是一些关于数据库处理的操作,但不是直接和数据库打交道,和dao层一样都是先设计接口,再创建要实现的类,然后在配置文件中进行配置其实现的关联。然后就可以在Service层调用dao层的接口进行业务逻辑应用的处理。
当项目的业务逻辑简单时,可选择service层=service类;
当项目的业务复杂时,可选择Service层=service接口+serviceImpl实现类;
Service的impl是把mapper和service进行整合的文件
封装Service层的业务逻辑有利于业务逻辑的独立性和重复利用性。
四、controller层
控制器,控制业务逻辑service,控制请求和响应,负责前后端交互。因为service中的方法是我们使用到的,controller通过接收前端传过来的参数进行业务操作,在返回一个指定的路径或者数据表。
项目实例图:
model层(entity层,domain层)
public class TbKeyword extends BaseEntity {
private static final long serialVersionUID = 1L;
private Long id;
@Excel(name = "关键词")
private String words;
@Excel(name = "词性")
private String flag;
public void setId(Long id)
{
this.id = id;
}
public Long getId() { return id; }
public String getWords() {
return words;
}
public void setWords(String words) {
this.words = words;
}
public String getFlag() {
return flag;
}
public void setFlag(String flag) {
this.flag = flag;
}
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("words", getWords())
.append("flag", getFlag())
.toString();
}
}
对应数据库表字段
mapper层(dao层)
public interface TbKeywordMapper<TbKeyword> {
/**
* 关键词信息查询
* @param id 车主信息查询主键
* @return 车主信息查询
*/
public TbKeyword selectTbKeywordById(Long id);
/**
* 查询关键词列表
* @param tbKeyword 关键词查询
* @return 关键词查询集合
*/
public List<TbKeyword> selectTbKeywordList(TbKeyword tbKeyword);
/**
* 新增关键词查询
*
* @param tbKeyword 车主信息查询
* @return 结果
*/
public int insertTbKeyword(TbKeyword tbKeyword);
//修改
public int updateTbKeyword(TbKeyword tbKeyword);
//删除
public int deleteTbKeywordById(Long id);
}
Service层=service接口+servicelmpl实现类
public interface ITbKeywordService
{
public TbKeyword selectTbKeywordById(Long id);
public List<TbKeyword> selectTbKeywordList(TbKeyword tbKeyword);
int insertTbUser(TbKeyword tbKeyword);
int updateTbUser(TbKeyword tbKeyword);
public int insertTbKeyword(TbKeyword tbKeyword);
public int updateTbKeyword(TbKeyword tbKeyword);
public int deleteTbKeywordById(Long id);
}
文章来源:https://www.toymoban.com/news/detail-444683.html
@Service
public class TbKeywordServiceImpl implements ITbKeywordService
{
@Autowired
private TbKeywordMapper tbKeywordMapper;
/**
* 查询关键词信息
*
* @param id 关键词信息查询主键
* @return 关键词信息查询
*/
@Override
public TbKeyword selectTbKeywordById(Long id)
{
return (TbKeyword) tbKeywordMapper.selectTbKeywordById(id);
}
/**
* 查询关键词列表
*
* @param tbKeyword 关键词查询
* @return 关键词查询
*/
@Override
public List<TbKeyword> selectTbKeywordList(TbKeyword tbKeyword)
{
return tbKeywordMapper.selectTbKeywordList(tbKeyword);
}
@Override
public int insertTbUser(TbKeyword tbKeyword) {
return 0;
}
@Override
public int updateTbUser(TbKeyword tbKeyword) {
return 0;
}
/**
* 新增关键词信息查询
*
* @param tbKeyword 关键词信息查询
* @return 结果
*/
@Override
public int insertTbKeyword(TbKeyword tbKeyword)
{
return tbKeywordMapper.insertTbKeyword(tbKeyword);
}
/**
* 修改关键词查询
*
* @param tbKeyword 车主信息查询
* @return 结果
*/
@Override
public int updateTbKeyword(TbKeyword tbKeyword)
{
return tbKeywordMapper.updateTbKeyword(tbKeyword);
}
/**
* 删除关键词查询信息
*
* @param id 车主信息查询主键
* @return 结果
*/
@Override
public int deleteTbKeywordById(Long id)
{
return tbKeywordMapper.deleteTbKeywordById(id);
}
}
controller层文章来源地址https://www.toymoban.com/news/detail-444683.html
@RestController
@RequestMapping("/mychery/keyword")
public class TbKeywordController extends BaseController
{
@Autowired
private ITbKeywordService tbKeywordService;
/**
* 查询关键词信息列表
*/
@PreAuthorize("@ss.hasPermi('mychery:keyword:list')")
@GetMapping("/list")
public TableDataInfo list(TbKeyword tbKeyword)
{
startPage();
List<TbKeyword> list = tbKeywordService.selectTbKeywordList(tbKeyword);
return getDataTable(list);
}
/**
* 导出关键词信息列表
*/
@PreAuthorize("@ss.hasPermi('mychery:keyword:export')")
@Log(title = "关键词信息查询", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public AjaxResult export(TbKeyword tbKeyword)
{
List<TbKeyword> list = tbKeywordService.selectTbKeywordList(tbKeyword);
ExcelUtil<TbKeyword> util = new ExcelUtil<TbKeyword>(TbKeyword.class);
return util.exportExcel(list, "关键词信息查询数据");
}
/**
* 获取关键词详细信息
*/
@PreAuthorize("@ss.hasPermi('mychery:keyword:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return AjaxResult.success(tbKeywordService.selectTbKeywordById(id));
}
/**
* 新增关键词信息查询
*/
@PreAuthorize("@ss.hasPermi('mychery:user:add')")
@Log(title = "车主信息查询", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody TbKeyword tbKeyword)
{
return toAjax(tbKeywordService.insertTbUser(tbKeyword));
}
/**
* 修改关键词信息查询
*/
@PreAuthorize("@ss.hasPermi('mychery:keyword:edit')")
@Log(title = "关键词信息查询", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody TbKeyword tbKeyword)
{
return toAjax(tbKeywordService.updateTbKeyword(tbKeyword));
}
/**
* 删除关键词信息查询
*/
@PreAuthorize("@ss.hasPermi('mychery:keyword:remove')")
@Log(title = "关键词信息查询", businessType = BusinessType.DELETE)
@DeleteMapping("/{id}")
public AjaxResult remove(@PathVariable Long id)
{
return toAjax(tbKeywordService.deleteTbKeywordById(id));
}
}
到了这里,关于对SSM框架中Dao层,Mapper层,controller层,service层,model层,entity层等层的理解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!