- Python-To-Do-List
逆水寻舟
pythonpython开发语言
今天跟着油管学习创建了简单的代办事项列表应用程序,使用了python的tkinter库来制作图形用户界面(GUI)1.导入tkinter库pythonCopycodeimporttkinterfromtkinterimport*这两行导入了tkinter模块,它是Python的标准GUI库,用于创建窗口、按钮、文本输入框等界面元素。2.初始化窗口pythonCopycoderoot=Tk()roo
- JPG TO PDF(用python将图片转换为pdf格式)
hhcgchpspk
python开发语言
importfpdffromtkinterimport*importosfromtkinterimportfiledialogfromtkinter.messageboximport*fromtkinterimportttkimportrandomimporttkinterastkdefhp(width,height):hp=Tk()hp.title("JpgToPdf")hp.resizable
- 【笔记】MTK与高通平台emergency APN配置差异
Dic-
APNDataTelephony#AndroidTelephonyAndroidTelephony移动网络3GPP通信协议高通MTK
协议规定根据3GPP协议,emergencyAPN配置需要注意。3GPPspecTS24.3016.5.1.2UErequestedPDNconnectivityprocedureinitiationInordertorequestaPDNconnectionforemergencybearerservices,theUEshallnotincludeanAPNinthePDNCONNECTIVI
- 带tkinter界面的m3u8单程下载
卡卡啦啦_
采用tkinter模块搭建GUI界面image代码如下:importrequestsfromtkinterimport*header={'User-Agent':'Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/76.0.3809.132Safari/537.36'}defts_url():
- Android 12.0 MTK Camera2 设置默认拍照尺寸功能实现
安卓兼职framework应用工程师
android12.0Rom定制化高级进阶androidcamera2设置拍照尺寸camera2默认拍照尺寸默认图片大小
1.前言在12.0的系统rom定制化开发中,在mtk平台的camera2关于拍照的一些功能修改中,在一些平台默认需要设置最大的分辨率来作为拍照的分辨率,所以就需要了解拍照尺寸设置流程,然后来实现相关的功能如图:2.MTKCamera2设置默认拍照尺寸功能实现的核心类\vendor\mediatek\proprietary\packages\apps\Camera2\feature\setting\
- 开工第一天的精神状态“昨晚失眠”开工第一天的你还好吗?
命运之光
不想上班开工第一天的精神状态python
目录不想上班杂乱的内心独白杂乱的内心独白与代码结语不想上班一想到要返工就有点emo的你并不是孤身一人我这一生,如履薄冰,新的一天,从不想上班开始。杂乱的内心独白我杂乱的内心啊杂乱的内心独白与代码importtkinterastkfromPILimportImage,ImageTkimportrandomimporttkinterastkfromtkinterimportmessageboximpo
- python tkinter 常用组件封装
SkTj
"""wrapupwidgetconstructioninfunctionsforeasieruse,makingsomeassumptions(e.g.,expansion);useextraskwargsforwidth,font/color"""fromtkinterimport*defframe(root,side=TOP,extras):widget=Frame(root)widget.
- 机器学习LDA线性判别器代码实现
Longlongaaago
机器学习LDA线性判别分析代码实现
机器学习LDA线性判别器代码实现西瓜书P60线性判别器LDA代码实现:importnumpyasnpimportmatplotlib.pyplotaspltdefload_data(file_name):'''数据导入函数:paramfile_name:(string)训练数据位置:return:feature_data(mat)特征lable_data(mat)标签'''fr=open(file
- python gui界面实例-Python GUI学习之登录系统界面篇
weixin_37988176
导言篇:我的python环境是:python3.6.5这里我选择的GUI编程包是:tkintertkinker在python2.5以后就是自带包了,所以我们不需要另外安装tkinker相对与其他pythonGUI编程的包而已,是相对容易入手的代码篇:#这是系统的登录界面importtkinterfromtkinterimportmessageboxclassLogin(object):def__i
- 用Python批量裁取图,来获取文件夹中所有图片名
葡萄_ac1c
批量截图(截取正方形图,哪个边短就用哪个边作为标准来截取)功能是裁取图片中红色框的部分。代码为:importsysfromtkinter.tiximportTkfromPILimportImageimportosimporttkinter#获取文件夹中所有图片名defgetFileName(filePath):#file_dir=r"D:\\image123"file_dir=filePathi=
- python利用class传递get函数内容取值为空的问题
独白不白
python开发语言pycharm数据库开发
在我学习tkinter库时,发现class方式的写法,但是在class中的两个函数之间进行get函数内容的传递时,发现get的值为空。部分代码如下(init函数的最末尾):importtkinterastkfromtkinterimportmessageboximportjsonclassqm:def__init__(self):frame1=tk.Frame(root)frame1.pack()
- 基于python内置库——Tkinter实现简单的学生基本信息管理功能
苏俗
python实战pythonjava服务器
设计了一个窗体,实现了一个简单的学生基本信息管理功能,可以完成对学生基本信息的增加、删除、修改功能,学生基本信息包括学号、姓名、性别、班级、院系、身份证号码、QQ号、手机号码、电子邮箱、宿舍、家庭住址。源码:fromtkinterimport*#导入Tkinter库中的所有类和方法importtkinter.messageboxasmb#从Tkinter库导入消息框模块,用于显示警告或信息消息框f
- 数据库期末复习之例题汇总
Dodo·D·Caster
数据库数据库
文章目录数据库期末复习之例题汇总第1讲绪论数据-P11层次模型-P69网状结构-P81模式与实例-P101第2讲关系数据库笛卡尔积–P13关系模式-P29实体完整性-P42关系间的引用例2.1-P46关系间的引用例2.2-P47关系间的引用例2.3-P48外码例2.1-P50外码例2.2-P51外码例2.3-P52参照完整性规则延申-P55用户定义的完整性-P60集合运算并(Union)-P66集
- python:批量压缩图片质量
獨孤記憶
image.pngimage.png#compress_image#click->dosomethingfromtkinterimport*fromtkinter.filedialogimport*fromPILimportImageasImginfo={'path':[]}defmake_app():app=Tk()#标签Label(app,text='图片压缩小工具',font=('Hack'
- python练手_59-画图(丑)
学子CH
#-*-coding:utf-8-*-#@Author:CH"""@project:pythonstudy@time:2019/1/7-23:53@file_name:【程序59】画图(丑).py@IDE:PyCharm@else:DONOTSTOPSTUDYING!!!"""#题目画图,综合例子。##程序分析丑。if__name__=='__main__':fromtkinterimport*c
- gitignore的那些事
努力的画好人生这幅画
一、简介每个Git项目中都需要一个“.gitignore”文件,这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中。二、常用的规则/mtk/过滤整个文件夹*.zip过滤所有.zip文件/mtk/do.c过滤某个具体文件被过滤掉的文件就不会出现在你搭建的GitHub库中了,当然本地库中还有,只是push的时候不会上传。除了以上规则,还可以指定要将哪些文件添加到版本管理中。!src/不过滤该文
- python-分享篇-表白
fo安方
#python分享篇pythonpygame开发语言
文章目录准备代码效果准备需要准备如下文件,已放置在下载处,名为“python-分享篇-表白”代码'''Function:仿抖音表白神器Author:Charles微信公众号:TONOW'''importsysimportcfgimportrandomimportpygamefromtkinterimportTk,messagebox'''Function:按钮类InitialArgs:--x,y:
- python中save是什么意思_如何在Python中生成save函数
要一沓珍珠奶茶
所以我用python做了一个记事本克隆,但是我被卡住了。我想将doNothing()函数改为Save函数。我希望用户能够命名他在程序中写的文件,并将其保存在他想要的地方。在fromtkinterimport*#**********Functions**********defdoNothing():print("Ok,iwon't!")#**********TKInitialization*****
- 开关机、重启时间优化
柏林电视台
[DESCRIPTION]开关机、重启时间优化:开机性能优化:是用功能和其它因素多方面平衡的结果,片面追求单方面的性能没有太大意义;有些产品设计开机动画非常酷炫,动画图片过多、高帧率会影响开机速度,这时就需要看是开机速度优先还是体验优先;[SOLUTION]1.zygote,预加载class、resources;加载的多了,会影响开机时间;/sdcard/mtklog/bootprof12450.
- 手机
右腕
SOC:整合CPU、GPU、RAM、通信基带、GPS模块的系统化解决方案,例如高通,华为海思,MTK,三星,A11海思:麒麟980》骁龙845》骁龙835高通:骁龙845》骁龙835》骁龙710ROMUFS2.1的读写速度是eMMC5.1的三倍左右RAM安卓阵营4G勉强够用,6G起步为妙京东自营,其次天猫,再其次淘宝,最后京东第三方华为荣耀20麒麟9808GB128GBUFS2.12099IQOO
- MTK USB WIFI MT76X2u 0e8d:7612适配
北极星6号
外设网络linuxwifi
背景:新买一批香橙派orangepi5,用来做测试验证,同时采购一批wifi,需要重新适配.记录下适配WIFI的调试过程.淘宝USBwifi链接问题orangepi插入USBwifi,iplink没有发现新的无线网卡设备.lsusb查看usb信息ID0e8d:7612MediaTekInc.MT7612U802.11a/b/g/n/acWirelessAdapter解决流程1.添加MTKwifi驱
- 一文读懂量化交易中的算法交易使用!
jiucaixiuyang
python区块链人工智能
高频交易策略利用计算机,在人类交易者能够处理他们观察到的信息之前,根据以电子方式接收到的信息做出精心的决定来启动订单。为通过挂单被动成交来追求更好的交易均价,随着人工智能,机器学习等技术的引入,逐渐演变为部分结合智能信号的主动算法,完全依赖智能信号的智能算法。算法交易怎么开通使用?https://mp.weixin.qq.com/s?__biz=Mzg4MTkwMDE2Nw==&mid=22474
- Unity类银河恶魔城学习记录4-7 P60 Counter‘s attack window 源代码
SuKacZev
学习游戏引擎类银河C#unity
Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考此代码仅为较上一P有所改变的代码【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibiliEnemy.csusingSystem.Collections;usingSystem.Collections.Generic;usingUnity.VisualScripting;usingUnity
- Helio 升级为 LISTA DAO,开启多链时代新篇章并宣布积分空投计划
区块链小八歌
区块链人工智能
HelioProtocol是BNBChain上排名第一的去中心化稳定币协议,其推出的超额抵押和清算机制支持的去中心化稳定币HAY,在BNBChain有非常广泛的应用,包括流动性挖掘、质押、交易、储值等!2023年7月,HelioProtocol和Synclub进行了战略合并,通过纳入更多的LST作为抵押品来释放HAY的潜力。HelioProtocol通过和Synclub的合并,将BNBChain上
- 【openwrt】MT7981 5G WiFi MAC地址不生效问题分析及解决方案
wellnw
WiFiDriverWiFi
问题描述MT7981默认sdk5GMAC地址根据2.4GMAC地址随机生成,我们写到Factory区域的值不生效问题分析查看EEPROMMAC位置查看MTKEEPROM文档MT7981_EEPROM_Content_Introduction_V10_20211207.pdf可以看到EEPROM里面有两个位置可以存放MAC,0x04~0x09和0x0a~0x0f查看mt7981的工厂区cat/pro
- 【2015年读书笔记】46、《黄宗羲传略》
一切来得及
10月6日:火车上一直在读李洁非的《黄宗羲传略》。这本书是10月2日在候车厅买的,一直在读,但至今才读到P60。它太深刻、深奥了,几乎每一段都有不懂的词句,但细想一会也能理解。书中谈传主在安徽的行踪,使我有同伟人同游之感。10月8日:读至P80,略超三分之二。伟大的思想家也并非处处伟大。黄宗羲对资助他的恩人十分轻视,处处以“学问大家”自居,并以此为衡量人的标准。结果是亲朋至亲都对他有意见。10月1
- 【python】python爱心代码【附源码】
闫英杰
爬虫案例100pythonpygame人工智能
一、实现效果:欢迎来到英杰社区https://bbs.csdn.net/topics/617804998二、完整代码:importmathimportrandomimportthreadingimporttimefrommathimportsin,cos,pi,logfromtkinterimport*importre#烟花相关设置Fireworks=[]maxFireworks=8CANVAS_
- 各个厂商手机不打印log日志的解决方法
jingyening
android
360手机1)在桌面的【其他应用】文件夹找到【用户反馈】,或通过搜索找到【用户反馈】2)点击系统问题反馈3)等复现问题,让问题出现2~3次4)问题复现之后,直接到文件管理、本地存储,找到根目录下的“log或者mtklog”文件,将文件压缩后发送给工作人员MIUI:1)在拨号键输入*#*#284#*#*来抓日志(不包括前后空格),过程可能要1分钟左右,成功后通知栏会提示;2)等复现问题3)日志存放在
- MTKView显示CIImage
如素_4aea
importUIKitimportMetalimportMetalKitclassCIImageView:MTKView{privatevarciContext:CIContext?varimage:CIImage?{didSet{setNeedsDisplay()}}overrideinit(frameframeRect:CGRect,device:MTLDevice?){super.init(
- Android 8.1 mtkCamera 隐藏 EffectView
Jeffries_C
AndroidAndroidCamera2android
Android8.1mtkCamera隐藏EffectView最近接到项目需求,想要隐藏mtkCameraLauncher界面中的EffectView,具体修改参照如下:/vendor/mediatek/proprietary/packages/apps/Camera2/host/src/com/mediatek/camera/ui/CameraAppUI.java-mEffectViewMana
- 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很好地解决了这个问题,算是框架的一大亮点。对于常见的场景,例如:批量插入/更新/删除,模糊查询,多条件查询,联表查询,