찾다
데이터 베이스MySQL 튜토리얼Mybatis简单的CRUD基于XML文件配置
Mybatis简单的CRUD基于XML文件配置Jun 07, 2016 pm 04:03 PM
crudmybatisxml기반으로문서가지다단순한구성

所有的ORM框架学习曲线都是先来一个CRUD爽一爽,下面我们就来CRUD一下,所有的配置都是基于上一篇的配置。废话不多说,直接上代码。 ?xml version=1.0 encoding=UTF-8 ?!DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//EN http://mybatis.org/dtd/m

所有的ORM框架学习曲线都是先来一个CRUD爽一爽,下面我们就来CRUD一下,所有的配置都是基于上一篇的配置。废话不多说,直接上代码。

<?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.bird.mybatis.bean.userMapper">
	<!--CRUD  -->
	<insert id="insertUser" parameterType="com.bird.mybatis.bean.Users">
		insert into users(name, age) values(#{name}, #{age});
	</insert>
	
	<delete id="deleteUser" parameterType="int">
		delete from users where id = #{id};
	</delete>
	
	<update id="updateUser" parameterType="com.bird.mybatis.bean.Users">
		update users set name = #{name}, age = #{age} where id = #{id};
	</update>
	
	<select id="getUser" parameterType="int" resultType="com.bird.mybatis.bean.Users">
		select * from users where id = #{id};
	</select>
	
	<select id="getAllUser" resultType="com.bird.mybatis.bean.Users">
		select * from users;
	</select>
</mapper> 
package com.bird.mybatis.bean;

import java.io.IOException;
import java.io.Reader;
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 org.junit.Before;
import org.junit.Test;

public class MyTest {
	
	private SqlSessionFactory factory;
	
	@Before
	public void init() {
		String resource = "conf.xml";
		Reader reader = null;
		try {
			reader = Resources.getResourceAsReader(resource);
		} catch (IOException e) {
			e.printStackTrace();
		}
		factory = new SqlSessionFactoryBuilder().build(reader);
	}
	
	@Test
	public void testAdd() {
		//默认是手动的 
		SqlSession session = factory.openSession();
		String statement = "com.bird.mybatis.bean.userMapper.insertUser";
		int rows = session.insert(statement, new Users(-1, "哈哈", 29));
		//提交
		session.commit();
		System.out.println(rows);
		session.close();
	}
	
	@Test
	public void testUpdate() {
		SqlSession session = factory.openSession();
		String statement = "com.bird.mybatis.bean.userMapper.updateUser";
		session.update(statement, new Users(4, "呵呵", 29));
		session.commit();
		session.close();
	}
	
	@Test
	public void testDelete() {
		SqlSession session = factory.openSession();
		String statement = "com.bird.mybatis.bean.userMapper.deleteUser";
		session.delete(statement, 1);
		session.commit();
		session.close();
	}
	
	@Test
	public void testGetAllUser() {
		SqlSession session = factory.openSession();
		String statement = "com.bird.mybatis.bean.userMapper.getAllUser";
		List<Users> list = session.selectList(statement);
		System.out.println(list.size());
		session.close();
	}
}
Ok,so easy, 哪里不会点哪里
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
Java之Mybatis的二级缓存怎么使用Java之Mybatis的二级缓存怎么使用May 24, 2023 pm 06:16 PM

缓存的概述和分类概述缓存就是一块内存空间.保存临时数据为什么使用缓存将数据源(数据库或者文件)中的数据读取出来存放到缓存中,再次获取的时候,直接从缓存中获取,可以减少和数据库交互的次数,这样可以提升程序的性能!缓存的适用情况适用于缓存的:经常查询但不经常修改的(eg:省市,类别数据),数据的正确与否对最终结果影响不大的不适用缓存的:经常改变的数据,敏感数据(例如:股市的牌价,银行的汇率,银行卡里面的钱)等等MyBatis缓存类别一级缓存:它是sqlSession对象的缓存,自带的(不需要配置)不

怎么使用springboot+mybatis拦截器实现水平分表怎么使用springboot+mybatis拦截器实现水平分表May 14, 2023 pm 06:43 PM

MyBatis允许使用插件来拦截的方法Executor(update,query,flushStatements,commit,rollback,getTransaction,close,isClosed)ParameterHandler(getParameterObject,setParameters)ResultSetHandler(handleResultSets,handleOutputParameters)StatementHandler(prepare,parameterize,ba

mybatis分页的几种方式mybatis分页的几种方式Jan 04, 2023 pm 04:23 PM

mybatis分页的方式:1、借助数组进行分页,首先查询出全部数据,然后再list中截取需要的部分。2、借助Sql语句进行分页,在sql语句后面添加limit分页语句即可。3、利用拦截器分页,通过拦截器给sql语句末尾加上limit语句来分页查询。4、利用RowBounds实现分页,需要一次获取所有符合条件的数据,然后在内存中对大数据进行操作即可实现分页效果。

springboot怎么整合mybatis分页拦截器springboot怎么整合mybatis分页拦截器May 13, 2023 pm 04:31 PM

简介今天开发时想将自己写好的代码拿来优化,因为不想在开发服弄,怕搞坏了到时候GIT到生产服一大堆问题,然后把它分离到我轮子(工具)项目上,最后运行后发现我获取List的时候很卡至少10秒,我惊了平时也就我的正常版本是800ms左右(不要看它很久,因为数据量很大,也很正常。),前提是我也知道很慢,就等的确需要优化时,我在放出我优化的plus版本,回到10秒哪里,最开始我刚刚接到这个app项目时,在我用PageHelper.startPage(page,num);(分页),还没等查到的数据封装(Pa

mybatis怎么调用mysql存储过程并获取返回值mybatis怎么调用mysql存储过程并获取返回值May 27, 2023 am 09:01 AM

mybatis调用mysql存储过程并获取返回值1、mysql创建存储过程#结束符号默认;,delimiter$$语句表示结束符号变更为$$delimiter$$CREATEPROCEDURE`demo`(INinStrVARCHAR(100),outourStrVARCHAR(4000))BEGINSETourStr=&#39;01&#39;;if(inStr==&#39;02&#39;)thensetourStr=&#39;02&#39;;en

springboot配置mybatis的sql执行超时时间怎么解决springboot配置mybatis的sql执行超时时间怎么解决May 15, 2023 pm 06:10 PM

当某些sql因为不知名原因堵塞时,为了不影响后台服务运行,想要给sql增加执行时间限制,超时后就抛异常,保证后台线程不会因为sql堵塞而堵塞。一、yml全局配置单数据源可以,多数据源时会失效二、java配置类配置成功抛出超时异常。importcom.alibaba.druid.pool.DruidDataSource;importcom.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder;importorg.apache.

springboot怎么配置mybatis和事务管理springboot怎么配置mybatis和事务管理May 10, 2023 pm 07:13 PM

一、springboot与mybatis的配置1.首先,springboot配置mybatis需要的全部依赖如下:org.springframework.bootspring-boot-starter-parent1.5.1.RELEASEorg.springframework.bootspring-boot-starter-web1.5.1.RELEASEorg.mybatis.spring.bootmybatis-spring-boot-starter1.2.0com.oracleojdbc

Java Mybatis一级缓存和二级缓存是什么Java Mybatis一级缓存和二级缓存是什么Apr 25, 2023 pm 02:10 PM

一、什么是缓存缓存是内存当中一块存储数据的区域,目的是提高查询效率。MyBatis会将查询结果存储在缓存当中,当下次执行相同的SQL时不访问数据库,而是直接从缓存中获取结果,从而减少服务器的压力。什么是缓存?存在于内存中的一块数据。缓存有什么作用?减少程序和数据库的交互,提高查询效率,降低服务器和数据库的压力。什么样的数据使用缓存?经常查询但不常改变的,改变后对结果影响不大的数据。MyBatis缓存分为哪几类?一级缓存和二级缓存如何判断两次Sql是相同的?查询的Sql语句相同传递的参数值相同对结

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구