MyBatis使用註解實現增刪改查
使用Spring與MyBatis整合,即把mybatis資料來源的配置、事務的管理、SqlSessionFactory的建立以及資料對映器介面Mapper的建立交由spring去管理”,所以mybatis的配置檔案mybatis-config.xml中不需要再配置資料來源及事務,在業務層service實現時不需要手動地獲取SqlSession以及對應的資料對映器介面Mapper,通過spring的注入即可。
build.gradle
applicationContext.xmlgroup 'com.xiya' version '1.0-SNAPSHOT' apply plugin: 'java' apply plugin: 'idea' sourceCompatibility = 1.8 repositories { maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } } dependencies { testCompile group: 'junit', name: 'junit', version: '4.11' compile group: 'mysql', name: 'mysql-connector-java', version: '5.1.40' compile group: 'org.springframework', name: 'spring-context', version: '4.3.7.RELEASE' compile group: 'org.springframework', name: 'spring-jdbc', version: '4.3.7.RELEASE' compile group: 'org.mybatis', name: 'mybatis', version: '3.4.4' compile group: 'org.mybatis', name: 'mybatis-spring', version: '1.3.1' compile group: 'commons-dbcp', name: 'commons-dbcp', version: '1.4' compile group: 'log4j', name: 'log4j', version: '1.2.17' compile group: 'commons-logging', name: 'commons-logging', version: '1.2' compile group: 'commons-dbutils', name: 'commons-dbutils', version: '1.6' } tasks.withType(JavaCompile) { options.encoding = "UTF-8" }
PersonMapper.java<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <context:property-placeholder location="classpath:jdbc.properties"/> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName" value="${jdbc.driverClassName}"/> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> </bean> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> </bean> <bean class="org.mybatis.spring.mapper.MapperFactoryBean"> <property name="sqlSessionFactory" ref="sqlSessionFactory"/> <property name="mapperInterface" value="cn.bjut.mapper.PersonMapper"/> </bean> </beans>
我們使用註解替換了對映檔案,實際上,MyBatis的配置檔案也是可以省略的,因為大部分的內容我們都交由Spring管理了。package cn.bjut.mapper; import cn.bjut.entity.Person; 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 java.util.List; /** * Created by N3verL4nd on 2017/6/6. */ public interface PersonMapper { @Select("SELECT * FROM persons WHERE id = #{id}") Person selectPerson(int id); @Select("SELECT * FROM persons") List<Person> selectAllPerson(); @Delete("DELETE FROM persons WHERE id = #{id}") void deletePerson(int id); @Update("UPDATE persons SET name = #{name}, age = #{age} where id = #{id}") void update(Person person); @Insert("INSERT INTO persons(name, age) VALUES(#{name}, #{age})") void insert(Person person); }
測試:
import cn.bjut.entity.Person;
import cn.bjut.mapper.PersonMapper;
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.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
/**
* Created by N3verL4nd on 2017/6/6.
*/
public class T {
@Test
public void test() {
InputStream in = null;
try {
in = Resources.getResourceAsStream("mybatis-config.xml");
} catch (IOException e) {
e.printStackTrace();
}
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(in);
SqlSession sqlSession = sqlSessionFactory.openSession();
PersonMapper personMapper = sqlSession.getMapper(PersonMapper.class);
Person person = personMapper.selectPerson(1);
System.out.println(person);
sqlSession.close();
}
@Test
public void testSM() {
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
PersonMapper personMapper = ctx.getBean(PersonMapper.class);
//Person person = personMapper.selectPerson(1);
//System.out.println(person);
List<Person> list = personMapper.selectAllPerson();
list.forEach(System.out::println);
//DELETE
//personMapper.deletePerson(8);
//UPDATE
//Person person = personMapper.selectPerson(9);
//person.setAge(30);
//personMapper.update(person);
//INSERT
//Person person = new Person("李廣輝", 25);
//personMapper.insert(person);
//SELECT
//list = personMapper.selectAllPerson();
//list.forEach(System.out::println);
}
}
整體結構圖:
相關推薦
MyBatis使用註解實現增刪改查
使用Spring與MyBatis整合,即把mybatis資料來源的配置、事務的管理、SqlSessionFactory的建立以及資料對映器介面Mapper的建立交由spring去管理”,所以mybatis的配置檔案mybatis-config.xml中不需要再配置資料來源及
idea使用SpringBoot和Spring和Mybatis來實現增刪改查
需求: 使用新SSM來實現增刪改查 步驟 第一步:看最終包結構 糾正:資料庫連線池部分還有整合mybatis和springboot 這裡主要是匯入依賴的jar包 第二步:配置pom.xml 導包springBoot支援jdk1.8
微服務架構實戰篇(三):Spring boot2.0 + Mybatis + PageHelper實現增刪改查和分頁查詢功能
簡介 該專案主要利用Spring boot2.0 +Mybatis + PageHelper實現增刪改查和分頁查詢功能,快速搭建一套和資料庫互動的專案。 小工具一枚,歡迎使用和Star支援,如使用過程中碰到問題,可以提出Issue,我會盡力完善該Starter 版本基礎
ztree與springmvc+spring+mybatis整合實現增刪改查
在springmvc+spring+mybatis裡整合ztree實現增刪改查,上一篇已經寫了demo,下面就只貼出各層實現功能的程式碼: Jsp頁面實現功能的js程式碼如下: <script> //用於捕獲分類編輯按鈕的 click 事件
mybatis3使用@Select等註解實現增刪改查
1.需要的jar包 2.目錄樹 3.具體程式碼 一.需要的jar包 第一個:mybatis的jar包 第二個:mysql資料的驅動 二.目錄樹 三.具體程式碼 使用框架,配置檔案先行! c
Java註解實現增刪改查CRUD
以前,我們都把對資料庫的增刪改查語句寫在xml檔案中(詳見:《程式設計師成長筆記(一)》第三部分,第四章,第四節)。 由於Java註解的簡潔高效,在Java註解的思想(幹掉xml)下,現在越來越多的人使用java註解來進行增刪改查操作。 而且MyBatis3也支援並鼓勵我
Spring Boot入門系列(十八)整合mybatis,使用註解的方式實現增刪改查
之前介紹了Spring Boot 整合mybatis 使用xml配置的方式實現增刪改查,還介紹了自定義mapper 實現複雜多表關聯查詢。雖然目前 mybatis 使用xml 配置的方式 已經極大減輕了配置的複雜度,支援 generator 外掛 根據表結構自動生成實體類、配置檔案和dao層程式碼,減輕很大一
SpringBoot整合Mybatis實現增刪改查的功能
ger 開始 pan ble img 映射 講師 -name date SpringBoot框架作為現在主流框架之一,好多框架都漸漸的移植到SpringBoot中來。前面我給大家介紹過redis,jpa等等的的整合,今天在這裏給大家介紹一下Mybatis的整合過程。 S
MyBatis-Spring(二)--SqlSessionTemplate實現增刪改查
允許 ref ack part basic pre 就是 path pda SqlSessionTemplate是個線稱安全的類,每運行一個SqlSessionTemplate時,它就會重新獲取一個新的SqlSession,所以每個方法都有一個獨立的SqlSession,這
myBatis:註解-普通增刪改查
註解也是mybatis的特色之一,可以簡化大量的檔案配置。 接下來,對一個表進行增刪改查操作 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/P
Mybatis實現增刪改查、模糊查詢、多條件查詢
專案總體結構如下: 資料庫準備:在 資料庫dbmybatis中建立一張category的表,我錄入了幾條記錄方便測試,表字段結構如下圖: 1.建立好了表後使用idea新建一個Maven專案,pom.xml加入如下依賴: <dependencies> &
mybatis學習筆記(2)兩種配置實現增刪改查
第二天學習mybatis,發現框架的存在確實是省了我們很多時間,我們完全可以把一些操作簡化,或者實現簡單的封裝提供我們使用。昨天是跟著教程雲裡霧裡的實現了配置,今天再次使用就方便很多。 String resource="conf.xml"; //使用類載入myba
SpringBoot+mybatis實現增刪改查
SpringBoot+mybatis實現增刪改查 1.建立一個專案。 2.用mybatis逆向工程建立,還不會逆向工程的看我上一篇文章 Mybatis逆向工程建立方法 3.建立好會有如下圖的三個檔案 4.新建一個controller資料夾在裡面新建一個PersonController類
Mybatis使用註解進行增刪改查
// 增public interface StudentMapper{ @Insert("insert into student (stud_id, name, email, addr_id, phone)values(#{studId},#{name},#{email},#{address.
springboot整合mybatis實現增刪改查流程以及易錯點
Springboot+mybatis+mysql實現增刪改查操作。 在昨天學習的springboot的入門程式上進行擴充套件開發。首先建立好專案目錄結構,如圖: 整個流程類似ssm整合,controller—》service—》dao ,介面訪問xml。這個寫完的結構
初次詳細搭建SpringBoot+Mybatis+mysql+swagger+Lombok實現增刪改查的功能DOM
話不多說直接進入正題,就是這麼果斷與風騷。 下載安裝外掛 在搭建專案前需要準備些前提工作,方便咱們後續搭建專案。需要下載安裝和配置gradle及swagger所需要的檔案。 下載配置環境變數gradle 安裝JDK8(必須是JDK或JRE7以上,使用java
利用mybatis實現增刪改查 的小專案,單表,雙表一對多,
簡介: MyBatis 本是apache的一個開源專案iBatis, 2010年這個專案由apache software foundation 遷移到了google code,並且改名為MyBatis 。2013年11月遷移到Github。 iBATIS一詞
springmvc配置myBatis,並實現增刪改查、分頁功能
springmvc配置myBatis myBatis是一個數據庫訪問的外掛,通過jdbc實現。 實現思路: 1.maven引入myBatis <!-- mybatis核心包 --> <dependenc
Spring+SpringMVC+Mybatis實現增刪改查--(六)SSM刪除、批量刪除員工的實現
Spring+SpringMVC+Mybatis實現增刪改查--(六)SSM刪除、批量刪除員工的實現單個刪除: 批量刪除 刪除邏輯1.單個刪除URI:/emp/{id} DELETE(1)給刪除按鈕繫結上員工的ID號(2)單個刪除按鈕的點選事件(3)員工刪除的方法2.全選複
使用springmvc+mybatis實現增刪改查並進行登入註冊功能
一、第一次使用springmvc+mybatis整合出的框架,使用的是maven版本 1.使用maven有以下主要要建立maven資料夾,匯入maven包並進行配置環境變數,在後面的文章中會提到maven配置。使用maven主要是依賴其pom.xml配置檔案進行匯入jar包