mybatis 的简单使用

须要用到的包:(这里仅仅是当中一个版本号。其它的百度)

mysql-connector-java-5.1.6-bin

mybatis-3.2.2

先看项目文件夹:

配置文件mybatisconfig.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>
	<!-- 用XML映射的时候必须配此项!

指定mappers里面的返回值相应的实体类 -->
	<!-- <typeAliases>
        <typeAlias alias="User" type="com.miquan.mybatis.bean.User"/>
    </typeAliases> -->
    <!-- JDBC配置 -->
	<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/weixinface"/>
				<property name="username" value="root"/>
				<property name="password" value=""/>
			</dataSource>
		</environment>
	</environments>
	<!-- mappers,每一个实体类相应着一个xml -->
	<mappers>
		<mapper resource="com/miquan/mybatis/bean/User.xml"/>
	</mappers>
</configuration>

实体类User.java:

package com.miquan.mybatis.bean;

public class User {
	private int id;
	private String userName;
	private String password;

	public User(int id, String userName, String password) {
		super();
		this.id = id;
		this.userName = userName;
		this.password = password;
	}
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
}

User.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">
<!-- namespace相应着接口类 -->
<mapper namespace="com.miquan.mybatis.inter.IUserOperation">
	<!-- <select id="selectById" parameterType="int" resultType="User">
		select * from User where id = #{id}
	</select> -->
</mapper>

IUserOperation.java:

package com.miquan.mybatis.inter;

import java.util.List;

import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import com.miquan.mybatis.bean.User;

public interface IUserOperation {
	@Select("select * from User where id = #{id}")
	public User selectById(int id);

	@Select("select * from User where userName = #{userName}")
	public List<User> selectUsers(String userName);

	@Insert("insert into User values(null, #{userName}, #{password})")
	public boolean addUser(User user); 

	@Delete("delete from User where id = #{id}")
	public boolean delUser(int id);

	@Update("update User "
			+ "set userName = #{userName}, "
				+ "password = #{password} "
			+ "where id = #{id}")
	public boolean updateUser(User user);
}

注意:此处接口不支持多态。

(不知道为什么。用着就是不能够。

。。方法名不能一样)

最后进行測试:Test.java:

package com.miquan.mybatis.test;

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.miquan.mybatis.bean.User;
import com.miquan.mybatis.inter.IUserOperation;

public class Test {
	static SqlSession session;

	public static void main(String[] args) {
		try {
			//获取session
			InputStream is = Resources.getResourceAsStream("mybatisconfig.xml");
			SqlSessionFactory sqlSessionFactory =
					new SqlSessionFactoryBuilder().build(is);
			session = sqlSessionFactory.openSession();

			//XML配置相应使用方法
//			User user = session.selectOne("com.miquan.mybatis.bean.UserDB.selectById", 1);
//			System.out.println(user.toString());

			//接口调使用方法
			//////注意:insert、delete和update方法调用之后必须commit才干真正的改变数据
			IUserOperation userOperation = session.getMapper(IUserOperation.class);

			//查
//			User user = userOperation.selectById(1);
//			System.out.println(user.toString());

			//查找List
//			List<User> users = userOperation.selectUsers("miquan");
//			System.out.println(users.size());

			//增
//			User user = new User();
//			user.setUserName("zhiquan");
//			user.setPassword("999");
//			userOperation.addUser(user);
//			session.commit();

			//删
//			userOperation.delUser(7);
//			session.commit();

			//改
			User user = new User(8, "qiantu", "shaxppp");
			userOperation.updateUser(user);
			session.commit();
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				session.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
        }
	}
}

简单的增删查改能够实现了。

时间: 2024-11-07 07:59:45

mybatis 的简单使用的相关文章

Spring MVC +MyBatis +MySQL 简单的登录查询 Demo 解决了mybatis异常

