初识Mybatis框架
mybatis框架 主要是对数据库进行操作的 编写sql语句 使我们对数据库的crud操作更加简洁方便!!
1.使用mybatis框架 进行第一个项目 查询数据库 并返回数据 :(简单)
(1)搭建 mybatis框架环境: 所使用的jar包
(2) 编写实体类 要与数据库中的字段对应 (我的实体类名称叫 Teacher);
- package com.hxzy.mybatis.pojo;
- import lombok.Data;
- //这里使用了lombok插件 免去了set get 方法
- @Data
- public class Teacher {
- private Integer t_id;
- private String t_name;
- private String t_address;
- }
(3).编写 sqlMapper的xml文件 (teacherMapper.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">
- <!--配置teacher的xml文件-->
- <!--
- namespace:指定该文件的的唯一标识 路径为实体类对应的全路径 名字是可以随意起名的 但最好规范
- resultType:指定返回结果的类型 如果是对象的话 需要写全类名
- parameterType :指定参数的类型
- 如果有参数的话 比如 select * from student where s_id = #{id}
- jdbc 用的是 ?号占位符 而mybatis 用的是#{里面写参数}
- -->
- <mapper namespace="Teacher">
- <select id="one_query" resultType="com.hxzy.mybatis.pojo.Teacher" parameterType="int">
- select * from teacher
- </select>
- </mapper>
(4). 编写工厂类 用来返回SqlSessionFactory对象
- package com.hxzy.mybatis.entity;
- import org.apache.ibatis.annotations.Results;
- 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.Reader;
- public class SqlSession_entity {
- private static Reader reader;
- private static SqlSessionFactory factory;
- static {
- //加载mybatis核心配置文件
- try {
- reader = Resources.getResourceAsReader("mybatis_cnfg.xml");
- }catch (Exception e){
- System.out.println(e);
- }
- factory = new SqlSessionFactoryBuilder().build(reader);
- }
//调用这个方法就会返回一个Sqlsession对象- public static SqlSession getSession(){
- return factory.openSession();
- }
- }
(5) 测试 (Test_mybatis)
- package com.hxzy.mybatis.test;
- import com.hxzy.mybatis.entity.SqlSession_entity;
- import com.hxzy.mybatis.pojo.Teacher;
- import org.apache.ibatis.session.SqlSession;
- import org.junit.Test;
- public class Test_mybatis {
- @Test
- public void test1(){
- /**
- * 普通的查询
- */
- //得到SqlSession
- SqlSession sqlSession = SqlSession_entity.getSession();
- //创建sql语句
- String sql = "Teacher.one_query";
- Teacher teacher = sqlSession.selectOne(sql);
- System.out.println(teacher);
- //关闭
- sqlSession.close();
- }
- }
初识Mybatis框架的更多相关文章
- 初识Mybatis框架,实现增删改查等操作(动态拼接和动态修改)
此第一次接触Mybatis框架确实是有点不适应,特别是刚从Hibernate框架转转型过来,那么为什么要使用Mybatis框架,Mybatis框架和Hibernate框架又有什么异同呢? 这个问题在我 ...
- 初识Mybatis框架,实现增删改查等操作
此第一次接触Mybatis框架确实是有点不适应,特别是刚从Hibernate框架转转型过来,那么为什么要使用Mybatis框架,Mybatis框架和Hibernate框架又有什么异同呢? 这个问题在我 ...
- MyBatis 框架系列之基础初识
MyBatis 框架系列之基础初识 1.什么是 MyBatis MyBatis 本是 apache 的一个开源项目 iBatis,后改名为 MyBatis,它 是一个优秀的持久层框架,对 jdbc 的 ...
- Mybatis框架中实现双向一对多关系映射
学习过Hibernate框架的伙伴们很容易就能简单的配置各种映射关系(Hibernate框架的映射关系在我的blogs中也有详细的讲解),但是在Mybatis框架中我们又如何去实现 一对多的关系映射呢 ...
- mybatis入门--初识mybatis
初识mybatis 今天,一起来说说mybits这个框架吧.这是一个持久层的框架.之前叫做ibatis.所以,在它的代码中出现ibatis这个词的时候,不要感到惊讶.不是写错了,它确实就是这个样子的. ...
- MyBatis For .NET学习- 初识MyBatis
MyBatis的框架. Introduction MyBatis本是apache的一个开源项目iBatis,2010年这个项目由 apache software foundation迁移到了googl ...
- 初识Mybatis之工程搭建
简介:MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以使用简单的 ...
- MyBatis学习01(初识MyBatis和CRUD操作实现)
1.初识MyBatis 环境说明: jdk 8 + MySQL 5.7.19 maven-3.6.1 IDEA 学习前需要掌握: JDBC MySQL Java 基础 Maven Junit 什么是M ...
- Mybatis框架的多对一关联关系(六)
一.一对多的关联映射 一对多关联查询多表数据 1接口 public interface IDeptDAO { //根据部门编号查询该部门单个查询 public Emp getEmpById(Integ ...
随机推荐
- MathExamLv2——周世元211606348,许燕婷211606338
结对编程 211606348 周世元 211606338 许燕婷 一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) P ...
- Word编写代码时输出半角引号
工具--自动更正选项--键入时自动套用格式,去掉直引号替换为弯引号.
- 数组/指针/const/字符串常量的使用传值问题
#include<stdio.h> #include<string.h> int main() { ] = "abcd"; //常指针a指向字符串常量&qu ...
- C语言文件实现学生成绩管理
C语言实现学生成绩管理 项目简介 用C语言的链表及文件操作实现学生成绩的管理,实现主要的添加.修改.删除.查询的主要功能,并在程序关闭时将数据存储在二进制的文件中并加密.下一次打开程序,先解密二进制文 ...
- SpringBoot配置Shiro时@RequiresRoles不起作用
在SpringBoot中配置Shiro,结果@RequiresRoles.@RequiresPermissions等注解都无效 解决方法: 在ShiroConfiguration中注入开启支持aop. ...
- centos7 ntp服务器配置
一.ntp服务是什么 1. 定义 NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议. 2. 发展 首次记载在Internet Enginee ...
- WSTMart商城系统数据字典
欢迎来到WSTMart官网 开源多用户商城 QQ交流群: 返回首页|返回首页| 开发手册 | 数据库字典 | 授权查询 | 授权用户登录 | 官方微信扫一扫 x QQ客服 服务热线 020-852 ...
- [mongoDB] mongoDb
mongodb memcached redis kv数据库(key/value) mongodb 文档数据库,存储的是文档(Bson->json的二进制化). 特点:内部执行引擎为 ...
- python 3 print function
if episode % 50 == 0: print('Episode {} Total Reward: {} counter: {}'.format(episode,G,counter))
- Spring MVC之RequestMappingHandlerAdapter初始化
RequestMappingHandlerAdapter基于注解的处理器适配器,目的是用来执行handler,同时返回modelAndView给前端控制器,这块个人感觉是spring mvc的核心了, ...