MyBatis基础01之入门

mybatis基础01(Mybatis入门程序) Mybatis入门程序(必须亲自动手写上一遍) 1.创建表: CREATETABLE`user`( `uid`int(11)NOTNULLAUTO_INCREMENT, `uname`varchar(32)DEFAULTNULL, `uphone`varchar(32)DEFAULTNULL, PRIMARYKEY(`uid`) )ENGINE=InnoDBAUTO_INCREMENT=4DEFAUL... 阅读详情

入门

平时我们都用JDBC访问数据库,除了需要自己写SQL之外,还必须操作Connection, Statment, ResultSet 这些其实只是手段的辅助类。 不仅如此,访问不同的表,还会写很多雷同的代码,显得繁琐和枯燥。

那么用了Mybatis之后,只需要自己提供SQL语句,其他的工作,诸如建立连接,Statement, JDBC相关异常处理等等都交给Mybatis去做了,那些重复性的工作Mybatis也给做掉了,我们只需要关注在增删改查等操作层面上,而把技术细节都封装在了我们看不见的地方

  1. 创建数据库

    create datebase how2java;
    create table category_(
    id int(11)  not null auto_increment,
    name varchar(32) default null,
    )
    
    insert into category_ values(null,category1);
    insert into category_ values(null,category2);
    
  2. 创建项目
    - 创建java项目 mybatis(注意为java项目,不是web项目)
    - mybatis下新建lib目录
    - 导入jar包 mysql连接jar包和MyBatis的jar包,buildpath

  3. 创建实体类

    category.java

                package com.how2java.pojo
    
                public class category{
                    private int id;
                    private String name;
                    ....
    
  4. 配置mybatis-config.xml

    在src目录下创建mybatis的主配置文件mybatis-config.xml主要是提供数据库的驱动,名称,数据库用户名和密码,编码方式

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    /*别名,自动扫描com.how2java.pojo下的类型,使得在后续配置文件  
    Category.xml中使用resultType的时候,可以直接使用Category,  
    而不必写全com.how2java.pojo.Category*/
    <typeAliases>
      <package name="com.how2java.pojo"/>
    </typeAliases>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver"  
                    value="com.mysql.jdbc.Driver"/>
               <property name="url"   
                 value="jdbc:mysql://localhost:3306/how2java?  
                 characterEncoding=UTF-8"/>
                <property name="username" value="root"/>
                <property name="password" value="admin"/>
            </dataSource>
        </environment>
    </environments>
    /*映射Category.xml*/
    <mappers>
        <mapper resource="com/how2java/pojo/Category.xml"/>
    </mappers>
</configuration>

5 . 配置Category.xml
在包com.how2java.pojo下,新建文件Category.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
    PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
    "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

    <mapper namespace="com.how2java.pojo">
    /*表示命名空间是com.how2java.pojo,在后续调用sql语句的时候,  
    会用到它
里面定义了一条sql语句*/
        <select id="listCategory" resultType="Category">
        /*id为标识以供后续使用, resultType为SQL语句返回的对象  
        与其相关,这里本应该使用的是 com.how2java.pojo.Category,  
         但是因为上一步配置了别名,所以直接使用Category就行了 */
            select * from   category_     
        </select>
    </mapper>

6 .测试类TestMyBatis.java

 package com.how2java;

import java.io.IOException;
import java.io.InputStream;
import java.util.List;

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 com.how2java.pojo.Category;

public class TestMybatis {

    public static void main(String[] args) throws IOException {
        String resource = "mybatis-config.xml";
        InputStream inputStream =   
            Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory =  
            new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession session=sqlSessionFactory.openSession();
        //获得session

        List<Category> cs=session.selectList("listCategory");
        //listCategory为category.xml中设置的id
        for (Category c : cs) {
            System.out.println(c.getName());
            //遍历集合得到category
        }

    }
}

查询结果为
category1
category2

总结:
1. 应用程序找Mybatis要数据
2. mbatis从数据库中找来数据
- 2.1 通过mybatis-config.xml 定位哪个数据库
- 2.2 通过Category.xml执行对应的select语句
- 2.3 基于Catgory.xml把返回的数据库记录封装在Category对象中
- 2.4 把多个Category对象装在一个Category集合中
3. 返回一个Category集合
MyBatis

14-Mybatis01 基础入门-mybatis 环境搭建和基本使用 Maven骨架搭建 然后再次使用 TestMybatisFirst.java 测试 注意测试 看一下 mybatis.xml mapper 标签配置改为。mybatis配置加载 jdbc.properties。在 测试 Maven 的 test 中测试Junit。package 和 resource 分别尝试。还可以输出在数据库,这里提一嘴,自行搜索。StudentMapper接口。在项目中创建文件夹如下。 阅读详情

相关推荐

CAD的.dwg文件导入 ArcGIS:高程分析、坡度分析、坡向分析

CAD的.dwg文件导入 ArcGIS,再进行高程分析、坡度分析、坡向分析。

My_Echo_yM的博客 7236

MyBatis基础知识总结

本文对于Mybatis的来源及优势做了阐述,重点对于Mybatis的实例做了大量的演示操作

zhaolk的博客 1122

达梦数据库JDBC连接池断开自动重连设置

一、场景 在网络状况不是非常良好,经常会出现暂时性的拥塞或者断开的情况,而且当我们重启数据库时也会发生类似的情况。所以需要配置中间件的连接池来实现连接测试以及自动重连,通过重新配置连接池,成功解决了这个问题。下面会给出一份数据源配置参数详单和一份推荐的数据源配置项。 二、连接池配置参数 1. initialSize:连接池启动时创建的初始化连接数量 2. maxActive:连接池中可同时连接的最大的连接数 3. maxIdle:连接池中最大的空闲的连接数,超过的空闲连接将被释放,如果设置为负

lilv1989的博客 7235

Mybatis基础知识

Mybatis基础知识

m0_65260253的博客 1051

第七章-分布式搜索引擎-ES:全文查询、分词查询、精确查询、地理坐标查询、组合查询(bool、funtion_score)以及RestApi

111

weixin_36580930的博客 1632

4、教育数据挖掘:公共数据集与研究进展

本文综述了教育数据挖掘(EDM)领域的研究进展与公共数据集应用情况。从2013年至2020年,EDM在电子学习系统、大规模开放在线课程(MOOC)等方面快速发展,涵盖了多种研究任务、工具与方法。文章梳理了UCI、Mendeley、DataShop等平台的公开数据集,分析了其特点与局限性,并介绍了KDD Cup、Kaggle等竞赛中的教育数据集及其评价指标。同时,探讨了多模态、心理行为等特色数据集的应用场景。最后指出当前EDM面临的主要挑战是缺乏系统性数据集综述、数据预处理复杂及可重复性不足,呼吁加强数据共享

rgv2345678的博客 171

Mybatis基础详解

MyBatis基础

weixin_49399972的博客 302

2026年中科曙光嵌入式软件岗位面试题库(附参考答案)

嵌入式系统与C/C++基础摘要 硬件与外设总线 SPI总线:高速全双工同步串行接口,采用SCLK、MOSI、MISO和CS信号线,支持一主多从架构,典型应用于Flash存储、传感器等高速外设。 I2C总线:两线制低速串行总线(SDA/SCL),支持多主多从,需注意地址冲突和信号完整性。 时序约束:包括建立时间、保持时间、时钟周期等,是保障电路稳定运行的关键。 AD转换:将模拟信号转换为数字信号,应用于传感器采集、音频处理等场景。 PC寄存器:存储下一条指令地址,控制程序执行流,在跳转和中断时自动更新。 C/

Open 69

mybatis基础学习(初)

MyBatis 是一款优秀的持久层框架;它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了。

QiAn的博客 4374

安卓讲课笔记1.1 安装Android Studio

1. 能安装配置Android Studio; 2. 能创建安卓虚拟机(AVD); 3. 能创建简单安卓应用

howard2005的专栏 3363

大语言模型应用指南:幻觉和偏见问题

大语言模型应用指南:幻觉和偏见问题 1. 背景介绍 1.1 大语言模型的发展历程 1.1.1 早期的语言模型 1.1.2 Tr

AI天才研究院 958

MyBatis基础

1、谈谈你对 MyBatis 的理解? 1、Mybatis是一个半ORM(对象关系映射)框架,它内部封装了 JDBC,开发时只需要关注 SQL 语句本身,不需要花费精力去处理加载驱动、创建连接、创建 Statement 等繁杂的过程。程序员直接编写原生态 SQL,可以严格控制 SQL 执行性能,灵活度高。 2、MyBatis 可以使用 XML 或注解来配置和映射原生信息,将 POJO 映射成数据库中的记录,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 3、通过 XML 文件或注解的方式将要

java123456111的博客 2539

零基础学simulink仿真建模--使用Simulink来构建一个混合动力无人机中燃料电池与锂电池协同控制的仿真模型

延长飞行时间:燃料电池的能量密度高于锂电池,适合长时间稳定供电。提高功率密度:锂电池能够快速响应瞬时高功率需求,比如起飞和加速阶段。优化能源管理:通过有效的能量管理系统,可以根据实际需求动态调整燃料电池和锂电池的工作状态,从而提高整体效率。通过上述步骤,我们简要介绍了如何基于Simulink实现混合动力无人机中燃料电池与锂电池协同控制的仿真模型。

amy_mhd的博客 189

【Mybatis学习01】Mybatis基础入门操作

1. Mybatis简介 mybatis 是一个优秀的基于java的持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。 mybatis通过xml或注解的方式将要执行的各种statement配置起来,并通过java对象和statement中sql的动态参数进行映射生成最终执行的sql语句。 最后mybatis框架执行sql并将结果映射为java对象并返回。采用ORM(Object Relational Mappi

一个正在努力学习的iter 1114

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

MyBatis复习day01基础入门

MyBatis 原始JDBC操作 // 注册驱动 Class.forName("com.mysql.jdbc.Driver"); // 获得连接 url user root Connection connection = DriverManager.getConnection("jdbc:mysql:///test","root","password"); // 获得 statement statement与Prepare

lxzGood的博客 548

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

SSM01_Mybatis基础入门

Mybatis学习 框架概述 什么是框架 应用方面来说,框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法 目的方面来说,框架是可被应用开发者定制的应用骨架。 简而言之,框架其实就是某种应用的半成品,就是一组组件,供你选用完成你自己的系统。简单说就是使用别 人搭好的舞台,你来做表演。而且,框架一般是成熟的,不断升级的软件。 框架要解决的问题 框架...

SeafyLiang的博客 318

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

MyBatis--01--基础入门

MyBatis入门案例 1. 创建user表 CREATE TABLE `user` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `username` VARCHAR(32) NOT NULL COMMENT '用户名称', `birthday` DATETIME DEFAULT NULL COMMENT '生日', `sex` CHAR(1) DEFAULT NULL COMMENT '性别',`user``user` `address` VARCH

myjess’s blog 201

MyBatis 01 -持久层优秀框架MyBatis基础入门

1 mybatis引入 https://mybatis.org/mybatis-3 MyBatis中文戳这里 1.1 框架 框架软件的半成品,解决了软件开发过程当中的普适性问题,从而简化了开发步骤,提供了开发的效率。 1.2 ORM框架 ORM(Object Relational Mapping)对象关系映射,将程序中的一个对象与表中的一行数据一一对应。 ORM框架提供了持久化类与表的映射关系,在运行时参照映射文件的信息,把对象持久化到数据库中。 1.3 使用JDBC完成ORM操作的缺点

yinying293的博客 686

Mybatis01_基础详细入门案例

mybatis的概括 它封装了jdbc操作的很多细节,使开发者只需要关注sql语句的本身,而无需关注注册驱动,创建连接等复杂的过程。 它使用了ORM思想实现了结果集的封装, 1. ORM:Object Relational Mapping 对象的关系映射 2. 简单来说:就是把数据库和实体类的属性对应起来, 让我们可以 操作实体类就实现操作数据库表 mybatis的开发前的准备 首先要在官网上现下载mybatis: https://github.com/mybatis/mybatis-3/release

小王学java 207

Mybatis学习-day01基础入门

0Mybatis介绍 Mybatis是一个优秀的持久层框架,对jdbc操作数据库的过程进行封装,开发者只需要关注SQL语句本身,不需要花费精力去处理注册驱动、创建connection、创建Statement、手动设置参数、结果集检索等繁杂的过程代码。 Mybatis通过XML或注解的方式将要执行的statement(statement、preparedstatement、callable...

liyunfei456的博客 209

【MyBatis基础】(01)- 介绍与入门

文章目录1、MyBatis是什么?2、MyBatis的由来3、ORM 框架与MyBatis4、简单的MyBatis例子 Mybatis参考网址:http://www.mybatis.org/mybatis-3/zh/index.html Github源码地址:https://github.com/mybatis/mybatis-3 1、MyBatis是什么? MyBatis 是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的JDBC代码和手动设置参数以及获

J.O.老弟 460

mybatis--基础--01--简介和入门

持久层框架。支持自定义SQL、存储过程以及高级映射。免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。通过简单的XML或注解来配置和映射原始类型、接口和JavaPOJO(实体对象)为数据库中的记录。

zhou920786312的博客 299

mybatis-day01-自定义框架-基础入门

目录 一、今日内容 二、框架的介绍 1、什么是框架 2、框架能解决什么问题 3、三层架构中常用的框架 三、mybatis框架的介绍 1、jdbc中的代码 创建数据库: 新建maven工程,导入junit和mysql驱动包 编写javabean和测试类 小结:原生jdbc流程: 2、jdbc代码中的问题 四、自定义mybatis框架 1、主要设计模式 2、流程图(注意下...

树叶子的博客 762

MyBatis快速入门01(增删改查基础使用)

MyBatis入门目录前提一、MyBatis简介1、官方简介2、特点二、使用mybatis对数据库增删改查1、环境配置2、第一个mybatis程序(查询)3、增删改查三、mybatis配置说明 前提 1、了解数据库、JDBC、maven等基础知识。 2、本文用idea,maven来说明。 一、MyBatis简介 1、官方简介 MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以

m0_53208432的博客 167

[3-01-04].第03节:MyBatis基础 - 完善搭建的项目入门环境

[3-01-04].第03节:MyBatis基础 - 完善搭建的项目入门环境

F-T-er 627

2024年最全MyBatis【源码探究 01】mapper(1),网络安全零基础入门

最近遍览了各种网络安全类的文章,内容参差不齐,其中不伐有大佬倾力教学,也有各种不良机构浑水摸鱼,在收到几条私信,发现大家对一套完整的系统的网络安全从学习路线到学习资料,甚至是工具有着不小的需求。相比起繁琐的文字,还是生动的视频教程更加适合零基础的同学们学习,这里也是整理了一份与上述学习路线一一对应的网络安全视频教程。当然,当你入门之后,仅仅是视频教程已经不能满足你的需求了,你肯定需要学习各种工具的使用以及大量的实战项目,这里也分享一份。感觉不是的,我们在编程的时候,对数值类型值的判断本身就不应该使用。

2401_84300859的博客 506
上一篇: 单例模式
下一篇: MyBatis基础02之CRUD(增删改查)
Young-zhou
博客等级 码龄10年 10粉丝 49原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值