mybatis mysql 调用视图
java代码
@RequestMapping(value = "/testView", method = RequestMethod.GET)
public @ResponseBody String testView(HttpServletRequest request, HttpServletResponse response) throws IOException {
Map<String, Object> paraMap = new HashMap<String, Object>();
paraMap.put("userType", "doctor");
List<Map<String, Object>> list = new ArrayList<Map<String,Object>>();
list = procedureMapper.testView(paraMap);
if(list != null && list.size() > 0){
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}
return null;
}
mapper
package cn.zsmy.mapper; import java.util.List;
import java.util.Map; import cn.zsmy.entity.User;
import cn.zsmy.form.UserForm;
import cn.zsmy.mapper.base.SimpleMapper;
import cn.zsmy.tmp.core.MyBatisRepository; /**
* @ClassName: ProcedureMapper
* @Description: 调用存储过程与视图
* @author 师海明
* @date 2016年6月13日 上午11:52:38
*
*/
@MyBatisRepository
public interface ProcedureMapper extends SimpleMapper<UserForm,User>{ Map<String, Object> testProcedure(Map<String, Object> paraMap); List<Map<String, Object>> testView(Map<String, Object> paraMap);
}
mapper.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" >
<mapper namespace="cn.zsmy.mapper.ProcedureMapper" > <!-- 调用存储过程查询 -->
<select id="testProcedure" parameterType="java.util.Map" statementType="CALLABLE" resultType="java.util.HashMap">
{call loginandreg(
#{out_ret,mode=OUT,javaType=java.lang.Integer,jdbcType=INTEGER},
#{out_desc,mode=OUT,javaType=java.lang.String,jdbcType=VARCHAR},
#{userId,jdbcType=VARCHAR,mode=OUT},
#{user_pwd,jdbcType=VARCHAR,mode=IN},
#{nickname,jdbcType=VARCHAR,mode=IN}
)
}
</select> <!-- 调用视图查询 -->
<select id="testView" parameterType="java.util.Map" resultType="java.util.HashMap">
select username, nickname, dept from test_view where user_type=#{userType}
</select> </mapper>
视图
DROP VIEW IF EXISTS `palm_2_0_16`.`test_view`;
CREATE VIEW `palm_2_0_16`.`test_view`
AS
SELECT u.username,u.nickname,d.dept, u.user_type FROM tb_user u, tb_doctor d WHERE d.id=u.id ;
备注:
mapper.xml中where后面的参数条件一定是在视图中返回的,不然会报错。
mybatis mysql 调用视图的更多相关文章
- mybatis调用视图和存储过程
现在的项目是以Mybatis作为O/R映射框架,确实好用,也非常方便项目的开发.MyBatis支持普通sql的查询.视图的查询.存储过程调用,是一种非常优秀的持久层框架.它可利用简单的XML或注解用语 ...
- SpringMVC+Spring+mybatis项目从零开始--Spring mybatis mysql配置实现
上一章我们把SSM项目结构已搭建(SSM框架web项目从零开始--分布式项目结构搭建)完毕,本章将实现Spring,mybatis,mysql等相关配置. 1. 外部架包依赖引入 外部依赖包引入 ...
- Spirng+SpringMVC+Maven+Mybatis+MySQL项目搭建(转)
这篇文章主要讲解使用eclipse对Spirng+SpringMVC+Maven+Mybatis+MySQL项目搭建过程,包括里面步骤和里面的配置文件如何配置等等都会详细说明. 如果还没有搭建好环境( ...
- freemarker + spring mvc + spring + mybatis + mysql + maven项目搭建
今天说说搭建项目,使用freemarker + spring mvc + spring + mybatis + mysql + maven搭建web项目. 先假设您已经配置好eclipse的maven ...
- Spring+Mybatis+Mysql搭建分布式数据库访问框架
一.前言 用Java开发企业应用软件, 经常会采用Spring+MyBatis+Mysql搭建数据库框架.如果数据量很大,一个MYSQL库存储数据访问效率很低,往往会采用分库存储管理的方式.本文讲述如 ...
- eclipse下SpringMVC+Maven+Mybatis+MySQL项目搭建
这篇文章主要讲解使用eclipse对Spirng+SpringMVC+Maven+Mybatis+MySQL项目搭建过程,包括里面步骤和里面的配置文件如何配置等等都会详细说明. 接下来马上进入项目搭建 ...
- SpringBoot(五)Springmvc+Mybatis+mysql
为了整合这个花了,好长时间,因为上几个连在一起,在pom文件中有没注释的配置,导致我找这个问题找了好久.下面开始 1,先new project 时选择spring initializr,新建好一个空项 ...
- MySQL之视图、触发器、事务、存储、函数、流程控制
一.视图 视图就是一个虚拟表,我们把复杂的sql语句后看到的虚拟表封装起来,给他取个名字,当我们下次使用的时候,就不用再去写复杂的sql语句,直接调用封装后的视图名字,就可以得到我们想要的表,然后就可 ...
- MySQL之视图、触发器、事务、存储过程、函数 流程控制
MySQL之视图.触发器.事务.存储过程.函数 阅读目录 一 视图 二 触发器 三 事务 四 存储过程 五 函数 六 流程控制 MySQL这个软件想将数据处理的所有事情,能够在mysql这个层面上全部 ...
随机推荐
- jquery.serialize
jQuery - serialize() 方法 serialize() 方法通过序列化表单值,创建 URL 编码文本字符串. serialize()函数用于序列化一组表单元素,将表单内容编码为用于提交 ...
- css3基础必回选择器全解
1. *:通用元素选择器 * { margin: 0; padding: 0; } *选择器是选择页面上的全部元素,上面的代码作用是把全部元素的margin和padding设为0,最基本的清除 ...
- dll 日志文件 放在同一个目录。
string strPath = "log.txt"; 如果日志问价跟dll文件放在一起,直接这么些就可以了.
- C# ListView得到选中项及子项
private void listViewEx_MouseClick(object sender, MouseEventArgs e) { ListViewItem lv = listViewEx.G ...
- Android 开发命令行完全攻略
作为命令行的爱好者,我想写这个主题已经有好一段时间了.除了显得很酷之外,命令行的使用能够提高我们的开发效率,因为相比通过鼠标点击一系列的菜单选项,使用键盘输入几个字符并点击 TAB 健显然会快很多. ...
- CSS3 Border-image
CSS3中有关于border的属性我们一起学习完了圆角border-radius和边框颜色border-color,只剩下最后一个边框图片border-image.今天我们就一起来学习这个border ...
- Django(四)
一.请求周期 url> 路由 > 函数或类 > 返回字符串或者模板语言? 1.Form表单提交: 提交 -> url > 函数或类中的方法 - .... HttpResp ...
- mysql 慢查询日志切割
- MVC5+EF6 入门完整教程
MVC5+EF6 入门完整教程11--细说MVC中仓储模式的应用 MVC5+EF6 入门完整教程10:多对多关联表更新&使用原生SQL@20150521 MVC5+EF6 入门完整教程9:多表 ...
- 逗比的wifi开关
笔记本会出现网卡开机不能用的现象.具体表现为:网卡没有禁用,但是搜索不到无线信号.适配器选项框里面选中无线网卡,然后诊断这个链接提示启用无线功能.然后我点击应用此修复就能搜索到无线信号了.问题是,电脑 ...