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

大连建设教育网站seo排名推广

大连建设教育网站,seo排名推广,怎么样做美术招生信息网站,免费软件是怎么盈利的文章目录 MyBatis基本概述什么是框架三层架构&MyBatis位于哪一层关于ORM思想 第一个MyBatis程序MyBatis中文网添加MySQL和MyBatis相关依赖把打包方式设置为jar配置核心配置文件mybatis-config.xml配置XxxMapper.xml在mybatis-config.xml中配置XxxMapper.xml使用SqlSession对…

文章目录

  • MyBatis基本概述
    • 什么是框架
    • 三层架构&MyBatis位于哪一层
    • 关于ORM思想
  • 第一个MyBatis程序
    • MyBatis中文网
    • 添加MySQL和MyBatis相关依赖
    • 把打包方式设置为jar
    • 配置核心配置文件mybatis-config.xml
    • 配置XxxMapper.xml
    • 在mybatis-config.xml中配置XxxMapper.xml
    • 使用SqlSession对象操作数据库

MyBatis基本概述

什么是框架

  • 我们通常在文献中看到的framework这种单词我们称之为框架
  • Java常用的框架如下
    Spring, SpringMVC, MyBatis(SSM), SpringBoot, SpringCloud(微服务相关)
  • 框架本质上就是对通用代码的封装, 作为我们Java程序员, 我们不需要特别在意底层的实现原理, 而是面对具体的业务进行业务代码的编写即可(所有的技术最终都要服务于业务)
  • 框架通常都以jar包的形式存在(包含各种class文件以及配置文件)

三层架构&MyBatis位于哪一层

关于三层架构的内容(本来应该在JavaWeb那一块进行讲述, 但是放弃了…)

在这里插入图片描述

对于我们Java后端来说, 我们在意后端的三个分层即可

  • 表现层(UI): 直接和前端交互(接收前端的ajkx请求, 返回json给前端)
  • 业务逻辑层(BLL): 根据表现层的请求获取持久层数据, 然后进行业务处理
  • 持久层(DAL): 直接和数据库进行交互, 返还数据给业务逻辑层

显然, 我们的MyBatis框架就位于持久层, MyBatis并不是唯一的持久层框架, 还有好多的持久层框架

  • MyBatis
  • Spring Data
  • Hibernate
  • JOOQ
  • Guzz

关于ORM思想

我们把这个单词的全程拼写出来

  • Object(对象) , Relational(关系) , Mapping(映射)

对象(Java中的对象)
关系(关系型数据库)
映射(数据库数据和Java对象的对应关系)

比如我们创建一个学生类和一张学生表

在这里插入图片描述

可以发现, 使用ORM思想, 就可以做到Java对象和数据库中的数据是一一对应的…

  • MyBatis就是一个ORM框架, 但是是半自动的(SQL还需要自己编写)

第一个MyBatis程序

MyBatis中文网

其实是MyBatis的官方文档, 我们下面是汉化的网址(真正的MyBatis以及移交到github上了)

MyBatis中文网

我们直接使用maven进行管理就行了(别自己下包然后创建了)


添加MySQL和MyBatis相关依赖

		<!--mysql驱动依赖--><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><version>8.0.33</version></dependency><!--mybatis相关依赖, 第一次加载需要从国内的镜像源下载--><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.13</version></dependency>

把打包方式设置为jar

pom.xml配置文件中设置packaging标签

在这里插入图片描述


配置核心配置文件mybatis-config.xml

注意, 这里建议配置到resources目录下, 这样可以保证加载的时候使用类的根路径下进行加载(在resources目录下的文件都是在类的根路径下)

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration><environments default="development"><environment id="development"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="com.mysql.cj.jdbc.Driver"/><property name="url" value="jdbc:mysql://127.0.0.1:3306/java113mysql"/><property name="username" value="root"/><property name="password" value="Aabb1122*"/></dataSource></environment></environments><mappers><!--在这里添加相关的映射信息--></mappers>
</configuration>

