`
koudailidexiaolong
  • 浏览: 96221 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论
阅读更多

mybatis初体验

1.创建一个Web项目或者创建一个 控制台 应用程序 做一个简单的增删改查操作

首先看项目结构图

mybatis(一) - 口袋里的小龙 - 口袋里的小龙
 

mybatis的配置文件configuration.xml此文件作为mybatis的配置文件

<?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>
<!-- 加载数据源配置文件 -->
<properties resource="jdbc.properties"></properties>
<!-- 设置类型别名 -->
<typeAliases>
<typeAlias alias="BookInfo" type="com.dragon.entity.BookInfo"/>
</typeAliases>
<!-- 配置开发环境 -->
<environments default="development">
<!-- 设置配置环境为开发环境 -->
<environment id="development">
<!-- 事务管理 -->
<transactionManager type="JDBC"/>

<!-- 数据源配置 -->
<dataSource type="POOLED">
<!-- 设置数据库驱动 -->
<property name="driver" value="${driver}"/>
<!-- 设置连接地址 -->
<property name="url" value="${url}"/>
<!-- 设置登录名 -->
<property name="username" value="${username}"/>
<!-- 设置登录密码 -->
<property name="password" value="${password}"/>
</dataSource>

</environment>

</environments>
<!-- 加入映射文件 的类-->
<mappers>
<mapper resource="com/dragon/entity/BookInfo.xml"/>
</mappers>

</configuration>

jdbc.properties配置文件

driver=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@127.0.0.1:1521:orcl
username=system
password=orcl

book实体类

package com.dragon.entity;

import java.io.Serializable;

public class BookInfo implements Serializable{
public BookInfo() {
super();
}
public BookInfo(int bookId, String bookTitle, Double bookPrice) {
super();
book_id = bookId;
book_title = bookTitle;
book_price = bookPrice;
}
/**
*
*/
private static final long serialVersionUID = 1L;
private int book_id;
private String book_title;
private Double book_price;
public int getBook_id() {
return book_id;
}
public void setBook_id(int bookId) {
book_id = bookId;
}
public String getBook_title() {
return book_title;
}
public void setBook_title(String bookTitle) {
book_title = bookTitle;
}
public Double getBook_price() {
return book_price;
}
public void setBook_price(Double bookPrice) {
book_price = bookPrice;
}

}

bookMapper配置文件    BookInfo.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.dragon.entity.BookInfo" >
<!-- 创建insert parameterType 参数为设置传入类型 insert没有返回类型-->
<insert id="inserts" parameterType="com.dragon.entity.BookInfo" >
insert into 
BookInfo(book_id,book_title,book_price) 
values
(#{book_id},#{book_title},#{book_price})
</insert> 
<!-- 创建查询语句 parameterType 为设置传入参数 -->
<select id="get" parameterType="com.dragon.entity.BookInfo" resultType="BookInfo">
select * from 
 BookInfo
</select>
<!-- 根据编号查询 -->

<select id="selById" parameterType="int" resultType="BookInfo">
SELECT * FROM 
BookInfo 
WHERE 
book_id = #{book_id}
</select>
<!-- 根据编号删除 -->
<delete id="deleteBook" parameterType="int">
DELETE FROM 
BookInfo 
WHERE 
book_id = #{book_id}
</delete>
<!-- 更新 -->
<update id="updateBook" parameterType="com.dragon.entity.BookInfo">
UPDATE 
BookInfo 
SET 
book_title = #{book_title},
book_price = #{book_price} 
WHERE 
book_id = #{book_id}
</update>
</mapper>
控制台测试

 

package com.dragon.test;
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.dragon.entity.BookInfo;
public class Test {
/**
 * @param args
 */
@SuppressWarnings("unchecked")
public static void main(String[] args) {
// TODO Auto-generated method stub
//定义文件 文件名称为mybatis的配置文件的名称
String resource = "configuration.xml"; 
//创建文件输入流
InputStream stream;
try {
stream = Resources.getResourceAsStream(resource);
//创建sqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(stream); 
//打开session对象
SqlSession session = sqlSessionFactory.openSession();
/////////////////查全部//////////////////
//调用mapper文件中的id为get的sql方法
List<BookInfo> list = session.selectList("com.dragon.entity.BookInfo.get");
System.out.println("图书的信息是:\n编号\t名称\t价格");
for (BookInfo bookInfo : list) {
System.out.println(bookInfo.getBook_id()+"\t"+bookInfo.getBook_title()+"\t"+bookInfo.getBook_price());
}
System.out.println("---------------------------------------------------------------------");
/////////////根据编号查询
BookInfo bookInfo = (BookInfo)session.selectOne("com.dragon.entity.BookInfo.selById", 1);
System.out.println("图书的信息是:\n编号\t名称\t价格");
System.out.println(bookInfo.getBook_id()+"\t"+bookInfo.getBook_title()+"\t"+bookInfo.getBook_price());
/////////////新增
int result =session.insert("com.dragon.entity.BookInfo.inserts", new BookInfo(4,"net培训教程3",78.53));
//提交事务
session.commit();
///////插入成功则返回1 
System.out.println(result);
////////删除
int delResult = session.delete("com.dragon.entity.BookInfo.deleteBook", 3);
session.commit();
////删除成功返回1
System.out.println(delResult);
//////更新
int updateResult = session.update("com.dragon.entity.BookInfo.updateBook", new BookInfo(1,"net培训教程",78.53) );
session.commit();
System.out.println(updateResult);


} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
一个简单的jdbc对mybatis的操作  希望能够对您有所帮助!

<wbr></wbr>


数据库

CREATE TABLE BookInfo (
book_id number(5) PRIMARY key not null,
book_title nvarchar2(50) ,
book_price number(6,2)
);
insert into BookInfo values (1,'java',54.8);
insert into BookInfo values(2,'C#编程',66);
commit;
select * from BookInfo;
DROP TABLE BookInfo;


分享到:
评论

相关推荐

    mybatis一对多的查询方法

    mybatis一对多的查询方法详解! mybatis一对多的查询方法详解! mybatis一对多的查询方法详解! mybatis一对多的查询方法详解!

    Mybatis一对一增删修改查完整项目

    Mybatis一对一增删修改查完整项目,是基于人与身份证的实体类,project可导入idea,建设mysql的表,改一下mysql连接就能直接运行,Mybatis一对一增删修改查完整项目,Mybatis一对一增删修改查完整项目

    【MyBatis学习笔记六】——MyBatis一对一,一对多,多对一,多对多.zip

    【MyBatis学习笔记六】——MyBatis一对一,一对多,多对一,多对多.zip博客地址:https://blog.csdn.net/weixin_43817709/article/details/117537580

    Spring MVC 整合Mybatis详解,SSM框架的配置搭建,涉及Mybatis一对多的插入和查询,同时也涉及到一些简单的文件上传和下载.

    本项目实用Spring + Spring MVC + Mybatis。数据库实用Mysql数据库 项目主要涉及,SSM框架的配置搭建,涉及Mybatis一对多的插入和查询,同时也涉及到一些简单的文件上传和下载.

    mybatis一级二级缓存流程图.drawio

    mybatis一级二级缓存流程图.drawio mybatis一级二级缓存流程图.drawio mybatis一级二级缓存流程图.drawio mybatis一级二级缓存流程图.drawio

    Mybatis一级、二级缓存介绍.zip

    Mybatis一级、二级缓存介绍.zip

    MyBatis一级缓存避坑完全指南

    MyBatis一级缓存避坑完全指南 MyBatis一级缓存是MyBatis框架中的一种缓存机制,用于提高数据库查询的性能。缓存的作用域为一次会话中,缓存随着会话(SqlSession)的创建而产生,随着会话结束而释放。在一次会话中,...

    Mybatis实现关联查询一对一和一对多实现

    Mybatis实现关联查询一对一和一对多实现,具体效果看博文 http://blog.csdn.net/evankaka/article/details/45674101

    mybatis3_spring3整合

    本示例"mybatis3_spring3整合"正是针对这一主题,通过使用MyBatis 3.0.2和Spring 3.0.4版本来展示如何实现两者的无缝集成,并且重点讲解了如何配置MyBatis中的一对一和一对多的关系映射。 首先,MyBatis是一个优秀...

    mybatis关联查询问题(一对多、多对一)

    在IT行业中,Mybatis是一个广泛使用的轻量级持久层框架,它允许开发者通过XML或注解方式编写SQL语句,实现灵活的数据库操作。在这个场景中,"mybatis关联查询问题(一对多、多对一)"是核心关注点,这涉及到数据库设计...

    【MyBatis源码全面解析】MyBatis一二级缓存介绍

    MyBatis一二级缓存介绍 MyBatis是一款流行的Java持久层框架,它提供了一种简洁的方式来访问和操作数据库。MyBatis中的缓存机制是为了提高数据库操作的性能,减少数据库查询的次数。下面将详细介绍MyBatis的一二级...

    Spring SpringMvc Mybatis 一个简单的Demo

    此文件是一个简单的ssi,也就是spring+springmvc+mybatis的例子,简单的增删改查,数据库很简单,看看entity就能知道.上面还加了一些前端的JQ,和一个Dialog框架,是学习的好例子。不过有点大,主要是里面的lib包太大,...

    mybatis插件最新破解版,没有之一,亲测

    1.下载插件 插件下载完毕,存放指定位置,文件名默认应该是:mybatis-plus.jar 2.打开Intellij idea工具,打开菜单 File --&gt; settings 选择 Plugs,点击...3.插件安装后,打开settings,会有Mybatis一项,大家可以看看

    Mybatis案例一所用建表语句

    在IT行业中,Mybatis是一个广泛使用的持久层框架,它提供了灵活的SQL映射功能和简单的对象映射,使得Java开发者可以方便地操作数据库。本文将深入探讨Mybatis的基础知识,特别是针对“Mybatis案例一所用建表语句”,...

    第一个mybatis程序 mybatis入门

    【标题】"第一个mybatis程序 mybatis入门" 涉及到的是MyBatis框架的基础使用,这是一个轻量级的Java持久层框架,它简化了与数据库交互的过程,提供了强大的映射功能。以下是对MyBatis入门的详细解析: 1. **MyBatis...

    mybatis demo mybatis 实例

    MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs...

    第一个Mybatis程序

    本教程将带你一步步走进Mybatis的世界,通过“第一个Mybatis程序”的实例学习其基本概念和操作流程。 一、Mybatis简介 Mybatis是由Clinton Begin创建的开源项目,它是一个基于Java的持久层框架,专注于简化数据库...

    MyBatis 官方笔记 + MyBatis 3.5.10 官方英文文档

    MyBatis 是一个优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解进行配置和原始映射,将接口和 ...

    mybatis-3-mybatis-3.2.6

    MyBatis是一个优秀的Java持久层框架,它支持定制化SQL、存储过程以及高级映射。在深入探讨MyBatis 3.2.6版本的源码之前,我们首先需要了解MyBatis的基本概念和功能。 MyBatis的核心部分主要包括SqlSessionFactory、...

Global site tag (gtag.js) - Google Analytics