- 使可变性最小化--EffectiveJava小结(15)
冰鱼飞鸟
不可变类:每个实例的所有属性都必须再创建该实例时就提供,并且再对象的整个生命周期内固定不变。不可变类的五个规则:1.不提供任何修改属性的方法。2.保证类不会被扩展。(不是不能子类化,而是为了防止调用者将其子类化)3.所有属性都是final修饰。4.所有属性都私有。(1.当属性是可变对象时候,防止调用方获取该可变对象并且修改了其属性。2.通过方法比直接提供属性更灵活,方法可以修改其内部实现)5.确保
- Java小结3——面向对象进阶
往前狂奔的Stephen
java开发语言
目录类就是设计图构造器this关键字工具类代码块设计模式包final关键字的作用常量枚举static关键字成员方法的分类方法的内存原理抽象类接口接口新增的方法多态内部类静态内部类成员内部类局部内部类(了解即可)匿名内部类常用APIObject类StringBuilderMath类System类Date类两个小算法Lambda表达式包装类面向对象复习补漏类就是设计图类就是建造对象的蓝图。定义类的注意
- 重写equals方法时要遵循通用约定--EffectiveJava小结(8)
冰鱼飞鸟
不覆盖(重写)equals的情况下:只有s1==s2,才有s1.equals(s2).Object中equals的实现如下:publicbooleanequals(Objectobj){return(this==obj);}重写equals方法要遵循的通用约定有1.自反性:对于非null对象x,有x.equals(x)==true.如果违反了自反性,集合的contains方法就无法判断该对象已经存
- 初识Java小结
鹿白_tz
一:Java简介1:什么是javajava是一种跨平台、面向对象的程序设计语言。用它编写的程序可以在任何在任何计算机、操作系统和支持java的硬件设备上运行。java是一种通过解释方式来执行的语言,是一门非常卓越的编程语言。2:java的版本JavaSEJava平台标准版((JavaStandardEnterpriseEdition)),为用户提供一个程序开发环境。这个程序开发环境提供了开发与运行
- 避免创建不必要的对象--EffectiveJava小结(5)
冰鱼飞鸟
尽量重用对象,而不是重新创建。一.重用不可变对象不可变对象,始终可以被重用。如String//尽量用,多次调用不会重复创建对象Strings="";//而不是,调多少次就创建多少次对象Strings2=newString("");另外调用静态工厂方法优于调用构造器。如Boolean.valueOf(String);优于newBoolean(String)因为前者会返回Boolean中缓存的true
- Java小结
Smile丶微笑
一、线程部分1、Java中引用类型都有哪些?(1)强引用。在虚拟机内存不足的情况下,也不会回收,如果我们把(强引用)对象置为null,会大大增加了垃圾回收的频率。几乎只要我们给出建议(GC),JVM就会回收。Objecto=newObject();Objecto1=o;(2)软引用。如果不显式的置为null,跟强引用差不多。垃圾回收不会执行。只会等到内存不足的时候才会调用。(3)弱引用。就算不置为
- SpringBoot开发实用篇 - 测试 - 加载测试专用配置,测试类中启动web环境,发送虚拟请求模拟
鬼鬼骑士
Java开发必备成长阶段springboot前端java
文章目录加载测试专用配置案例演示编写ConfigrationTest.java编写MsgConfig.java小结测试类中启动web环境案例演示编写xml编写WebTest.java测试运行小结发送虚拟请求案例模拟新建UserController.java运行测试案例模拟2编写WebTest.java测试运行小结加载测试专用配置有效解决配置冲突问题案例演示编写ConfigrationTest.ja
- Spring框架从入门到精通
cgblpx皮皮霞
3-SSM三大框架springjava
文章目录初识Spring框架时代变迁Spring的野心官网框架组成核心概念三大核心组件的关系主要jar组成Spring框架两大核心:IoC和DI概念IoCDIIoC的XML方式创建springboot工程创建Hello.java创建applicationContext.xml创建TestIoC.java小结IoC的注解方式创建springboot工程pom.xmlHello.javaapplica
- java小结
夜幕繁华
八大基本变量boolean--1bitbyte--8bitshort--16bitint--32bitlong--64bitchar--16bitfloat--32bitdouble--64bit条件和循环语句1.if语句语法说明:if是该语句中的关键字,后续紧跟一对小括号,该对小括号任何时候不能省略,小括号的内部是具体的条件,语法上要求该表达式结果为boolean类型。后续为功能的代码,也就是当
- 构造器参数较多时考虑使用构建器(Builder)--EffectiveJava小结(2)
冰鱼飞鸟
遇到大量参数(必要参数/可选参数)的可选方案:1.重叠构造器模式classTest{privateintparam1;privateStringparam2;privateintparam3;Test(intparam1){this(param1,null);}Test(intparam1,Stringparam2){this(param1,param2,0);}Test(intparam1,St
- Java小结(二)——打印矩形和九九乘法表
莫陌莫墨
java函数矩形九九乘法表
我们经常打印各种各样的三角形,今天我们打印一个矩形,顶一个定义一个函数,函数功能就是打印矩形,这样,以后我们想打印几行几列的矩形都是可以的,。如何定义一个函数呢?通过两个明确来完成明确一:这个功能的结果是什么?明确二:这个功能实现过程是否需要未知内容参与。很明显我是要打印矩形,结果是返回来一个打印好的矩形,类型是void。这个过程实现,我们需要未知的内容参与,row和col,即行和列。public
- Java小结(一)——打印等腰三角形
莫陌莫墨
Java
一开始我们学习Java、C、python等语言的时候,都是从基本语法开始的,一些基本的循环语句,实现一些简单的小的练习需求。比如打印等腰三角形。打印一个如下形式的等腰三角形:/******************/那我们初学者可能一开始就会想到的是最简单粗暴地一个算法,我直接System.out.print(),一行行的给打印出来,例如System.out.print("*");System.ou
- Java小结
明天争取
Javajavahibernatespring
Java小结一、请解释什么是pojo类,它有什么要求:答:1、pojo类是和一张表对应2、一般我们放在com.xxx.domain下3、pojo需要一个主键属性(用于标示一个pojo对象)4、除了主键属性外,它应当还有其它属性,属性的访问权限是private5、提供set/get方法6、它应当有一个无参的构造方法(hibernate反射)7、pojo类其实就是javabean二、在spring框架
- 用私有构造器或枚举类型强化单例(Singleton)属性--EffectiveJava小结(3)
冰鱼飞鸟
用私有构造器或枚举类型目的都是为了保证单例。但是如果要考虑反射和反序列的方式创建对象,则还需要额外的工作。一.非枚举类型实现的单例(1)防止实现Serializable的序列化,反序列化破坏单例:需要声明一个readResolve方法,ObjectInputStream.readObject()返回的对象会是readResolve的返回对象。ps:实际上是反序列化生成新对象后再调用了这个对象的re
- 初识Java小结
JA尐白
小结1:数据基本类型————Java中一切数据和运算的基础本章中两个主线就是Java基本数据类型和Java基本基本运算符。1、介绍了基本数据类型的值域。8种基本数据类型都有自己的值域,因为这些数据是保存在计算机里的,不能像数学中那样有无限个值。2、每种基本变量的名字都是Java中的关键字。3、在Java中,把有理数称为浮点数。浮点数在Java中是使用近似的值进行表达的。浮点数的这个性质影响了比较两
- Rxjava小结
吴小博Toby
byhzwusibo20190504http://gank.io/post/560e15be2dca930e00da1083?from=timeline&isappinstalled=0#toc_1RxJava:异步。好在:简洁。RxJava是通过一种扩展的观察者模式来实现异步的。优雅的实现方法-基于事件流的链式调用flatMap()和map()有一个相同点:它也是把传入的参数转化之后返回另一个对
- java小结
花飞月
在开发过程中遇到的各种bug。一、BigDecimal转json时候会丢失精度问题在前台页面data中的BigDecimal数据类型,比如0.0000会变为0,导致精度丢失。data:JSON.stringify(data),解决方法newDecimalFormat("#0.0000").format(map.get("percent"));--指定保留四位小数二、在求概率问题时,两个long型相
- Java小结
小小白心里软
SERIES
DOS命令(理解)(1)切换盘符(掌握)d:回车(2)显示某目录下的所有文件或者文件夹(掌握)dir回车(3)创建文件夹md文件夹名称回车(4)删除文件夹rd文件夹名称回车(5)进入目录(掌握)单级进入cd目录名称多级进入cd目录名称1\目录名称2…(6)回退目录(掌握)单级回退cd…回退根目录cd(7)删除文件del文件名称*.txt可以表示多个文件名称(8)清屏(掌握)cls(9)退出exi
- Java小结(三)——打印完美杨辉三角
莫陌莫墨
Javafor循环杨辉三角
打印了一个10层的等腰杨辉三角//打印杨辉三角publicstaticvoidprintTrigon(){int[][]a=newint[10][10];//定义一个二维数组,用来打印十层的杨辉三角for(inti=0;i<10;i++){a[i][i]=1;//首尾都是1,利用for循环,打印出边界值a[i][0]=1;}/*从第三层开始,等于肩部的两边值相加*/for(inti=2;i<10;
- Java小结
Start___Over
不知不觉中,Java的基础内容已经学完了,剩下也就两个月左右的时间了,感觉在这段java的基础内容里学的更加的蒙了,学完以后还是不会运用。学前面的知识时间花的也比较长,有些知识也会反复的讲,听得多了自然而然的就会懂了,而且那时候的知识点相对而言简单一点,自己琢磨一下,上网查查资料就会明白,课后练习的时间也多,多敲几遍老师上课的代码就能够可以用了。现在学完的Java内容,理解上有点困难,上课的进度也
- JAVA小结
qq_29513775
java01
基本概念1.JDK,JRE,JVM的作用及关系(1)作用JVM:保证Java语言跨平台JRE:Java程序的运行环境JDK:Java程序的开发环境(2)关系JDK:JRE+工具JRE:JVM+类库2.名词解释:2.1关键字:被Java语言赋予特定含义的单词。编程中全部小写;goto和const作为保留字存在。2.2标识符:就是给类,接口,方法,变量等起名字的字符序列。2.3注释:解释说明程序,提高
- java小结
java
我在编写mapreduce程序的时候,测试数据是两个矩阵,每一个矩阵分别存放在一个文件中,文件的每一行是一个三元组(i,j,mij)。
后来一不小心在文件的最后一行多敲了一个回车,在程序中读取文件数据的时候出现数据格式异常的问题,并且影响了程序的正常运行。
String line=val
- java小结1
JavaChaoCo
java编程对象Class多态
1、jdk:开发包javaIDE:java集成开发环境2、如何设置环境变量? 我的电脑------高级------环境变量------系统变量------新建 变量名-----classpath(告诉虚拟机)-----java类文件所在的路径 变量名-----path(告诉windows)---------3、熟悉jdk常用的命令: java: 执行class文件,关联控制台 j
- 寒假自学JAVA小结
u013390476
javaeclipsejdk线程语言
大二的寒假只剩下一周时间了,日子过得真快。我之前利用了一部分时间,学起了JAVA。JAVA是目前世界上最流行的语言,我也希望我能早一点入门JAVA。JAVA是一门几乎完全面对象的语言(除了内置类型int,double,char之类的。其实JAVA有类型封装器,int也能变成一个类Integer)。关于类,封装,继承,多态等概念,在我在学校学习C++的时候已经深入人心。扎实的C++基本功,让我在学习
- 黑马程序员——java小结_007_单例设计模式(懒汉式、饿汉式)
DeathOrRebirth
java懒汉式饿汉式单例设计模式
-------android培训、java培训、期待与您交流!----------为了方便和安全,java的先辈们总结了n多模式,懒汉式和饿汉式就是其中常用的。 此模式目的:整个应用中有且只有一个实例,所有指向该类型实例的引用都指向这个实例。 要保证对象唯一性1.为了避免其他程序过多建立该对象,先禁止其他程序建立该类对象。2.为了让其他程序可以访问该对象,只好在本类中,自定义一个对象
- Java小结
champion_netjava
Java多线程Matlab数据结构游戏java小结
[b]一.继承,多态,重写[/b][u]1.继承:[/u]降低工作量,降低程序的复杂性,使程序提高可扩展性......一个类继承另一个类(一个接口继承另一个接口)的关键字是extends,类之间的继承只能一对一,不能继承多个类。继承的格式:publicclass子类名extends父类名{}一个类继承接口的关键字是implements;一个类可以继承多个接口,接口之间用逗号隔开;继承的格式:pub
- Java小结
沈冠军
java多线程数据结构游戏matlab
一.继承,多态,重写
1.继承 :降低工作量,降低程序的复杂性,使程序提高可扩展性......
一个类继承另一个类(一个接口继承另一个接口)的关键字是extends,类之间的继承只能一对一,不能继承多个类。
继承的格式:public class 子类名 extends 父类名{}
一个类继承接口的关键字是implements;一个类可以继承多个接口,接口之间用逗号隔开;
继承的格式:
- Java小结第一篇(枚举应用)
kadenSH
java框架strutsF#mobile
菜鸟新篇
实习期结束了,写过那么多代码,最近等毕业答辩,有空余时间,也有动力,来回忆开发过程的点点滴滴,权当为自己做总结,积累自己的代码库.若您觉得内容太浅,希望您给予我些许点拨,我将感激不尽,助人者必有好报. 从能想起来的最近的往回倒推吧. 相信很多人有过这样的经历,特别是做j2ee(B/S)的时候, 当从页面传过来一个参数,无论是servlet或者str
- corejava小结 2009年5月9日
hanwesley
java设计模式编程应用服务器D语言
<script>function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.
- Spring的注解积累
yijiesuifeng
spring注解
用注解来向Spring容器注册Bean。
需要在applicationContext.xml中注册:
<context:component-scan base-package=”pagkage1[,pagkage2,…,pagkageN]”/>。
如:在base-package指明一个包
<context:component-sc
- 传感器
百合不是茶
android传感器
android传感器的作用主要就是来获取数据,根据得到的数据来触发某种事件
下面就以重力传感器为例;
1,在onCreate中获得传感器服务
private SensorManager sm;// 获得系统的服务
private Sensor sensor;// 创建传感器实例
@Override
protected void
- [光磁与探测]金吕玉衣的意义
comsci
这是一个古代人的秘密:现在告诉大家
信不信由你们:
穿上金律玉衣的人,如果处于灵魂出窍的状态,可以飞到宇宙中去看星星
这就是为什么古代
- 精简的反序打印某个数
沐刃青蛟
打印
以前看到一些让求反序打印某个数的程序。
比如:输入123,输出321。
记得以前是告诉你是几位数的,当时就抓耳挠腮,完全没有思路。
似乎最后是用到%和/方法解决的。
而今突然想到一个简短的方法,就可以实现任意位数的反序打印(但是如果是首位数或者尾位数为0时就没有打印出来了)
代码如下:
long num, num1=0;
- PHP:6种方法获取文件的扩展名
IT独行者
PHP扩展名
PHP:6种方法获取文件的扩展名
1、字符串查找和截取的方法
1
$extension
=
substr
(
strrchr
(
$file
,
'.'
), 1);
2、字符串查找和截取的方法二
1
$extension
=
substr
- 面试111
文强chu
面试
1事务隔离级别有那些 ,事务特性是什么(问到一次)
2 spring aop 如何管理事务的,如何实现的。动态代理如何实现,jdk怎么实现动态代理的,ioc是怎么实现的,spring是单例还是多例,有那些初始化bean的方式,各有什么区别(经常问)
3 struts默认提供了那些拦截器 (一次)
4 过滤器和拦截器的区别 (频率也挺高)
5 final,finally final
- XML的四种解析方式
小桔子
domjdomdom4jsax
在平时工作中,难免会遇到把 XML 作为数据存储格式。面对目前种类繁多的解决方案,哪个最适合我们呢?在这篇文章中,我对这四种主流方案做一个不完全评测,仅仅针对遍历 XML 这块来测试,因为遍历 XML 是工作中使用最多的(至少我认为)。 预 备 测试环境: AMD 毒龙1.4G OC 1.5G、256M DDR333、Windows2000 Server
- wordpress中常见的操作
aichenglong
中文注册wordpress移除菜单
1 wordpress中使用中文名注册解决办法
1)使用插件
2)修改wp源代码
进入到wp-include/formatting.php文件中找到
function sanitize_user( $username, $strict = false
- 小飞飞学管理-1
alafqq
管理
项目管理的下午题,其实就在提出问题(挑刺),分析问题,解决问题。
今天我随意看下10年上半年的第一题。主要就是项目经理的提拨和培养。
结合我自己经历写下心得
对于公司选拔和培养项目经理的制度有什么毛病呢?
1,公司考察,选拔项目经理,只关注技术能力,而很少或没有关注管理方面的经验,能力。
2,公司对项目经理缺乏必要的项目管理知识和技能方面的培训。
3,公司对项目经理的工作缺乏进行指
- IO输入输出部分探讨
百合不是茶
IO
//文件处理 在处理文件输入输出时要引入java.IO这个包;
/*
1,运用File类对文件目录和属性进行操作
2,理解流,理解输入输出流的概念
3,使用字节/符流对文件进行读/写操作
4,了解标准的I/O
5,了解对象序列化
*/
//1,运用File类对文件目录和属性进行操作
//在工程中线创建一个text.txt
- getElementById的用法
bijian1013
element
getElementById是通过Id来设置/返回HTML标签的属性及调用其事件与方法。用这个方法基本上可以控制页面所有标签,条件很简单,就是给每个标签分配一个ID号。
返回具有指定ID属性值的第一个对象的一个引用。
语法:
&n
- 励志经典语录
bijian1013
励志人生
经典语录1:
哈佛有一个著名的理论:人的差别在于业余时间,而一个人的命运决定于晚上8点到10点之间。每晚抽出2个小时的时间用来阅读、进修、思考或参加有意的演讲、讨论,你会发现,你的人生正在发生改变,坚持数年之后,成功会向你招手。不要每天抱着QQ/MSN/游戏/电影/肥皂剧……奋斗到12点都舍不得休息,看就看一些励志的影视或者文章,不要当作消遣;学会思考人生,学会感悟人生
- [MongoDB学习笔记三]MongoDB分片
bit1129
mongodb
MongoDB的副本集(Replica Set)一方面解决了数据的备份和数据的可靠性问题,另一方面也提升了数据的读写性能。MongoDB分片(Sharding)则解决了数据的扩容问题,MongoDB作为云计算时代的分布式数据库,大容量数据存储,高效并发的数据存取,自动容错等是MongoDB的关键指标。
本篇介绍MongoDB的切片(Sharding)
1.何时需要分片
&nbs
- 【Spark八十三】BlockManager在Spark中的使用场景
bit1129
manager
1. Broadcast变量的存储,在HttpBroadcast类中可以知道
2. RDD通过CacheManager存储RDD中的数据,CacheManager也是通过BlockManager进行存储的
3. ShuffleMapTask得到的结果数据,是通过FileShuffleBlockManager进行管理的,而FileShuffleBlockManager最终也是使用BlockMan
- yum方式部署zabbix
ronin47
yum方式部署zabbix
安装网络yum库#rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm 通过yum装mysql和zabbix调用的插件还有agent代理#yum install zabbix-server-mysql zabbix-web-mysql mysql-
- Hibernate4和MySQL5.5自动创建表失败问题解决方法
byalias
J2EEHibernate4
今天初学Hibernate4,了解了使用Hibernate的过程。大体分为4个步骤:
①创建hibernate.cfg.xml文件
②创建持久化对象
③创建*.hbm.xml映射文件
④编写hibernate相应代码
在第四步中,进行了单元测试,测试预期结果是hibernate自动帮助在数据库中创建数据表,结果JUnit单元测试没有问题,在控制台打印了创建数据表的SQL语句,但在数据库中
- Netty源码学习-FrameDecoder
bylijinnan
javanetty
Netty 3.x的user guide里FrameDecoder的例子,有几个疑问:
1.文档说:FrameDecoder calls decode method with an internally maintained cumulative buffer whenever new data is received.
为什么每次有新数据到达时,都会调用decode方法?
2.Dec
- SQL行列转换方法
chicony
行列转换
create table tb(终端名称 varchar(10) , CEI分值 varchar(10) , 终端数量 int)
insert into tb values('三星' , '0-5' , 74)
insert into tb values('三星' , '10-15' , 83)
insert into tb values('苹果' , '0-5' , 93)
- 中文编码测试
ctrain
编码
循环打印转换编码
String[] codes = {
"iso-8859-1",
"utf-8",
"gbk",
"unicode"
};
for (int i = 0; i < codes.length; i++) {
for (int j
- hive 客户端查询报堆内存溢出解决方法
daizj
hive堆内存溢出
hive> select * from t_test where ds=20150323 limit 2;
OK
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
问题原因: hive堆内存默认为256M
这个问题的解决方法为:
修改/us
- 人有多大懒,才有多大闲 (评论『卓有成效的程序员』)
dcj3sjt126com
程序员
卓有成效的程序员给我的震撼很大,程序员作为特殊的群体,有的人可以这么懒, 懒到事情都交给机器去做 ,而有的人又可以那么勤奋,每天都孜孜不倦得做着重复单调的工作。
在看这本书之前,我属于勤奋的人,而看完这本书以后,我要努力变成懒惰的人。
不要在去庞大的开始菜单里面一项一项搜索自己的应用程序,也不要在自己的桌面上放置眼花缭乱的快捷图标
- Eclipse简单有用的配置
dcj3sjt126com
eclipse
1、显示行号 Window -- Prefences -- General -- Editors -- Text Editors -- show line numbers
2、代码提示字符 Window ->Perferences,并依次展开 Java -> Editor -> Content Assist,最下面一栏 auto-Activation
- 在tomcat上面安装solr4.8.0全过程
eksliang
Solrsolr4.0后的版本安装solr4.8.0安装
转载请出自出处:
http://eksliang.iteye.com/blog/2096478
首先solr是一个基于java的web的应用,所以安装solr之前必须先安装JDK和tomcat,我这里就先省略安装tomcat和jdk了
第一步:当然是下载去官网上下载最新的solr版本,下载地址
- Android APP通用型拒绝服务、漏洞分析报告
gg163
漏洞androidAPP分析
点评:记得曾经有段时间很多SRC平台被刷了大量APP本地拒绝服务漏洞,移动安全团队爱内测(ineice.com)发现了一个安卓客户端的通用型拒绝服务漏洞,来看看他们的详细分析吧。
0xr0ot和Xbalien交流所有可能导致应用拒绝服务的异常类型时,发现了一处通用的本地拒绝服务漏洞。该通用型本地拒绝服务可以造成大面积的app拒绝服务。
针对序列化对象而出现的拒绝服务主要
- HoverTree项目已经实现分层
hvt
编程.netWebC#ASP.ENT
HoverTree项目已经初步实现分层,源代码已经上传到 http://hovertree.codeplex.com请到SOURCE CODE查看。在本地用SQL Server 2008 数据库测试成功。数据库和表请参考:http://keleyi.com/a/bjae/ue6stb42.htmHoverTree是一个ASP.NET 开源项目,希望对你学习ASP.NET或者C#语言有帮助,如果你对
- Google Maps API v3: Remove Markers 移除标记
天梯梦
google maps api
Simply do the following:
I. Declare a global variable:
var markersArray = [];
II. Define a function:
function clearOverlays() {
for (var i = 0; i < markersArray.length; i++ )
- jQuery选择器总结
lq38366
jquery选择器
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
- 基础数据结构和算法六:Quick sort
sunwinner
AlgorithmQuicksort
Quick sort is probably used more widely than any other. It is popular because it is not difficult to implement, works well for a variety of different kinds of input data, and is substantially faster t
- 如何让Flash不遮挡HTML div元素的技巧_HTML/Xhtml_网页制作
刘星宇
htmlWeb
今天在写一个flash广告代码的时候,因为flash自带的链接,容易被当成弹出广告,所以做了一个div层放到flash上面,这样链接都是a触发的不会被拦截,但发现flash一直处于div层上面,原来flash需要加个参数才可以。
让flash置于DIV层之下的方法,让flash不挡住飘浮层或下拉菜单,让Flash不档住浮动对象或层的关键参数:wmode=opaque。
方法如下:
- Mybatis实用Mapper SQL汇总示例
wdmcygah
sqlmysqlmybatis实用
Mybatis作为一个非常好用的持久层框架,相关资料真的是少得可怜,所幸的是官方文档还算详细。本博文主要列举一些个人感觉比较常用的场景及相应的Mapper SQL写法,希望能够对大家有所帮助。
不少持久层框架对动态SQL的支持不足,在SQL需要动态拼接时非常苦恼,而Mybatis很好地解决了这个问题,算是框架的一大亮点。对于常见的场景,例如:批量插入/更新/删除,模糊查询,多条件查询,联表查询,