mybatis随记】的更多相关文章

这里主要是介绍在springboot里面通过xml的方式进行配置,因为xml的配置相对后台复杂的系统来说,能够使得系统的配置和逻辑实现分离,避免配置和代码逻辑过度耦合,xml的配置模式能够最大限度的实现配置集中,和java代码逻辑分离. 1. mybatis文件的集成 这里,通过springboot的@configuration的注解指令,以及@ImportResource注解,很方便的实现mybatis的xml配置文件加载,快速实现mybatis相关信息的配置(含Database).下面,举一…
JDBC问题:1.数据库配置信息硬编码 2.频繁创建,释放数据库连接 3.sql,设置参数,获取结果集硬编码,不通用   解决方案:1.配置文件 2.采用连接池 3.使用反射和内省   自定义持久层框架:         一对一查询:使用association标签   一对多查询:使用collection标签       多对多查询(返回结果为list)     1.Mybatis有哪些动态sql 用于在多入参的条件下,根据不同的标签和入参条件是,动态组合sql条件. 原理:根据 不同的标签(w…
<update id="updateUser"> UPDATE user_info SET <if test="gzhOpenId != null and gzhOpenId !=''"> gzh_openid = #{gzhOpenId}, </if> <if test="nickname != null and nickname != ''"> nickname = #{nickname}, &…
第一轮总结性笔记 这是一个很漫长的过程,我买了套课程,将在日后记录学习笔记,取名为逆水行舟系列 MyBatis的基础 根据MyBatis的官方介绍: 整个测试项目结构如下:使用Maven架构项目 pom.xml : 所需依赖如下 <dependency>     <groupId>org.mybatis</groupId>     <artifactId>mybatis</artifactId>     <version>3.4.6&…
struts2-convention-plugin是一个插件,通过这个插件可以实现对于struts2的零配置,基本用法可以参考这个博客(http://javeye.iteye.com/blog/358744). 我对于struts2-convention-plugin是比较恶心和反感的,我个人反对用这种插件.struts2-convention-plugin用了一些约定的命名方式,让程序员不用配置(或是不用写注解)一些跳转页面了.比如在一个叫做"manage.do"的action里,如…
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI",Tahoma,Helvetica,Sans-Serif,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif; font-size: 10.5pt; line-height: 1.5;…
记一笔MyBatis的坑 1.sql查询concat()连接函数xml运行查询乱码 ) , ), char)'%') bll FROM fact_dkxx sq 由于连接的字符串中包含数字与百分比字符串,数据类型不一致,在xml中查询返回会导致数据乱码,在数据库执行sql又没问题                 经过一番查找问题,发现需要将数字使用CONVERT(number,char)函数转换字符类型连接. 2.MyBatis中 <if test="isfk != null and is…
目录 记MyBatis动态SQL 1.< SQL >标签 2.< if >标签 3.分支标签 1.第一种:用在查询条件上用choose-when:otherwise可不要 2. 第二种case-when:用在查询结果上 3.case-when 的特殊用法:行转列: < foreach >标签 遍历list 遍历map 关系映射 resultMap 一般情况: list嵌套等 嵌套查询 补充:collection 与assocation的异同 其他重要sql笔记 conc…
1.准备工作 软件:eclipse. mysql .navicat for mysql 包:mybatis-3.1.1.jar   mysql-connector-java-5.1.7-bin.jar   2.创建项目 web项目在eclipse中是指动态web项目,即Dynamic web project. 源码放在src文件夹. jar包放在自建的lib文件夹下然后build path到当前项目中. 3.创建数据库和表 打开 MYSQL command line client,输入数据库密码…
在使用 idea mybatis.generator 生成的代码,遇到 生成的代码很多重复的地方, 虽然代码是生成的,我们也不应该允许重复的代码出现,因为这些代码后期都要来手动维护. 对于生成时间戳注释.Example类型,xml 等大多都可以通过xml配置来,让其不生成. 然而 对于一些符合自己编码习惯的代码风格再通过配置来生成就不大现实了.对于这种情况,我么可以通过扩展  mybatis.generator 的插件来解决. 插件的编写说明网上有很多,列出几个自己看过的 http://gene…
前言 项目使用SSM框架搭建Web后台服务,前台后使用restful api,后台使用MyBatisGenerator自动生成代码,在前台使用关键字进行查询时,遇到了一些很宝贵的坑,现记录如下.为展示所遇问题,将项目进行了精简. 项目框架 后台框架 后台框架选型为Spring + SpringMVC + Mybatis + Jetty,其中使用MyBatisGenerator创建代码,Jetty为内嵌的Web服务器. 项目代码 代码已上传至github 项目介绍 数据准备 创建库ssm和表use…
看到的错误信息如出一辙都是这样的:Method threw 'org.apache.ibatis.binding.BindingException' exception.Invalid bound statement (not found): **.dao.**Dao.select 1.考虑返回值类型是否不匹配,一顿修改,@Results 也使用到. 最终无果. 2.开始各种百度,先申明本人使用的方式注解方式, 并非最常用的xml方式. 百度内容大都雷同,检查包名,类名,方法名 是否映射.无果.…
项目是用ssm搭建的.主要是为app数据接口.其中有一个需求就app想要查询一段时间内某个用户的测量信息,所以app给我后端传递了3个参数,分别是appuserId(String),startDate(Date),endDate(Date).我在controller中验证参数没问题之后我将参数传递给service层,然后在service层传递给dao层,执行真正的sql语句查询. service层: Map<String, Object> conditionMap = new HashMap&…
tk.mybatis通用工具pom <!--mybatis依赖--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.1</version> </dependency> <!--通用mapper--&…
错误信息:java.lang.StackOverflowError 关于这个错误的深度解析,大家可以参考这篇博文,比较详细:https://blog.csdn.net/zc375039901/article/details/79179465\ 先说说这个错误,我是怎么发生的?我的这个错误与上面我推荐的该错误原因深度解析没有多大的关系,大家可以适当了解了解. 简单的说,这是一个低级错误,特别对于"码农"头衔的大多数开发者而言. 习惯了惯性思维,习惯的复制粘贴,习惯了那套编写业务逻辑层的方…
由来 项目中需要实现某个订单的状态改变后然后推送给第三方的功能,由于更改状态的项目和推送的项目不是同一个项目,所以为了不改变原项目的代码,我们考虑用spring的aop来实现. 项目用的是springmvc + spring + mybatis 的架构,我们知道spring实现了两种代理方式:JDK动态代理和CGLB动态代理.所以spring对接口和类都可以实现代理.所以只需要考虑在DAO接口的相关update状态的方法上加aop就可以了.整理了下共有六个地方对订单的status做了update…
1.参数绑定失败 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'msgs3' not found. Available parameters are [msgs, param1]  相关信息 <insert id="insertBatch"> INSERT INTO t_user (id…
二.springboot+mybatis的使用 1.springboot的注解:@SpringBootApplication :启动项目:整合常用注解(@Configuration,@EnableAutoConfiguration,@ComponentScan)/扫包作用(只能在当前同级包下)  @EnableAutoConfiguration自动配置  @ComponentScan扫描一些组件如controller.service 可以扫多个包.扫多个包用法@ComponentScan(bas…
一..springboot的配置 1.安装并配置maven maven是项目管理工具,可以自动下载并管理jar包之间的依赖关系,可通过maven自动配置springboot 参照百度经验https://jingyan.baidu.com/article/59703552cb9b988fc00740a4.html安装(eclipse下 ) 2.新建maven项目,配置pom.xml文件(可直接使用) <?xml version="1.0" encoding="UTF-8&…
前言 到底还是没理解清楚的锅~~~~搞了好久...啊啊啊啊 错误: There is no getter for property named 'name' in 'class java.lang.Long' org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property…
场景: 希望使用phoenix做查询服务,给服务端提供接口 设计: 通过springboot做restful的接口发布,通过mybatis做phoenix的sql处理,因此是springboot+mybatis+phoenix的集成方案: 但是会遇到一个坑! =========================================我是华丽的分割线===================================================== 先简单汇报下场景: 做网约车的预约…
最近在项目中需要使用oracle+mybatis批量插入数据,因为自增主键,遇到问题,现记录如下: 一.常用的两种sql写法报错 1.insert ... values ... <insert id="batchInsert1" parameterType="java.util.List" useGeneratedKeys="false"> insert all <foreach collection="list&qu…
mybatis oracle mysql 批量插入一.oracle的批量插入方式insert into db(id, zgbh, shbzh) select '1', '2', '3' from dual union all select '2', '3', '4' from dual union all select '3', '4', '5' from dual union all select '4', '5', '6' from dual union all select '5', '6…
背景 MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录. 使用传统的代码结构controller-->service-->dao dao传入实体,int insertEntity(Entity ent…
接上回 上一篇我们简单介绍了基于SpringBoot实现简单的Web开发,本节来看Web开发中必不可少的内容--数据持久化 先看项目结构: 1. 创建数据表 打开mysql,打开数据库 test (没有可以创建一个),创建表格 person 给 person 表创建两个字段 id.name      2. 打开 pom.xml,添加相关依赖 <!-- 引入mybatis.mybatis-plus.mysql等依赖 --> <dependency> <groupId>or…
http://blog.csdn.net/jinzhencs/article/details/50595476…
http://m.blog.csdn.net/article/details?id=51646658…
"bdate like '#{date}%' and ..." 最开始这样写的· 将传入的参数和%用单引号包起来,但是这会报错 java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0). 查阅资料后发现不能使用单引号将占位参数包起来,这样编译后的结果就是  like '?%' 即把占位的“?”作为了参数 然后我想到把通配符加在参数里面传进来,如下所示 &qu…
最近自己写了一份代码签入到github,然后拉下来运行报下面的错误 Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. -- :: --- [ main] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPLICATION FAI…
这是我昨天在整合MySQL Fabric和MyBatis时遇到的问题,花了大半天才解决的问题,解决的过程中在网上查找了很久,都没有找到解决的方案.现在记下来,希望能够帮助有同样问题的朋友.如果各位朋友有更好的解决方案,也请告诉我. 1. 问题描述 这个问题是在整合MySQL和MyBatis的时候遇到的. 首先说一下我使用的jar包的版本,MySQL Connector用的是5.1.36,myBatis用的是3.2.8.我也试过将MySQL Connector升级到5.1.40,然并卵. 看看My…