SSM流程

控制层 调用 服务层 调 dao层

框架搭建后 在 controller(控制层) 调用service 接口中的service实现类,在service实现类中调用dao接口 在到接口调用 mapper里的方法 id为方法名

复制代码
@Controller  //标记当前类为控制层的类
@Service 声明服务层的类
@RequestMapping("/UserController") //映射地址(这个类的名,可以自己设置)在前端表单提交时调用
@Autowired  //创建一个对象
@Resource   自动注入
复制代码
@Param  给参数命名
@ResponseBody  // 返回的是一个字符串而不是跳转业面

调用方式:1. 直接通过传入的name

复制代码
 public  String checkUser(String username,String password){}

2.通过HttpServletRequest对象 在对HttpServletRequest对象调用getParameter方法 获得

复制代码
 public String checkUser(HttpServletRequest request){
复制代码
    String username=request.getParameter("username");
   String password=request.getParameter("password");

}

3.使用类来接收

复制代码
public ModelAndView checkUser(User user ){
复制代码
String username=user.getUsername();
String password=user.getPassword();

}

跳转方式:1.return "html_name"

复制代码
//    返回值为 ModelAndView
复制代码
public ModelAndView checkUser(User user, ModelAndView mv ){

/html 和 .html 为前后缀

复制代码
//                请求转发
//                mv.setViewName("forward:/html/html_name.html");
//                重定向
                mv.setViewName("redirect:/html/html_name.html");

}

xml:

引用

复制代码
<!--    ${username} 不会自带引号 根据实际情况增加 且在接口中的@Param一定要被定义 变量-->
<!--    username= #{username,jdbcType=VARCHAR} 自带引号  变量-->

封装:

复制代码
<!--  返回的字段 封装-->
<!--    实体类的名字 返回结果-->
<!--  由一个id和多个result 组成  一般id对应主键-->
  <resultMap id="BaseResultMap" type="com.hzh.entity.User">
    <id column="id" jdbcType="INTEGER" property="id" />
    <result column="username" jdbcType="VARCHAR" property="username" />
    <result column="password" jdbcType="VARCHAR" property="password" />
  </resultMap>
复制代码
<!--   把要查询的字段进行封装-->
  <sql id="Base_Column_List">
    id, username, password
  </sql>
复制代码
<!-- 链接的mapper-->
<mapper namespace="com.hzh.mapper.UserMapper">
复制代码
--           前面部分   后面部分      ,分割
    <trim prefix="(" suffix=")" suffixOverrides=",">
--     动态拼接
      <if test="id != null">
        id,
      </if>
复制代码
</trim>

include 有执行 没有不执行

相关推荐
砚底藏山河13 小时前
容错重试与指数退避:网络抖动手抖不再丢数据(魔码量化实战 #04)
java·数据库·python·金融
白色的北极熊14 小时前
c语言 输出菱形字符串
c语言·开发语言
2501_9304724414 小时前
云安全自查清单:用腾讯云助手 30 分钟完成一次权限与密钥体检
java·腾讯云
学习智者14 小时前
《玄》IDE v3.6.3重磅发布:全功能修复与性能飞跃
开发语言·c++·ide·算法·中文语言 玄
奔跑吧树袋熊14 小时前
多租户隔离该做到哪一层:从连接池到 ORM 的取舍
开发语言·数据库·oracle·系统架构
letisgo514 小时前
JAVA 高级进阶05篇《Spring容器机制:Bean生命周期与三级缓存全解》
java·spring·面试·ioc·源码分析
岁月如歌778614 小时前
分布式锁完全指南:从数据库到 Redisson 的演进
java·后端·架构
大江东去浪淘尽千古风流人物14 小时前
【LoMa】局部特征匹配重访:从LoMa-B到旋转不变LoMa-R的架构与工程实践
开发语言·深度学习·计算机视觉·r语言·视觉定位·sfm·局部特征匹配
菜鸟~noob23314 小时前
【电子战】测向精度极限——克拉美-罗下限(CRLB)与误差分析【含matlab代码】
开发语言·matlab
m0_7345717614 小时前
深入理解C++ 析构函数<二>析构顺序
开发语言·c++