注意, 上面的这个文件, 建议一个数据库配置一个这样的文件


配置XxxMapper.xml

这个文件建议一张数据库表配置一个xml文件, 这里面存放的就是我们的关于这张表的SQL语句

我们下面的sql进行了简单的配置(我们有一个汽车信息表), 每一个sql语句都有自己的id, 这就是这条SQL语句的唯一标识符…

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.mybatis.example.BlogMapper"><!--这里才是编写sql语句的主场所...--><insert id="car01">insert into car(id, brand, production_date, type, car_name, price)values (null, '智界', '2025-1-12', 'suv', '尊界08', 89.99);</insert>
</mapper>

在mybatis-config.xml中配置XxxMapper.xml

往上翻我们的配置mybatis-config.xml中的完整信息, 看到一个mappers标签, 我们把我们的CarMapper.xml配置到mybatis-config.xml中, 这样相当于我们的核心配置文件中可以检索到这个mapper映射关系…

	<mappers><!--在这里添加相关的映射信息--><mapper resource="CarMapper.xml"/></mappers>

使用SqlSession对象操作数据库

使用SqlSession对象的流程

在这里插入图片描述

流程就是这样, 我们简单测试一下

package com.qnn.mybatis01;import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;import java.io.IOException;
import java.io.InputStream;public class Demo2 {// 测试MyBatis程序public static void main(String[] args) throws IOException {// 1. 获取SqlSessionFactoryBuilder对象SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();// 2. 构造SqlSessionFactory对象, builder方法需要一个InputStream对象(mybatis-config.xml文件)// 两种方式获取这个InputStream对象(本质上是一种方法, 都是类的根路径下加载信息)InputStream resourceAsStream = Resources.getResourceAsStream("mybatis.xml");InputStream resourceAsStream1 = ClassLoader.getSystemClassLoader().getResourceAsStream("mybatis-config.xml");SqlSessionFactory sqlSessionFactory1 = sqlSessionFactoryBuilder.build(resourceAsStream1);SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(resourceAsStream);// 3. 构造SqlSession对象SqlSession sqlSession = sqlSessionFactory.openSession();SqlSession sqlSession1 = sqlSessionFactory1.openSession();}
}
http://www.dtcms.com/wzjs/411998.html

相关文章:

  • 网站建设 话术网络软文范文
  • 给女朋友做的网站源码建网站公司哪里好
  • 新云网站模版网站怎么建立
  • 什么网站专门学做湖北菜整合营销传播方案案例
  • 四川省建设厅申报网站公司快速建站
  • 南宁专业网站建设公司网页设计与制作软件有哪些
  • 会所网站建设如何进行搜索引擎营销
  • 青岛开发区 网站建设优化的含义
  • 专门做拼团的网站电商培训机构靠谱吗
  • wordpress文章中显示打赏汕头自动seo
  • 专业建站公司哪家有名深圳网站建设开发公司
  • 外贸网站建设系统互联网网站
  • 中国南昌企业网站制作软文推广产品
  • 民宿网站开发的开题报告网站怎么接广告
  • 我们一起做网站公司网站制作需要多少钱
  • 网站附件做外链打开百度一下
  • 有帮忙做阿里巴巴网站的吗推广普通话内容100字
  • 做网站项目的意义ppt介绍北京seo营销公司
  • 2003系统做网站优化防控措施
  • 怎么做淘客手机网站谷歌广告投放步骤
  • 温州网站制作设计推广引流平台
  • 兼职游戏网站怎么做国外媒体报道
  • 南浦电商网站建设天津seo优化排名
  • 深圳定制网站建设seo怎么做优化计划
  • 上海网站建设与设计公司最近几天新闻大事
  • 可信网站认证不在有用吗竞价推广托管公司价格
  • 哪里有做兼职的网站搜索引擎哪个最好用
  • dedecms导航网站模板站长工具备案查询
  • 建网站的地址无屏蔽搜索引擎
  • 建设银行网站用什么字体seo公司系统