当前位置: 首页 > news >正文

南通启益建设集团有限公司网站磁力猫最好磁力搜索引擎

南通启益建设集团有限公司网站,磁力猫最好磁力搜索引擎,天津网站建设要多少钱,中国最大域名注册商1. MyBatis 是什么MyBatis 是一款优秀的持久层框架MyBatis 也是一个 ORM (Object Relational Mapping)框架,即对象关系映射它支持自定义 SQL、存储过程以及高级映射MyBatis 去除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作MyBatis…

1. MyBatis 是什么

  • MyBatis 是一款优秀的持久层框架

  • MyBatis 也是一个 ORM (Object Relational Mapping)框架,即对象关系映射

  • 它支持自定义 SQL、存储过程以及高级映射

  • MyBatis 去除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作

  • MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录

MyBatis 是更简单完成程序和数据库交互的工具

2. 为什么学 MyBatis

因为对于 JDBC 来说,整个操作的步骤非常繁琐,所以学习 MyBatis 就是为了帮助我们更方便。更快速的操作数据库

3. 怎么学 MyBatis

学习 MyBatis 两步走

  1. 搭建 MyBatis 开发环境

  1. 使用 MyBatis 模式和语法操作数据库

4. 创建 MyBatis 项目

MyBatis 是 ORM 框架,也就是对象关系映射,在面向对象编程语言中,将关系型数据库中的数据与对象建立起映射关系,从而自动的完成数据与对象的互相转换

  1. 将输入数据(传入对象)+ SQL ——》映射为 原生 SQL

  1. 将结果集 ——》映射为 返回对象(输出对象)

ORM 把数据库映射为对象:

  • 数据库表 ——》 映射为 类

  • 记录(行数据) ——》映射为 对象

  • 字段 ——》 映射为 对象的数据

一般 ORM 框架会将数据库模型的每张表都映射为一个 Java 类,也就是说使用 MyBatis 可以像操作对象一样来操作数据库中的表,可以实现对象和数据库表之间的转换

4.1 创建数据库和数据表

 -- 创建数据库dropdatabaseifexists mycnblog;createdatabase mycnblog DEFAULTCHARACTERSET utf8mb4;​-- 使⽤数据数据use mycnblog;​-- 创建表[⽤户表]droptableifexists userinfo;createtable userinfo(id intprimarykeyauto_increment,username varchar(100) notnull,passwordvarchar(32) notnull,photo varchar(500) default'',createtime datetimedefault now(),updatetime datetimedefault now(),`state`intdefault1) defaultcharset'utf8mb4';​-- 创建⽂章表droptableifexists articleinfo;createtable articleinfo(id intprimarykeyauto_increment,title varchar(100) notnull,content textnotnull,createtime datetimedefault now(),updatetime datetimedefault now(),uid intnotnull,rcount intnotnulldefault1,`state`intdefault1)defaultcharset'utf8mb4';​-- 创建视频表droptableifexists videoinfo;createtable videoinfo(vid intprimarykey,`title`varchar(250),`url`varchar(1000),createtime datetimedefault now(),updatetime datetimedefault now(),uid int)defaultcharset'utf8mb4';​-- 添加⼀个⽤户信息INSERTINTO`mycnblog`.`userinfo` (`id`, `username`, `password`, `photo`,`createtime`, `updatetime`, `state`) VALUES(1, 'admin', 'admin', '', '2021-12-06 17:10:48', '2021-12-06 17:10:48', 1);​-- ⽂章添加测试数据insertinto articleinfo(title,content,uid)values('Java','Java正⽂',1);-- 添加视频insertinto videoinfo(vid,title,url,uid) values(1,'java title','http://www.baidu.com',1);

4.2 添加 MyBatis 相关依赖

(1)新项目添加 MyBatis 依赖

(2)老项目添加 MyBatis 依赖

4.3 配置数据库的连接信息

 # 开发环境配置文件# 配置数据库连接spring:datasource:url: jdbc:mysql://127.0.0.1:3306/mycnblog?characterEncoding=utf8username: rootpassword: 111111driver-class-name: com.mysql.cj.jdbc.Driver

4.4 配置 MyBatis 的 XML 保存路径

 # 配置 mybatis.xml 保存路径mybatis:mapper-locations: classpath:mybatis/**Mapper.xml

5. 使用 MyBatis 的操作模式操作数据库

5.1 创建实体类 & 添加 mapper 接口

(1)创建 model 文件夹中 实体类 Userinfo

 /*** model 中的实体类* @Data中包含变量的 get set toString*/@DatapublicclassUserinfo {privateintid;privateStringusername;privateStringpassword;privateStringphoto;privateStringcreatetime;privateStringupdatetime;privateintstate;}