忙活了大半天,饭也没顾得上吃,哎许久不动手,一动手就出事,下面请看今天的重头戏,额吃个饭回来再发了! 1.整体结构 2.准备工作 数据库: --Mysql 5.6 创建数据库 wolf CREATE DATABASE wolf; 创建用户表 user create table user( id int  AUTO_INCREMENT  primary key, name varchar(25) not null, pwd varchar(20) not null, create_time dat

Springmvc+Spring+Mybatis+Maven简单的增删改查

这是适合新手搭建的最简单的SSM整合框架 这是我的下载资源网址:http://download.csdn.net/my/uploads 首先整合框架的话,至少需要了解一下这几个框架 Spring介绍 它是为了解决企业应用开发的复杂性而创建的.Spring 使用基本的 JavaBean 来完成以前只可能由 EJB 完成的事情.然而, Spring的用途不仅限于服务器端的开发.从简单性.可测试性和松耦合的角度而言,任何Java 应用都可以从 Spring 中受益. 简单来说, Spring 是一个轻

mybatis的简单知识

mybatis的简单入门: 1,关于Mybatis(ORM[对象关系映射]{关系型数据库和业务实体对象之间作一个映射})的说明: MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录. 2,mybatis的流程(即:加载配置-接收请求并处理-返回结果): (1)加载配置并初始化 触发条件:加载

Mybatis框架简单使用

Mybatis框架简单使用 环境搭建 新建一个JavaWeb项目,在web\WEB-INF\创建lib文件,并且在其下添加Mybatis的核心包以及依赖包,以及Mysql驱动包,junit4测试包等. 加入配置文件 在src路径下面,新建log4j.properties文件. # Global logging configuration log4j.rootLogger=DEBUG, stdout # Console output... log4j.appender.stdout=org.apa

MyBatis 使用简单的 XML或注解用于配置和原始映射

MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis .MyBatis是一个基于Java的持久层框架.iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO)MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索.MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的

Mybatis实现简单的数据库增删改查操作

Mybatis实现简单的数据库增删改查操作 框架:mybatis(3.5.2) 数据库:mysql 工具:idea 1.新建一个maven项目,在pom文件中添加mybatis依赖及MySQL依赖 <!-- mybatis核心依赖 --> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId&g

MyBatis:简单物理分页实现

一.必要性 首先,介绍一下使用自定义拦截器来进行物理分页的必要性.我们知道MyBatis中的SqlSession接口中提供一个带分页功能的方法: public interface SqlSession extends Closeable {     <E> List<E> selectList(String statement, Object parameter, RowBounds rowBounds);     // .... } 使用该方法,我们在查询时可以通过为select

MyBatis学习笔记一:MyBatis最简单的环境搭建

MyBatis的最简单环境的搭建,使用xml配置,用来理解后面的复杂配置做基础 1.环境目录树(导入mybatis-3.4.1.jar包即可,这里是为后面的环境最准备使用了web项目,如果只是做 mybatis的环境,普通java项目即可 ) 2.Person.java(纯POJO对象类) package com.orange.model; public class Person { private String name; private String address; public Stri

mybatis的简单使用调用mapper接口

mybatis 是apache下的一个面向sql编程的半自动化的ORM持久层的框架.特点:面向sql编程,达到高性能的使用目的. 下面是简单使用 现导入jar包,只有mybatis和数据库驱动包(这里用的是mysql的驱动包)是必须的,其余是日志需要的包 db.properties配置连接池的配置文件 1 jdbc.driverClassName=com.mysql.jdbc.Driver 2 jdbc.url=jdbc:mysql://localhost:3306/mybatis 3 jdbc

MyBatis的简单介绍和几个基本问题

第一阶段  MyBatis阶段 2016年3月9日 星期三 1.为什么我们学习框架? 提高开发效率,框架是别人写好的工具类,我们需要遵循其规则进行操作 2.我们学习哪些框架 A.持久层框架:MyBatis 什么是持久化? 狭义:把数据永久性的保存到数据当中 广义:针对于数据库的所有操作都称为持久化操作 CreateReadUpdateDelete操作 面试:持久层框架?MyBatis  Hibernate Object[Java对象] Relation[数据库] Mapping[映射-通过框架来