展开

关键词

Java——Spring Boot 整合 Mybatis

generatorConfig.xml在 IntelliJ IDEA 开发环境下,此文件需要放在 resource 根目录下,mybatis generator 默认加载此目录的配置文件,以下文件需要根据自己的情况行配置

19410

Java——MySql中的varchar类型

在存储或检索过程中不行大小写转换。 VARCHAR值保存时只保存需要的字符数,另加一个字节来录长度(如果列声明的长度超过255,则使用两个字节)。VARCHAR值保存时不行填充。当值保存和检索时尾部的空格仍保留,符合标准SQL。 由于是可变长度,因此实际存储的时候是实际字符串再加上一个录字符串长度的字节(如果超过255则需要两个字节)。如果分配给CHAR或VARCHAR列的值超过列的最大长度,则对值行裁剪以使其适合。 一个BLOB是一个能保存可变数量的数据的二制的大对象。4个BLOB类型TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB仅仅在他们能保存值的最大长度方面有所不同。 这里在零碎录两,对于int类型的,如果不需要存取负值,最好加上unsigned;对于经常出现在where语句中的字段,考虑加索引,整形的尤其适合加索引。

68430
  • 广告
    关闭

    50+款云产品免费体验

    提供包括云服务器,云数据库在内的50+款云计算产品。打造一站式的云产品试用服务,助力开发者和企业零门槛上云。

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java架构:一不小心就死锁了,怎么办?

    试想互联网支付盛行的当下,8 亿网民每人每天一交易,每天就是 8 亿交易;每交易都对应着一次转账操作,8 亿交易就是 8 亿次转账操作,也就是说平均到每秒就是近 1万次转账操作,若所有的转账操作都串行 通过账本管理员拿账本对应到编程领域,“同时申请”这个操作是一个临界区,我们也需要一个角色(Java 里面的类)来管理这个临界区,我们就把这个角色定为 Allocator。 原因是 synchronized 申请资源的时候,如果申请不到,线程直接入阻塞状态了,而线程入阻塞状态,啥都干不了,也释放不了线程已经占有的资源。 你可能会质疑,“Java 作为排行榜第一的语言,这都解决不了?” 你的怀疑很有道理,Java 在语言层次确实没有解决这个问题,不过在 SDK 层面还是解决了的,java.util.concurrent 这个包下面提供的 Lock 是可以轻松解决这个问题的。

    11120

    Java程序员实操—大型网站架构技术之负载均衡详解(1)

    欢迎关注专栏:Java架构技术。里面有大量batj面试题集锦,还有各种技术分享,如有好文章也欢迎投稿哦。 部分内容摘自读书。 2.1DNS负载均衡 最早的负载均衡技术,利用域名解析实现负载均衡,在DNS服务器,配置多个A录,这些A录对应的服务器构成集群。大型网站总是部分使用DNS解析,作为第一级负载均衡。 mac地址,行负载均衡。 下一篇:Java程序员实操—大型网站架构技术之负载均衡详解(2) 感谢您耐心看完的文章欢迎关注专栏:Java架构技术

    22620

    Java程序员实操—大型网站架构技术之负载均衡详解(4)

    欢迎关注专栏:Java架构技术。里面有大量batj面试题集锦,还有各种技术分享,如有好文章也欢迎投稿哦。 上一篇:Java程序员实操—大型网站架构技术之负载均衡详解(3)三、LVS负载均衡LVS是一个开源的软件,由毕业于国防科技大学的章文嵩博士于1998年5月创立,用来实现Linux平台下的简单负载均衡 (对Mysql行负载均衡,对后端的DB节点行检测和负载均衡)能够补充Nginx的一些缺点比如Session的保持,Cookie引导等工作4.2.均衡策略支持四种常用算法:1.roundrobin:轮询 感谢您耐心看完的文章欢迎关注专栏:Java架构技术。里面有大量batj面试题集锦,还有各种技术分享,如有好文章也欢迎投稿哦。

    22760

    Java程序员实操—大型网站架构技术之负载均衡详解(3)

    欢迎关注专栏:Java架构技术。里面有大量batj面试题集锦,还有各种技术分享,如有好文章也欢迎投稿哦。 上一篇:Java程序员实操—大型网站架构技术之负载均衡详解(2)本次分享大纲软件负载均衡概述Ngnix负载均衡Lvs负载均衡Haproxy负载均衡本次分享总结一、软件负载均衡概述硬件负载均衡性能优越 此时再把请求发给内核(程没有直接IO的能力),由内核加载数据。内核查找到数据之后,会把数据复制给用户程,由用户程对数据行封装,之后交给内核,内核在行tcpip首部的封装,最后再发给客户端。 下一篇:Java程序员实操—大型网站架构技术之负载均衡详解(4) 感谢您耐心看完的文章欢迎关注专栏:Java架构技术。 顺便给大家推荐一个Java技术交流群:908676731,点击加入里面会分享一些资深架构师录制的视频资料:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM

    24740

    Java程序员实操—大型网站架构技术之负载均衡详解(1)

    欢迎关注专栏:Java架构技术。里面有大量batj面试题集锦,还有各种技术分享,如有好文章也欢迎投稿哦。 部分内容摘自读书。本次分享大纲负载均衡原理DNS负载均衡HTTP负载均衡IP负载均衡链路层负载均衡混合型P负载均衡一、负载均衡原理系统的扩展可分为纵向(垂直)扩展和横向(水平)扩展。 2.1DNS负载均衡最早的负载均衡技术,利用域名解析实现负载均衡,在DNS服务器,配置多个A录,这些A录对应的服务器构成集群。大型网站总是部分使用DNS解析,作为第一级负载均衡。如下图:? 下一篇:Java程序员实操—大型网站架构技术之负载均衡详解(2)感谢您耐心看完的文章欢迎关注专栏:Java架构技术。里面有大量batj面试题集锦,还有各种技术分享,如有好文章也欢迎投稿哦。 顺便给大家推荐一个Java技术交流群:908676731,点击加入里面会分享一些资深架构师录制的视频资料:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM

    43760

    Java程序员实操—大型网站架构技术之负载均衡详解(2)

    欢迎关注专栏:Java架构技术。里面有大量batj面试题集锦,还有各种技术分享,如有好文章也欢迎投稿哦。 上一篇:Java程序员实操—大型网站架构技术之负载均衡详解(1)三、负载均衡算法常用的负载均衡算法有,轮询,随机,最少链接,源地址散列,加权等方式;3.1 轮询 将所有请求,依次分发到每台服务器上 缺点:目标服务器宕机后,会话会丢失;3.5 加权 在轮询,随机,最少链接,Hash’等算法的基础上,通过加权的方式,行负载服务器分配。 五、本次分享总结以上主要从负载均衡原理,分类,算法,硬件负载均衡行了介绍。 下一篇:Java程序员实操—大型网站架构技术之负载均衡详解(3) 感谢您耐心看完的文章欢迎关注专栏:Java架构技术

    21240

    Python

    例如,在一个list中,删掉偶数,只保留奇数,可以这么写:list(filter(lambda x: x%2 == 1, ))sorted函数Python内置的sorted()函数就可以对list行排序 此外,sorted()函数还可以接收一个key函数来实现自定义的排序,例如按绝对值大小排序:sorted(, key=abs)sorted(, key=str.lower, reverse=True)高函数 map, reduce, filter, sorted都是高函数。

    18120

    Redis

    本文为大家总结了关于 Redis 常见用法的指南,希望帮助大家加深对这门技术的理解。文章作者:何永康,腾讯 CSIG 后台研发工程师。 一、Redis 基础数据结构 1. Redis 的 set 底层也是一个 Map 结构,不同于 Java 的是:alue 是一个 NULL。由于 set 的特性,它可以用于去重逻辑,这一点在 Java 中也经常使用。 二、Redis 使用 1. 布隆过滤器 Redis 在 4.0 以后支持布隆过滤(准确的来说是支持了布隆过滤器的插件),给 Redis 提供了强大的去重功能。 (2)AOF 日志只录 Redis 对内存修改的指令录,Redis 提供了一个 bgrewriteaif 的指令对 AOF 行压缩。 原因分析 查看慢查询,由于者本身机器没有慢查询,所以这里看到是空(实在尴尬,这里没有可用的例子~~) ?

    23030

    MySQL-01

    左边是数据表,一共有两列七条录,最左边的是数据录的物理地址(注意逻辑上相邻的录在磁盘上也并不是一定物理相邻的)。 为了加快Col2的查找,可以维护一个右边所示的二叉查找树,每个节点分别包含索引键值和一个指向对应数据录物理地址的指针,这样就可以运用二叉查找快速获取到相应数据。 2) 通过索引列对数据行排序,降低数据排序的成本,降低CPU的消耗。 劣势(千羽在面试时也被问到了)1) 实际上索引也是一张表,该表中保存了主键与索引字段,并指向实体类的录,所以索引列也是要占用空间的。 2) 虽然索引大大提高了查询效率,同时却也降低更新表的速度,如对表行INSERT、UPDATE、DELETE。

    11510

    Numpy-

    利用数组行数据分析np.where是三元表达式x if condition else y的矢量化版In : arrOut:array(, , , ]) # 大于零替换成2,小于零替换成-2In : np.where :array(, , , ]) # 大于零替换成2,小于零则不变In : np.where(arr>0, 2, arr)Out:array(, , , ])数学和统计方法以下方法可以在对某个轴向的数据行统计 Out: 190 In : arr.sum(axis=1)Out: array() In : arr.sum(axis=0)Out: array() 方法 说明 sum 对数组中所有或者某个轴向的数据行求和 因此可以使用sum对布尔型数组的True值行计数。

    11410

    Pandas-

    1) sum 值的总和 mean 值的平均数 median 值的算术中位数(50%分位数) mad 根据平均值计算平均绝对离差 var 样本值的方差 std 样本值的标准差 skew 样本值的偏度(三矩 ) kurt 样本值的峰度(四矩) cumsum 样本值的累计和 cummin、cummax 样本值的累计最大值和累计最小值 cumprod 样本值的累计积 diff 计算一差分(对时间序列很有用) 留个P146唯一值、值计数以及成员资格unique方法可以得到Series中唯一值的数据,返回的唯一值是未排序的。value_counts用于计算一个Series中各值出现的概率。 True2 True3 True4 False5 False6 False7 Falsedtype: bool处理缺失数据NA处理方法 方法 说明 dropna 根据各标签的值中是否存在缺失数据对轴标签行过滤

    16820

    Android 解密-Java 类加载器

    分配内存时将位于中间的指针指示器向空闲的内存移动一段与对象大小相等的距离,这样来完成分配内存操作空心列表:如果Java堆内存不是规整的,则需要由虚拟机维护一个列表来录那些内存时可用的,这样分配时,从列表查询足够大的内存分配给对象 成员行初始化递归调用超类的构造方法调用子类的构造方法应用段当对象被创建,并分配给变量赋值时,状态就切换到了应用段。 ,并且垃圾收集器准备好对该对象的内存空间重新分配,如果对象重写finalize方法,就会调用该方法终结段在对象执行完finalize方法仍然处于不可达,或者对象没有重写finalize方法,则对象入终结段 ,并等待垃圾收集器回收对象空间**对象空间重新分配段当垃圾收集器对对象的内存空间行回收或者再分配时,这个对象就会彻底消失被标不可达的对象会被垃圾收集器立即回收不会,被标对象会入收集段,如果该对象重写了 finalize方法,就调用,否则入终结段,这时才会被垃圾收集器回收。

    14320

    python【2】 --- 一

    Unicode字符串用uxxx表示unicode,而在3.x中,所有字符串都被视为unicode,因此,写uxxx和xxx是完全一致的,而在2.x中以xxx表示的str就必须写成bxxx,以此表示“二制字符串

    13720

    Sass-学习篇】

    特别说明:没有sass基础请移步:【Sass-学习【基础篇】】http:www.cnblogs.compadding1015articles7056323.html最底部附结构图(实在是结构图太长了没办法 来判断传参数的值来控制 display 的值。 #{$span}#{$i}{ 给1-12编号的span定义不同、递增的宽度,并调用占位符以引用相同的代码块 width: $sWidth * $i;宽度这里总是想这么写,最后总是忘中间间隔的计算     如果列表只有一个列表项时,那么插入来的值将和原来的值会以空格的方式分隔;  如果列表中列表项是以空格分隔列表项,那么插入来的列表项也将以空格分隔;  如果列表中列表项是以逗号分隔列表项,那么插入来的列表项也将以逗号分隔 列表中没有找到 dotted 8 false 9 >> index(1px solid red,solid) 列表中找到 solid 值,并且返回他的位置值 210 2 1 2 3 4 5 6 Sass篇知识汇总

    49520

    Sass-学习篇】

    特别说明:没有sass基础请移步:【Sass-学习【基础篇】】http:www.cnblogs.compadding1015articles7056323.html最底部附结构图(实在是结构图太长了没办法 来判断传参数的值来控制 display 的值。 #{$span}#{$i}{ 给1-12编号的span定义不同、递增的宽度,并调用占位符以引用相同的代码块 width: $sWidth * $i;宽度这里总是想这么写,最后总是忘中间间隔的计算     如果列表只有一个列表项时,那么插入来的值将和原来的值会以空格的方式分隔;  如果列表中列表项是以空格分隔列表项,那么插入来的列表项也将以空格分隔;  如果列表中列表项是以逗号分隔列表项,那么插入来的列表项也将以逗号分隔 列表中没有找到 dotted 8 false 9 >> index(1px solid red,solid) 列表中找到 solid 值,并且返回他的位置值 210 2 1 2 3 4 5 6 Sass篇知识汇总

    86380

    Go关于Error

    这种姿势来行判断。但是也不得不说,这种姿势是最不灵活的错误处理策略,并且不能对于错误提供有用的上下文。Sentinel errors 成为API的公共部分。 如果你的公共函数或方法返回一个特定值的错误,那么该错误就必须是公共的,当然要有文档录,这最终会增加API的表面积。Sentinel errors 在两个包之间创建了依赖。 = nil { log.Println(unalbe to write:,err) 这里录了日志 return err 将日志行上抛给调用者 } return nil} func WriteConfig = nil { log.Printf(cound not marshal config:%v, err) 忘return } if err := WriteAll(w, buf); err ! errors.Cause 获取root error即根因,在行和sentinel error行等值判定一旦错误被处理,包括你打印日志,或者降级处理等,这个时候你就不应该再向上抛出err,而应该return

    10110

    Linux(2)| 命令

    当你知道你要找的文件名,但是你忘了它被放在哪个目录下,要找到该文件时,用find。(2)怎么用find?find 路径 -name 文件名1.2、grep功能:在一个文本文件中,查找某个词。 whereis ls区别which只显示二制文件的路径whereis显示二制文件的路径,和其源码或man手册位置1.4、uname功能:查看系统信息举例:uname -a1.5、开机和关机shutdown adduser和useradd的区别:adduser是一个脚本,而useradd是一个二制应用程序。 chmod (change mode)修改文件权限,比较常用,要得chown (change owner,修改属主)chgrp (change group,修改文件的组)那么,具体要怎么修改呢? 第二种修改权限的方法:在原来的权限基础上行修改,即增加或减少某权限。三个组用户的编码依次为: 属主u,属主所在的组g,其他用户o。

    16250

    Java训练营 第一周JVM 预习

    JRE启动JVM实例,加载、验证、执行Java字节码及依赖库,运行Java程序。 请求响应时间吞吐量:交易类每秒事务数(TPS),查询类每秒请求数(QPS)系统容量:硬件配置性能调优总结:第一步:收集数据,制定指标第二步:分析解决瓶颈问题3.JVM基础知识1)编程语言分类机器语言:二制编码汇编语言 号槽位值加1goto 18: 跳到循环开始地方4.12.算术运算指令与类型转换指令i2d: int to doubleinic 不需要将数值load到操作数栈,直接对LocalVariableTable值行运算 类加载机制5.1.类的生命周期和加载过程一个类在JVM里的生命周期有7个段,分别是加载(Loading)、验证 (Verification)、准备(Preparation)、解析(Resolution 参考资料极客时间-Java训练营

    44500

    扫码关注云+社区

    领取腾讯云代金券