随笔分类 - Java.Mybatis
摘要:还得使用XML注释 ,SQL注释--.Java注释 // /* */都会导致错误。
阅读全文
摘要:Html转义字符: HTML转义字符 字符 意义 不断行的空格   半方大的空格   全方大的空格 < 小于 < > 大于 > & &符号 " 双引号" © 版权符号© ® 已注册商标® ™ 商标(美国)T
阅读全文
摘要:include标签在jsp和themeleaf中利用率很高,同样的复用功能在mybatis里也有体现,用法也差不多。 具体来说:就是把可能多次使用的SQL片段封装到一个sql标签中,冠以id,需要使用时便以include标签把其内容拉取过来。 比如下文的XML中: <mapper namespace
阅读全文
摘要:【意义】
这种方式取Car下的Engine,实际还是走了两次DB,一次是拿id取Car的属性,一次是用car的eid去取Engine的属性,没有节省时间,效率不比在代码中配置Engine和Car的关联高,意义不大。
阅读全文
摘要:【一对多的重要意义】
以公司与雇员为例,如果不用一对多,至少需要访问DB两次,一次按取公司的相关属性,第二次取公司下的雇员们,而采用一对多后,你会发现一次DB访问就够了。
阅读全文
摘要:有一个EmpMapper.java,里面获取全部数据的fetchAll函数是这样写的: @Mapper public interface EmpMapper { List<Emp> fetchAll(); } 而对应的Empmapper.xml会是这样: <mapper namespace="com
阅读全文
摘要:咱们的MyBatis总是Web程序的一部分,虽说这就是它的用途,但对于搞一些技术验证的小程序来说,Web程序就太臃肿了。 于是我制作了一个最简Mybatis Sample,里面只有一个Mapper,一个XML和一个启动程序,体积仅11K。能访问一张oracle表,取出其中数量和数据。这个程序是基于S
阅读全文
摘要:Oracle数据库中,ID的生成机制多见使用sequence,如Mapper层的以下函数: @Insert(" insert into dmo_task(id,project_id,table_name,fromDsIdx,toDsIdx,userid) values(dmo_task_id_sqs
阅读全文
摘要:【前篇】 Oracle的三种分页方式 【Mapper类中的对应函数】 package com.hy.mapper; import com.hy.entity.Project; import org.apache.ibatis.annotations.Mapper; import java.util.
阅读全文
摘要:用||连接百分号和keyword是关键。 <select id="countPrj" resultType="java.lang.Integer"> select count(*) from dmo_project a where a.userid=#{uid} <if test="keyword
阅读全文
摘要:【下载地址】 https://files.cnblogs.com/files/heyang78/MybatisCli_220303.rar?t=1646281234 【说明】 这是一个极简的基于SpringBoot CLI的控制台程序,能使用MyBatis访问Oracle数据库。 如果要用它做数据库
阅读全文
摘要:【实验用到的数据库】 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production 【实验用到的Mybatis版本】 <dependency> <groupId>org.mybatis</groupId> <
阅读全文
摘要:【前篇】 https://www.cnblogs.com/heyang78/p/15937919.html https://www.cnblogs.com/heyang78/p/15937891.html 【纲领】 用jdbc处理clob字段,存入时需要创建Clob对象,然后以setString(1
阅读全文
摘要:【错误的发生场合】 当把null值赋给一个字段时。 【应对措施】 MyBatis官方文档指出:“如果对一个属性字段,需要传递null入内,jdbcType是必要的。” 所以,对于给属性字段可能赋空值的场合,需要显式指定可能为空的参数类型,如: update_uid=#{uid,jdbcType=NU
阅读全文
摘要:【程序】 package test; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Test4 { public static void main(String[] args) { Strin
阅读全文
摘要:函数: List<Variable> searchVarsInNames(@Param("names") List<String> names,@Param("uid") long uid); Mapper.xml: <select id="searchVarsInNames" resultType
阅读全文
摘要:如果把SQL写在类中或是注解中,当要取select count(*) .... 类型sql的返回值,直接指定函数的返回类型为int/long即可; 但对于把sql语句写在XML文件的情况,如果要取select count(*) .... 的返回值,必须要指明结果类型resultType="java.
阅读全文
摘要:第一种方式:直接将SQL语句写在接口类里,如: @Mapper public interface UserMapper { ... @Select(" select * from mc_user where name=#{name} and pswd=#{pswd} ") User findByNa
阅读全文
摘要:严格来说,本文讲述的只是oracle的内容,但因为1Mpper类里写的SQL,故而就和MyBatis挨上了。 表定义: create table mc_user( id number(8), deleted number(1) default 0, create_time timestamp def
阅读全文
摘要:本文适用于SpringBoot2.5.4,Mybatis2.2.0,mybatis-plus3.0.5版本,不保证在其它版本的适用性。 与本文相关的姊妹篇:https://www.cnblogs.com/heyang78/p/15369564.html 本文例程:https://files.cnbl
阅读全文