我们知道,从本质上来说,MyBatis就是一个映射器,它分为两部分映射:SQL语句映射和查询结果的映射。在组装SQL语句的时候,往往需要各种参数,可以使用@param注解来映射参数,也可以使用XML的parameterType属性来映射参数,但最终都离不开XML语句中的SQL参数占位符。关于@param注解和parameterType属性的详细介绍,请...
备注:本文更新日期为2020年7月31日前言本文仅限于徒弟使用,其目的是对Java整个生态和相关技术进行多维度的介绍。因为我个人对“3”这个数字有特殊的研究和认识,所以本文的论述将会处处贯穿“3”这个量化思想,例如划分了三个成长步骤,推荐了三本书,推荐了三篇技术论文,推荐了三本个人专著,介绍了三种学习态度,强调了三种数据结构等等。正文对于Java开发者...
1、Java注解的个人学习经验总结Java注解诞生于Java 5,其官方文档是这样说的:Java注解用于为Java代码提供元数据。作为元数据,注解不直接影响代码的执行。注解通常拿来与注释做对比:注解与注释是有一定区别的,可以把注解理解为代码里的特殊标记,这些标记可以在编译,类加载,运行时被读取,并执行相应的处理。通过注解开发人员可以在不改变原有代码和逻...
我们知道,世界的每个地区都有自己的本地时间,因为时间的依据往往是根据太阳的角度而定,不同地方的人看到的太阳角度是不同的,所以本地时间的出现是合情合理的,也是客观必然的。我们还知道,整个地球共分为二十四时区,也就是说,每个时区都有自己的本地时间,但是本地时间不能应用在互联网通信中,在互联网通信中,统一使用一个标准时间,称为通用协调时(UTC, Unive...
备注:站长认为“事务”是一门独立的学问,建议把sql事务,分布式事务,mybatis事务,spring事务,redis事务等放到一起学习,从不同的角度和侧面去深入的学习事务,这样的学习效果才是最科学的。和众多其它数据库一样,Redis作为NoSQL数据库也同样提供了事务机制。一个事务从开始到执行会经历以下三个阶段:开始事务->命令入队->执...
前言一千个读者有一千个哈姆雷特,一万个Java用户,则能找出一万种“坑爹”功能。对于个人而言,每个人的思维习惯不同,感受到的结果不同,我认为违反思维常识而“坑爹”的功能,也许在他人眼里合乎情理、自然顺畅,所以请读者根据自己的情况自选阅读。正文作为一门面向对象的编程语言,Java 凭借其简单易用、功能强大的特点刚一出世变受到了编程爱好者的青睐。后来,随着...
时间: 2020-07-07
阅读:1657 次
分类: 分布式理论
备注:分布式内参,顾名思义,仅对站长徒弟公开。站长收徒的内容,看似平淡无奇,实则高深莫测。以MyBatis为例,一个零基础的菜鸟,短则一两周、长则一个月就能玩转它,但是MyBatis中文网做了两年多,两者的深度完全不在一个层面。1、简介:分布式内参的特色是“分布式理论学习+ZooKeeper学习+动手实战”,其内容延续了站长的一贯风格---严谨,务实,...
1、前言在我们日常的开发中,通常都是使用数据库来进行数据的存储,由于一般的Web系统中通常不会存在高并发的情况,所以并没有什么问题。可是,一旦出现大并发量的数据请求,比如一些商品抢购的情景,或者是节假日访问量瞬间变大的时候,单一使用数据库来保存数据的系统会因为磁盘读/写速度比较慢的问题而存在严重的性能弊端,一瞬间成千上万的请求到来,需要系统在极短的时间...
1、MyBatis的参数映射配置MyBatis的参数映射利用的属性是:parameterType。这个属性是可选的,因为 MyBatis 可以通过类型处理器(TypeHandler)推断出具体传入语句的参数。2、简单类型,不需要设置 parameterType对于大多数简单的使用场景,你都不需要使用复杂的参数,比如:<select id=&quo...
时间: 2020-06-12
阅读:2419 次
分类: 默认分类
前言传统模式下,开发和运维会有比较清晰的边界,开发人员负责服务运行稳定,运维人员负责服务运行的基础设施稳定。而进入到云原生时代,特别是容器化和 Service Mesh 落地之后,服务框架、服务治理、灰度发布等稳定性密切相关的能力都作为基础设施下沉了,开发和运维的边界开始变得模糊。所以,企业 IT 人员的职责也应该相应的进行重新划分,也就是说开发人员也...
备注:如果指定了 @SelectKey 注解,那么 MyBatis 就会忽略掉由 @Options 注解所设置的生成主键。很多时候新增一条数据,仅仅知道操作结果(新增成功)是远远不够的,更多的时候需要这条新增数据的主键,以便下文使用。通常的办法是:先新增,后将其查询出来,这在MySQL中有专门的函数可以获取到:SELECT LAST_INSERT_ID...
Mybatis 本质就是一个sql映射器,主要映射两部分东西:方法入参和返回结果。Mybatis中提供了两个常用的内置参数:_parameter和_databaseId。前者主要用于方法参数映射,后者主要用于配置开关的作用。mybatis的内置参数_parameter保存了对应传入的对象:<insert id="insertUser&q...
导读:万事洞明皆学问,软件的版本号里面也有学问,所以祭出了《一文读懂MyBatis的版本号格式:major.minor.patch》,欢迎大家品读。说到“版本号”,不仅用于表示软件的版本,还可以用作数据库的并发控制,这就是本文所要讲述的主要问题。欢迎各位读者驻足鉴赏。1、并发的控制策略:控制并发采用的策略通常分为乐观锁和悲观锁。乐观锁的定义:顾名思义,...
通常,MyBatis的版本号分为三部分,即major.minor.patch,例如官方发布声明:本文给大家介绍一下major.minor.patch这三部分分别表示的含义。1、majormajor表示当前MyBatis的主版本号,它的变化通常意味着MyBatis的巨大的变化,MyBatis的前世是ibatis,是在3.0版本发布之后才更名的,之前一直叫...
时间: 2020-05-29
阅读:6422 次
分类: 默认分类
1、时间精度的分类时间精度是根据各个用户所要求对时间的度量作出的分类,是用来进行计量的一种方式方法。时间精度按量级可分为:纳秒(ns)、皮秒(ps)、微秒(us)、毫秒(ms)、秒(s)、分(min)、小时(h)。2、Java中四个时间类的精度java.util.Date 日期格式为:年月日时分秒 java.sql.Date 日期格式为:年月日java...
1、MyBatis的参数映射和字段映射的区别MyBatis的参数映射不同于字段映射,参数映射中的"参数"是指传入SQL语句的参数,而字段映射指的是将JDBC ResultSets数据映射成JavaBean。MyBatis的真正强大在于它的参数映射和字段映射,如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% 的代码。MyB...
在自动查找资源方面,Java 并没有提供一个很好的解决方案,所以最好的办法是直接告诉MyBatis到哪里去找映射文件。我们可以使用相对于类路径的资源引用,或完全限定资源定位符(包括 file:/// 形式的 URL),或类名和包名等。例如:使用相对于类路径的资源引用<mappers>
<mapper resource="...
时间: 2020-05-25
阅读:44105 次
分类: Java 基础
1、MyBatis Generator 诞生背景虽然MyBatis是一个简单易学的框架,但是配置XML文件也是一件相当繁琐的一个过程,而且会出现很多不容易定位的错误。当在工作中需要生成大量对象的时候,有太多的重复劳动,简直是生无可恋。所以,官方开发了 MyBatis Generator。它只需要很少量的简单配置,就可以完成大量的表到Java对象的生成工...
FastJson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将JavaBean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。FastJson是Java程序员常用到的类库之一,正如其名,"快"是其主要卖点。据悉,从测试结果看,FastJson确实是最快的,比Jackson快20%左右。虽然FastJso...
最近群里有人贴出一个问题:Mapped Statements collection does not contain value for student.insert如下图所示:关于这个错误的分析是这样的:(1)其实,最令人困惑的是"Mapped Statements collection",它是个map的名字,这个map存放各种xml或者注解中被映射...
« 前一页 1 ... 20 21 22 23 24 25 26 ... 33 后一页 »