(2)创建 mapper 文件夹 中的 UserMapper 接口

 /*** 接口加 @Mapper 后,此时这个接口就是 MyBatis interface* 参数加 @Param 后,就相当于给这个参数改了新的名字*/@MapperpublicinterfaceUserMapper {​// 根据用户 id 查询用户publicUserinfogetUserById(@Param("id") Integerid);}

5.2 创建 XML 实现上面的接口

在resources 中创建 mybatis 文件夹,在 mybatis 中创建 UserMapper.xml

 <?xmlversion="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!-- namespace 是设置要实现的接口的具体包名 + 类名--><mappernamespace="com.example.mybatisdome1.mapper.UserMapper"><selectid="getUserById"resultType="com.example.mybatisdome1.model.Userinfo">select * from userinfo where id=${id}</select></mapper>

5.3 添加 Service

创建 service 文件夹,添加服务层 UserService 类

 @ServicepublicclassUserService {​@ResourceprivateUserMapperuserMapper;​publicUserinfogetUserById(Integerid) {returnuserMapper.getUserById(id);}}

5.4 添加 Controller

创建 controller 文件夹,添加控制层 UserController 类

 // @RestController = @Controller + @ResponseBody​@RestController@RequestMapping("/user")publicclassUserController {​@AutowiredprivateUserServiceuserService;​@RequestMapping("/getuserbyid")publicUserinfogetUserById(Integerid) {if(id==null) returnnull;returnuserService.getUserById(id);}}

运行程序

5.5 开启 MyBatis SQL 打印

在 application-dev.yml 中

 # 开启 MyBatis SQL 打印logging:level:com.example.mybatisdome1: debugmybatis:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

6. MyBatis 框架交互流程

  1. 前端程序通过 Ajax 访问,Ajax 的信息到达控制器 Controller 这一层

  1. 控制器就会进行参数的校验,校验参数没问题之后,然后接下来就是将数据发送给服务层

  1. 服务层只是组织者(相当于代理,就是管理调用几个接口,进行接口的排序),接下来就是调用 Mapper

  1. 调用两个 Mapper(InterFace 进行声明,XML 进行实现),最终在实现时因为加了 @Mapper,所以 MyBatis 就会将 InterFace 和 xml 进行关联,最终会将方法中具体的执行 SQL,生成为原始的 SQL 语句,并且 MyBatis 会调用 JDBC

  1. MyBatis 是基于 JDBC 的,MyBatis 在执行时会生成 JDBC 的代码和相应 SQL,然后再通过 JDBC 的方式,调用数据库,最终将结果返回给服务层,服务层再将结果返回给控制层,最终再由控制层将结果返回给前端

http://www.hkea.cn/news/15041/

相关文章:

  • 有原型怎么做网站线上推广策划方案范文
  • java怎么做直播网站网站一般怎么推广
  • 衡水做网站推广的公司常见的网络推广方法
  • b2c电子商务网站源码南京seo推广优化
  • 建设企业网站的流程什么网站做推广比较好
  • 淄博网站制作定制网站怎么添加外链
  • 长沙网站关键词排名推广公司深圳网络推广哪家
  • 帮别人做设计的网站拉新推广一手接单平台
  • zencart网站模板如何做好精准营销
  • 网站建设业务客户来源百度收录网站提交入口
  • 深圳网站设计联系电话seo在哪学
  • 租电信服务器开网站bt kitty磁力猫
  • app网站开发多少钱怎么做推广让别人主动加我
  • 香港头条新闻百度seo优化包含哪几项
  • 做软装的网站第一站长网
  • 自贡市住房和城乡建设局网站文大侠seo博客
  • 东莞网站设计开发技能大赛兰州网络推广关键词优化
  • dede做的网站怎样去换模版谷歌搜索引擎
  • 建设网站的市场定位新野seo公司
  • 仓储服务 东莞网站建设 技术支持百度地图导航2022最新版下载
  • 做一家开发网站的公司2020最成功的网络营销
  • 城乡建设厅建设网站店铺推广方式有哪些
  • 贵州网站推广优化网站建设的基本
  • 网站建设微信营销短链接生成网址
  • 公司手机网站设计公众号软文是什么意思
  • 后盾网原创实战网站建设教程江苏网站建设推广
  • 西安手机网站建设公司排名怎么开通网站平台
  • 建设一个电影网站怎么做网上营销推广
  • wordpress使用流程学校seo推广培训班
  • flash网站模版海南百度竞价推广