mybatis入参方式和缓冲

1.mybatis入参方式

@Param注解参数(注解)

封装成对象入参

public int updatePassword(@Param("id")int id,@Param("pwd")String newpwd);

注意:一般情况下:参数超过3个,就用对象.

2.MyBatis缓存

1).分类

一级缓存:SqlSession级别的缓存.(在同一个SqlSession中,缓存有效,默认打开)

二级缓存:应用级别缓存(全局缓存,随便在哪里都能取得到.默认是关闭的)

2)打开全局缓存

第一步:配置mybatis核心配置文件

<setting name="cacheEnabled" value="true"/>

第二步:单独开启映射文件的缓存

<cache eviction="FIFO" flushInterval="60000" size="512" readOnly="true"/>

evication:表示溢出处理机制.

独立设置某一条sql的缓存

<select id="selectAll" resultType="Emp"

useCache="true">

时间: 2024-11-07 18:31:34

mybatis入参方式和缓冲的相关文章

Java Mybatis 传参方式

一.单个参数: public List<XXBean> getXXBeanList(String xxCode); <select id="getXXXBeanList" parameterType="java.lang.String" resultType="XXBean"> select t.* from tableName t where t.id= #{id} </select> 其中方法名和ID一致,

Mybatis传参方式

传递多个参数的四种方式: 顺序传参:public User selectUser(String name,int deptId); <select id="selectUser" resultType="user">select * from user where user_name=#{0} and dept_id = #{1}</select> #{}里面的数字代表你穿如参数的顺序.不建议使用.sql层表达不直观 @Param 注解传参:

mybatis传参的几种方式

1,@Param @参考文章 @Select("select s_id id,s_name name,class_id classid from student where  s_name= #{aaaa} and class_id = #{bbbb}")  public Student select(@Param("aaaa") String name,@Param("bbbb")int class_id); @Select(....)注解的作

Mybatis调用PostgreSQL存储过程实现数组入参传递

注:本文来源于 < Mybatis调用PostgreSQL存储过程实现数组入参传递  > 前言 项目中用到了Mybatis调用PostgreSQL存储过程(自定义函数)相关操作,由于PostgreSQL自带数组类型,所以有一个自定义函数的入参就是一个int数组,形如: CREATE OR REPLACE FUNCTION "public"."func_arr_update"(ids _int4)... 1 如上所示,参数是一个int数组,Mybatis提

mybatis中mapper传多个入参

有三种方式 1.使用占位符#{0},#{1}....对应顺序就是参数的顺序 #方法签名 List<TbItem> selectByPage(int page, int rows); #sql语句 <select id="selectByPage" resultMap="BaseResultMap"> SELECT <include refid="Base_Column_List" /> from tb_item

mybatis框架之多参数入参--传入Map集合

需求:查询出指定性别和用户角色列表下的用户列表信息 实际上:mybatis在入参的时候,都是将参数封装成为map集合进行入参的,不管你是单参数入参,还是多参数入参,都是可以封装成map集合的,这是无可非议的. /** * 需求:查询出指定性别和用户角色列表下的用户列表信息 * @param roleids * @return */ public List<User> getUserListByGender_UserRoleids(Map<String,Object> conditi

Mybatis多参传递的四种解决方案

Mybatis多参传递的四种解决方案 代码异常:org.apache.ibatis.binding.BindingException: Parameter 'param' not found. 长时间没用持久层mybatis框架,今天还出了些异常.查了一下原来是传多参的问题,此问题以前也出现过,现在把解决方案记下以便利其他人及自己后期异常解决. 首先声明,“本人使用的是Dao接口的方式 ” 方案一 Dao参数传递为VO,XML配置:parameterType="*.VO" 方案二 Da

解决WebApi入参时多对象的问题

我们的项目是用WebApi提供数据服务,且WebPage跟APP中都有调用到. WebApi提供的接口一多,就发现一个问题,我们项目中有很多接口是接收POST(安全原因,我们采用的是https)请求的,而且入参基本也就是一两个参数.在开发的后期发现WebApi中有很多对象,多到已经快到了难以管理的地步了. 比如我们的WebApi如下: 对应的入参对象是: 很难想象如果再有别的Controller的话,Models中会有多少对象,而这些对象往往使用一次,或者在一个方法中使用了一下就不再用了. 这显

对称加密——对入参进行DES加密处理

体验更优排版请移步原文:http://vblog.win/blogs/programming/symmetric-encryption-des-js-java.html 对称加密是最快速.最简单的一种加密方式,加密和解密共用一个对称秘钥,因其高效性,被广泛应用在加密协议中.今天恰巧用到,在此总结一下. 我们项目中需要在前端js里对入参进行DES加密传入后台,后台java再进行解密,网上找了一个谷歌的DES加密js包crypto-js,点此下载 下载完成之后找到两个js文件引入项目工程中, 1 2