
Java
文章平均质量分 87
kestiny
这个作者很懒,什么都没留下…
展开
-
索引不是银弹
数据库索引不是性能优化的万能良药,使用不好还会导致性能更差的情况发生!原创 2024-01-13 07:18:40 · 977 阅读 · 0 评论 -
MySQL索引 Error1071
MySql索引的常见错误:Error 1071:Specified key was too long,他的解法您知道多少种呢?原创 2023-11-25 22:28:50 · 2440 阅读 · 0 评论 -
数据结构与算法学习-01数组与链表
数组与链表 数组与链表,在数据结构中都属于线性表。所谓线性表,是指所有元素都排列在一个维度上;对其中的任意一个元素来说,除了头和尾,都有且只有一个前驱元素和一个后继元素。数组数组的实现逻辑储存:数组储存在连续的内存中。访问:因为数组存储的内存连续,因此支持随机访问。所谓随机访问,也就是直接下标操作。增加:因为数组内存的连续性,因此若要增加元素,为保持数组的线性,必须把此元素之后的所有元素依次后移。删除:删除同理增加元素,必须把元素依次前移,以保证数组的线性和完整性。数组的时间复杂度原创 2020-07-03 22:04:03 · 593 阅读 · 0 评论 -
03-哈希表
哈希表什么是哈希表 哈希表(Hash table,也叫散列表),是根据关键码值(Key)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。 给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(Hash) 函数。什么是哈希冲突(collision) 在创建哈希表的过程中,若给定两个不原创 2020-07-14 21:50:27 · 223 阅读 · 0 评论 -
数据结构与算法学习-02栈与队列
栈与队列 栈与队列,在数据结构中也属于线性表。栈(Stack)栈的实现逻辑 栈是一种特殊的表,其特殊在于插入与删除操作只能在末端(也就是栈顶)进行,因此栈是**后进先出(LIFO)**的线性表。栈的操作也就包含了出栈(Pop),入栈(Push)和获取栈顶元素(Top)。栈的实现方式有两种,一种是数组形式的栈(如下图),另外一种是链表形式的栈。栈的时间复杂度操作时间复杂度访问O(n)搜索O(n)插入O(1)删除O(1)队列(Queue)原创 2020-07-03 22:08:25 · 198 阅读 · 0 评论 -
前端跨域的原则
前端跨域的原则与避免途径1.跨域 跨域资源共享(Cross-Origin Resource Sharing, CORS)是为解决 Ajax 技术难实现跨域问题而提出的一个规范,这个规范试着从根本上解决安全的跨域资源共享问题。2.option请求 option请求是一种探测性的请求,通过这个方法,客户端可以在采取具体资源请求之前,决定对该资源采取何种必要的措施。3.跨域解决方案 若要允许跨域,传统的解决方案是服务器端设置 Access-Control-Allow-Origin: *,但是这是原创 2020-07-16 22:40:51 · 456 阅读 · 0 评论 -
04-MyBatis缓存
MyBatis的缓存缓存介绍为什么使用缓存 在数据库使用的过程中,有一些数据的查询频次远大于修改,甚至是不会进行修改的,如果将用户的这部分数据放在缓存(内存)中,用户去查询数据就不用从磁盘上(关系型数据库数据文件)查询,从缓存中查询,从而提高查询效率,解决了高并发系统的性能问题。因此,缓存是非常有必要的,但是也要注意,对于使用频次不高,或者经常修改的数据进行缓存也会加大系统开销。MyBatis缓存 MyBatis包含一个非常强大的查询缓存特性,它可以非常方便地定制和配置缓存。MyBatis默认原创 2020-07-16 22:40:22 · 243 阅读 · 0 评论 -
03-MyBatis动态SQL
MyBatis动态SQLMyBatis的动态SQL比较多,但是常用的也就几个,包括if,where,set,choose.ifif语句是条件判断,例如判断type不为空,则增加type语句<if test="type != null">type=#{type}</if>where在查询语句中,我们经常需要根据给定的不同数据类型,查询不同的语句,动态where此时正当用。<select id="select" resultType="person">原创 2020-07-04 19:51:56 · 249 阅读 · 0 评论 -
02-MyBatis基本使用
MyBatis基本使用MyBatis是一个半自动化的ORM(对象关系映射)框架,她的核心就在于Sql语句和对象的关系映射上面。总的来说,MyBatis的对象关系映射主要有两种方式:xml配置文件和注解方式。xml配置文件方式1.namespace命名空间MyBatis的映射文件内容都包含在一个namespace中,这个namespace中的名称必须和Mapper接口名称一致,并且还包括完整的包名。比如:package com.kestiny.mybatis.mapper;public inte原创 2020-07-04 19:51:16 · 212 阅读 · 0 评论 -
01-MyBatis环境配置
MyBatis环境配置MyBatis是一款优秀的持久层框架,她是半自动的化的ORM(Object Relationship Mapping)框架。1.准备工具jdk 13.0.2maven 3.6.3MyBatis 3.5.4junit 4.13logback 1.2.3MySQL-connector-java 8.0.20slf4j 1.7.252.创建一个空的maven项目可以使用IDE创建,比如IDEA或者Eclipse之类的;也可以使用命令行创建mvn arche原创 2020-07-04 19:41:21 · 287 阅读 · 0 评论 -
Windows下安装Hadoop(免cygwin)
Hadoop的使用一般都在linux下,但是开发和测试其实是可以在Windows系统上进行的,然而一般的安装方式都是使用cygwin模拟linux系统进行,然后其实已经有大牛解决了这个问题,就是编译出Hadoop在Windows上缺少的库,这样就直接可以不用cygiwn模拟linux了。准备材料1、jdk-8u144-windows-x642、hadoop-2.7.1.tar.gz3、hado原创 2017-08-08 17:59:20 · 1150 阅读 · 0 评论 -
使用Java操作Hadoop API
Hadoop的环境一旦搭建完成,我们就可以进行Hadoop应用开发了,可以进行Hadoop开发的程序语言有多种选择,比如JAVA,python,ruby等等。这里我们选择JAVA语言进行开发(语言无所谓好坏,看你擅长什么喜欢什么了)。因为我选择了JAVA语言,也就选择了eclipse开发工具,这里我用的是eclipse-java-oxygen-R-win32-x86_64,当然,Hadoo原创 2017-08-08 18:22:37 · 2818 阅读 · 1 评论