spring/springMVC/mybatis(持久层、业务层、控制层思路小结)

准备工作:

## 7 导入省市区数据到数据库中

1. 从FTP下载SQL脚本文件

2. 把脚本文件移动到易于描述绝对路径的位置

3. 进入MySQL控制台

4. 使用`tedu_store`数据库

5. 运行`source e:\t_dict.sql`以执行该脚本文件    (  linux下的命令是  source /home/soft01/桌面/t_dict.sql;)

-------------------------------------------------------------------------------------------

## 获取省市区数据

### 目标

获取所有省的列表

根据省的代号,获取省的信息

获取某个省的所有市的列表

根据市的代号,获取市的信息

获取某个市的所有区的列表

根据区的代号,获取区的信息

------------------------------------------------------------------------------------------

### 创建实体类(分析前端页面,并依照数据库中各个表的字段写相应的实体类)

在`cn.tedu.store.entity`包中创建3个实体类:

  public class Province {
        private Integer id;
        private String code;
        private String name;

        // 构造方法,SET/GET,toString,实现Serializable
    }

    public class City {
        private Integer id;
        private String provinceCode;
        private String code;
        private String name;

        // 构造方法,SET/GET,toString,实现Serializable
    }

    public class Area {
        private Integer id;
        private String cityCode;
        private String code;
        private String name;

        // 构造方法,SET/GET,toString,实现Serializable
    }

----------------------------------------------------------------------------------------------------------------------

###  持久层

创建`cn.tedu.store.mapper.ProvinceMapper`接口,添加抽象方法:

 /**
     * 获取所有省的列表
     */
    List<Province> getProvinceList();

    /**
     * 根据省的代号,获取省的信息
     */
    Province getProvinceByCode(String provinceCode);

