发个基础,ssm,springmvc增删改查熟悉项目流程

初学者如果做ssm增改改查流程,或者熟悉ssm项目往往有点不知道头和尾,胡乱看代码

一,核心原理

1.用于发送请求给服务器
2。请求被DispatchServlet拦截到
3。DispatchServlet通过HandleMapping检查url有没有对应的Controller,如果有则调用Controller
4. Controller开始执行业务逻辑
5。控制器执行完毕后,如果返回字符串,则ViewResolver将字符串转化成相应的视图对象;
如果返回ModelAndView对象,该对象本身就包含了视图对象信息。
6. DispatchServlet将视图对象中的数据输出给服务器。

7.服务器将数据输出给客户端。

核心原理有些人也看不懂,接下来我发图片走一遍简单流程吧。

 

1,jsp发送请求页面上的请求地址,也就是方法地址,也可以叫调用后台接口,这是整个流程的开始

不懂绝对路径的自己去百度吧,

 

2,提交第一步发送动作的url地址后,请求被DispatchServlet拦截到,也就是web.xml里面配置的,整合ssm会必须写上

 

3,这个时候会动通过HandleMapping检查url有没有对应的Controller,如果有则调用Controller,

这是配置文件写在springmvc.xml,base-package写的是你的方法地址的包路径,也就是jsp发送url根据这个包,快速找到你要调用的方法。第2步和第3步你搭框架的时候一般都搭建好了,只需要修改第三步包路径就好了。

 

4,这个时候就得看方法了也就是jsp调用的接口,也叫控制器,接收页面上的东西,然后调用业务逻辑在吧数据或者结果返回给页面

接收到表单等信息后就可以调用服务的接口了,也就是写方法的业务逻辑的地方

接口

 

 

实现接口,这里就是调用数据层,可以对数据进行逻辑处理,我这里只是简单保存,没有逻辑,直接返回

 

数据层接口:配置mybatis的自动反射机制会找到xml配置文件下的sql,面向接口编程差不多就是这样吧,写了接口之后再去实现然后去调用,

接口不实现就没什么意义,

 

 

IAvocationMapper.xml

 

整调用就完成了,最后程序会回到第4步的控制器方法进行返回页面

页面跳转看自己要跳到什么页面。这个跳转spingmvc配置文件:也就是试图解析器,会自动映射给你拼上web-inf / jsp / admin / avcationAdd.jsp,

好了这就是整个ssm增库改查的基本流程,如有不对的地方或者看不懂的地方,在下面留言,下次有时间更新ssh的基本流程,让你感受一下2个框架的不同,和ssm的优点之处

ssm基础增删改查报错

08-28

报错:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.shopmall.eshop.biz.sysmng.operatormng.service.ManagerService.getFleetManagerByOpenIdrn严重: Servlet.service() for servlet [rest] in context with path [/oil_credit] threw exception [Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.shopmall.eshop.biz.sysmng.operatormng.service.ManagerService.getFleetManagerByOpenId] with root causernorg.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.shopmall.eshop.biz.sysmng.operatormng.service.ManagerService.getFleetManagerByOpenIdrnAccessLogValve.invoke(AccessLogValve.java:962)rnrnrnrnsql:rnrnrnrnrn rn rn rn rn rn rn rn rn rn rn rn rn MANAGER_ID,OPEN_ID,MANAGER_NAME,FLEET_ID,PHONE,INVITE_CODE,IS_STATE,CREATEDATE,CREATETIMErn rn rn select rn rn from fleet_manager arn where OPEN_ID = #OPEN_IDrn rnrnrnrndao:rnpackage com.shopmall.eshop.biz.sysmng.operatormng.dao;rnrnimport java.util.List;rnrnimport org.apache.ibatis.annotations.Param;rnrnimport com.shopmall.eshop.biz.sysmng.operatormng.entity.FleetManager;rnrnpublic interface ManagerDao rn rn /**rn * 微信id查询操作员rn *rn */ rn FleetManager selectByOpenId(@Param("open_id")String open_id);rn rn /**rn * 微信id删除操作员rn *rn */rn void deleteFleetManager(@Param("open_id")String open_id);rn rn /**rn * 所属车队增加操作员rn *rn */rn FleetManager insertFleetManager(@Param("fleet_id")String fleet_id);rn rn /**rn * 所属车队删除操作员rn *rn */rn FleetManager updateFleetManager(@Param("fleet_id")String fleet_id);rn rn /**rn * 所属车队列表rn *rn */rn List getFleetId(@Param("fleet_id")String fleet_id);rnrnrnrnservice:rnpackage com.shopmall.eshop.biz.sysmng.operatormng.service;rnrnimport com.shopmall.eshop.biz.sysmng.operatormng.entity.*;rnrnrnpublic interface ManagerService rn public FleetManager getFleetManagerByOpenId(String openId); rnrnrnserviceImpl:rnpackage com.shopmall.eshop.biz.sysmng.operatormng.service.impl;rnrnimport javax.annotation.Resource;rnrnimport org.springframework.stereotype.Service;rnrnimport com.shopmall.eshop.biz.sysmng.operatormng.dao.ManagerDao;rnimport com.shopmall.eshop.biz.sysmng.operatormng.entity.FleetManager;rnimport com.shopmall.eshop.biz.sysmng.operatormng.service.ManagerService;rnrnrn@Service("managerService") rnpublic abstract class ManagerServiceImpl implements ManagerService rn @Resourcern private ManagerDao managerDao;rnrn public FleetManager getFleetManagerByOpenId(String openId) rn System.out.print(this.managerDao.selectByOpenId(openId).getMANAGER_ID());rn return this.managerDao.selectByOpenId(openId);rn rn rnrncontroller:rnpackage com.shopmall.eshop.biz.sysmng.operatormng.controller;rnimport javax.annotation.Resource;rnimport javax.servlet.http.HttpServletRequest;rnrnimport org.springframework.stereotype.Controller;rnimport org.springframework.ui.Model;rnimport org.springframework.web.bind.annotation.RequestMapping;rnrnimport com.shopmall.eshop.biz.sysmng.operatormng.entity.FleetManager;rnimport com.shopmall.eshop.biz.sysmng.operatormng.service.ManagerService;rnrn@Controllerrn@RequestMapping("/eshop/biz/sysmng/operatormng")rnpublic class ManagerController rn @Resourcern private ManagerService managerService;rn rn //查询显示rn @RequestMapping("/index") rn public String toIndex(HttpServletRequest request,Model model) rn String openId = request.getParameter("openId");rn FleetManager fleetmanager = this.managerService.getFleetManagerByOpenId(openId); rn model.addAttribute("fleetmanager", fleetmanager); rn return "/oilcredit/biz/sysmng/operatormng/index";rn rn

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试