摘要:一個用于生成配置文件的插件使用方法呢是加入插件中然后執行相關命令可以實現自動生成配置文件自動映射首先編寫無參的然后創建數據庫這次使用的是開發環境創建的數據庫數據庫類型如下編寫映射文件此時結果會自動映射到對象中根據對象自動調用方法然后進行賦
ps 一個用于生成MyBatis配置文件的插件 mybatis-generator自動映射
使用方法呢, 是加入maven插件中 然后執行相關命令可以實現自動生成MyBatis配置文件
首先編寫無參的javabean
package com.ming.MyBatis.POJO; /** * @author ming */ public class Role { private int id; private String roleName; private String note; public Role(){ } /** * @param id */ public void setId(int id) { this.id = id; } /** * @param roleName */ public void setRole_name(String roleName) { this.roleName = roleName; } /** * @param note */ public void setNote(String note) { this.note = note; } /** * @return */ public int getId() { return id; } /** * @return */ public String getRoleName() { return roleName; } /** * @return */ public String getNote() { return note; } }然后創建數據庫
這次使用的是開發環境創建的數據庫
數據庫類型如下
此時結果會自動映射到VO對象中,根據VO對象自動調用set方法,然后進行賦值操作
此時DAO層接口
/** * @param id * @return */ public Role getRole(int id);傳遞多個參數
如果需要傳遞多個參數,使用MyBatis提供的Map接口
首先新增加DAO層接口
/** * 查詢Map * @param params * @return */ public ListfindRoleByteMap(Map params);
接著,書寫映射文件,傳遞參數
這里呢,定義了一個結果集
對于返回的數據,使用typehand進行攔截,將會調用自定義別名的role類
現在的完整文件
書寫結果展示
<%@ page import="org.apache.ibatis.session.SqlSession" %> <%@ page import="com.ming.Util.SqlSessionFactoryUtil" %> <%@ page import="com.ming.MyBatis.POJO.RoleMapper" %> <%@ page import="com.ming.MyBatis.POJO.Role" %> <%@ page import="java.util.Map" %> <%@ page import="java.util.HashMap" %> <%@ page import="java.util.List" %> <%@ page import="javax.swing.text.html.HTMLDocument" %> <%@ page import="java.util.Iterator" %>Hello World!
<% long startTime = System.currentTimeMillis(); //獲取開始時間 SqlSession sqlSession = null; Listrole = null; for(int i = 0; i < 10; i++) { try { sqlSession = SqlSessionFactoryUtil.openSqlSesion(); RoleMapper roleMapper = sqlSession.getMapper(RoleMapper.class); Map paramsMap = new HashMap (); paramsMap.put("roleName", "name"); paramsMap.put("note", "note"); role = roleMapper.findRoleByteMap(paramsMap); sqlSession.commit(); } catch (Exception e) { e.printStackTrace(); sqlSession.rollback(); } finally { if (sqlSession != null) { sqlSession.close(); } } } long endTime = System.currentTimeMillis(); //獲取結束時間 %> <% Iterator iterator = role.iterator(); while(iterator.hasNext()){ %> <%=((Role)iterator.next()).getNote()%> <% } %>
數據庫中大概有一萬多條記錄,時間較長
ps 一萬多條list擔心內存
此時可以在此處輸出查詢日志,用于進行分析
注解傳遞參數使用param注解傳遞參數
新建一個DAO接口
/** * @param roleName * @param note * @return */ public ListfindRoleByteMap1(@Param("roleName") String roleName, @Param("note") String note);
再次編寫映射文件,對DAO層和SQL語句進行映射配置
再次編寫展示層
<%@ page import="org.apache.ibatis.session.SqlSession" %> <%@ page import="com.ming.Util.SqlSessionFactoryUtil" %> <%@ page import="com.ming.MyBatis.POJO.RoleMapper" %> <%@ page import="com.ming.MyBatis.POJO.Role" %> <%@ page import="java.util.Map" %> <%@ page import="java.util.HashMap" %> <%@ page import="java.util.List" %> <%@ page import="javax.swing.text.html.HTMLDocument" %> <%@ page import="java.util.Iterator" %>Hello World!
<% long startTime = System.currentTimeMillis(); //獲取開始時間 SqlSession sqlSession = null; Listrole = null; for(int i = 0; i < 10; i++) { try { sqlSession = SqlSessionFactoryUtil.openSqlSesion(); RoleMapper roleMapper = sqlSession.getMapper(RoleMapper.class); Map paramsMap = new HashMap (); paramsMap.put("roleName", "name"); paramsMap.put("note", "note"); role = roleMapper.findRoleByteMap1("name", "note"); sqlSession.commit(); } catch (Exception e) { e.printStackTrace(); sqlSession.rollback(); } finally { if (sqlSession != null) { sqlSession.close(); } } } long endTime = System.currentTimeMillis(); //獲取結束時間 %> <% Iterator iterator = role.iterator(); while(iterator.hasNext()){ %> <%=((Role)iterator.next()).getNote()%> <% } %>
運行結果
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/74132.html
摘要:第一是手動在的配置文件中使用部分來指定類路徑。第二是使用工廠的屬性。注解和樣式的配置都是支持的。在事務處理期間一個單獨的對象將會被創建和使用。創建的代理控制開放和關閉翻譯任意的異常到的異常中。每個映射器將會在指定的包路徑中遞歸地被搜索到。 mybatis-spring 若要整合spring和mybatis就需要一個插件即mybatis-spring-x.x.x.jar。具體的安裝如下所...
摘要:首先導包依賴如下構建應用是以為中心的實例可以通過獲得其中是工廠接口任務用于創建配置文件將會解析配置文件在類對象中配置獲取數據源事務管理器映射器在文件下新建文件配置文件內容如下定義別名定義數據庫信息事物管理 首先導包 依賴如下 mysql mysql-connector-java 8.0.15 org.m...
摘要:所有的語句都需要配置一個,并且要和中的方法名相同。若有參數,則需要設置參數類型,如下一般來說會在中設置類型,即其實不設置一般情況下也不會出錯,但是一般情況下設置類型,因為當參數值為空時,能夠確保找到正確的類型處理器。 mapper statement: insert update select delete。所有的mapper statement 語句都需要配置一個id,并且id...
摘要:的解析和運行原理構建過程提供創建的核心接口。在構造器初始化時會根據和的方法解析為命令。數據庫會話器定義了一個對象的適配器,它是一個接口對象,構造器根據配置來適配對應的對象。它的作用是給實現類對象的使用提供一個統一簡易的使用適配器。 MyBatis的解析和運行原理 構建SqlSessionFactory過程 SqlSessionFactory提供創建MyBatis的核心接口SqlSess...
閱讀 2750·2021-11-24 09:39
閱讀 1654·2021-09-28 09:35
閱讀 1124·2021-09-06 15:02
閱讀 1316·2021-07-25 21:37
閱讀 2733·2019-08-30 15:53
閱讀 3651·2019-08-30 14:07
閱讀 721·2019-08-30 11:07
閱讀 3524·2019-08-29 18:36