然后,在`resources\mappers\`下创建(复制粘贴再修改)`ProvinceMapper.xml`映射文件:

<mapper namespace="cn.tedu.store.mapper.ProvinceMapper">

        <!-- 获取所有省的列表 -->
        <!-- List<Province> getProvinceList() -->
        <select id="getProvinceList"
            resultType="cn.tedu.store.entity.Province">
            SELECT
                id,
                province_code   AS code,
                province_name   AS name
            FROM
                t_dict_provinces
        </select>

        <!-- 根据省的代号,获取省的信息 -->
        <!-- Province getProvinceByCode(String provinceCode) -->
        <select id="getProvinceByCode"
            resultType="cn.tedu.store.entity.Province">
            SELECT
                id,
                province_code   AS code,
                province_name   AS name
            FROM
                t_dict_provinces
            WHERE
                province_code=#{provinceCode}
        </select>

    </mapper>
    

### 业务层

以处理省的信息为例,先创建对应的业务接口`cn.tedu.store.service.IProvinceService`,并添加与持久层接口中相同的抽象方法:

 /**
     * 获取所有省的列表
     */
    List<Province> getProvinceList();

    /**
     * 根据省的代号,获取省的信息
     */
    Province getProvinceByCode(String provinceCode);

创建`cn.tedu.store.service.ProvinceServiceImpl`实现以上接口,并使用`@Service("provinceService")`注解,然后,在类中声明`@Autowired ProvinceMapper provinceMapper;`属性,然后,实现接口中的抽象方法:

   

public List<Province> getProvinceList() {
        return provinceMapper.getProvinceList();
    }

    public Province getProvinceByCode(String provinceCode) {
        return provinceMapper.getProvinceByCode(provinceCode);
    }

###  控制器层

获取省的列表

请求路径:`/province/list.do`

请求参数:`无`

请求类型:`GET`

响应方式:`ResponseResult<List<Province>>`

根据省的代号,获取省的信息

请求路径:`/province/info.do`

请求参数:`code=110000`

请求类型:`GET`

响应方式:`ResponseResult<Province>`

获取某个省的市的列表

请求路径:`/city/list.do`

请求参数:`province_code=xx`

请求类型:`GET`

响应方式:`ResponseResult<List<City>>`

…… ……

(其实大体思路就是MVC思想  ,但还是有很多细节要注意,要多练习。)

-------------------------------------------------------------------------------------------

### POST请求与GET请求的区别(面试题

GET常用于地址栏请求
POST请求表单提交,json的应用(看之前的代码) ,一般要加方法体

get请求的提交的数据量较小
POST请求的数据一般无限制

get把很多信息暴露了,如id等,所以不太安全,相比post请求而言。

get请求便于收藏 ,因为它具体到某一个网页,而post不是的(找个代码看看)。

原文地址:https://www.cnblogs.com/shijinglu2018/p/9563476.html

时间: 2024-11-05 18:30:58

spring/springMVC/mybatis(持久层、业务层、控制层思路小结)的相关文章

Spring+SpringMVc+Mybatis实现数据库查询

大家好,本篇博客小Y将会给大家带来一篇SSM框架实现数据查询的Demo,使用的数据库是Mysql,Server是TomCat.现在的SSM整合非常流行,因为springmvc的高效和mybatis的灵活.高效,给企业开发带来了很大的好处,大大节省了开发成本.好了,啰嗦了这么多,其实就想告诉大家ssm框架的优秀之处,那么开门见山,让我们开始本次的博客吧. 本篇博客的目录: 1:SSM框架搭建环境 2:编写数据库sql,创建表 3:连接数据库 4:写java代码,分层 5:  写jsp页面 6:Sp

spring,springmvc,mybatis基本整合(一)--xml文件配置方式(2)

spring,springmvc,mybatis基本整合(一)–xml文件配置方式(2)之mapper接口 一,整合结构 二,所需jar包 如上图. 三,整合配置 1,web.xml文件 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://j

Spring+SpringMVC+MyBatis深入学习及搭建(十六)——SpringMVC注解开发(高级篇)

转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7085268.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十五)——SpringMVC注解开发(基础篇) 本文主要内容: (1)SpringMVC校验 (2)数据回显 (3)异常处理器 (4)图片上传 (5)Json数据交互 (6)支持RESTful 1.SpringMVC校验 1.1校验理解 项目中,通常使用较多的是前端的校验,比如页面中js校验.对于安全要求较高的

SSM框架——Spring+SpringMVC+Mybatis的搭建教程

一:概述 SSM框架在项目开发中经常使用到,相比于SSH框架,它在仅几年的开发中运用的更加广泛. Spring作为一个轻量级的框架,有很多的拓展功能,最主要的我们一般项目使用的就是IOC和AOP. SpringMVC是Spring实现的一个Web层,相当于Struts的框架,但是比Struts更加灵活和强大! Mybatis是 一个持久层的框架,在使用上相比Hibernate更加灵活,可以控制sql的编写,使用 XML或注解进行相关的配置! 根据上面的描述,学习SSM框架就非常的重要了! 二:搭

SSM框架 (Spring+SpringMVC+MyBatis)

SSM框架--详细整合教程(Spring+SpringMVC+MyBatis) springspringmvcmybatis整合教程ssm整合 1.基本概念  1.1.Spring          Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来.它是为了解决企业应用开发的复杂性而创建的.Spri

Spring+SpringMVC+Mybatis+Mysql整合实例【转】

本文要实现Spring+SpringMVC+Mybatis+Mysql的一个整合,实现了SpringMVC控制访问的页面,将得到的页面参数传递给Spring中的Mybatis的bean类,然后查找Mysql数据的功能,并通过JSP显示出来.建议可以先看笔者另一文章Mybatis与Spring整合创建Web项目 .笔者觉得整合过程中问题比较多的还是Spring+Mybatis的整合,SpringMVC的整合还是比较简单. Spring        Spring 是一个开源框架, Spring 是

Spring+SpringMVC+MyBatis框架的搭建

1,SSM的简介 SSM(Spring+SpringMVC+MyBatis)框架集由Spring.SpringMVC.MyBatis三个开源框架整合而成,常作为数据源较简单的web项目的框架. 其中spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架. SpringMVC分离了控制器.模型对象.分派器以及处理程序对象的角色,这种分离让它们更容易进行定制. MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架. 2,SSM的搭建 项目的结构如下: 首先配

[JSP]Maven+SSM框架(Spring+SpringMVC+MyBatis)

来源:http://blog.csdn.net/zhshulin/article/details/37956105?utm_source=tuicool&utm_medium=referral(以下博文对原博文有改动和补充) 开发环境: Eclipse Java EE IDE for Web Developers. Version: Mars.2 Release (4.5.2) apache-tomcat-8.0.33 jdk1.8.0_77 MySQL 5.0.11-dev(官网下载需要账号登

SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)【转载】

最近在学习Spring+SpringMVC+MyBatis的整合.以下是参考网上的资料自己实践操作的详细步骤. 1.基本概念 1.1.Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来.它是为了解决企业应用开发的复杂性而创建的.Spring使用基本的JavaBean来完成以前只可能由EJ

Spring+SpringMVC+MyBatis深入学习及搭建(十一)——SpringMVC架构

转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6985816.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十)--MyBatis逆向工程 1.什么SpringMVC Spring web mvc和Struts2都属于表现层的框架,它是Spring框架的一个模块.SpringMVC和Spring无需通过中间整合层进行整合. SpringMVC是一个基于mvc的web框架. 2.mvc在b/s系统下的应用 (1)用户发