Java
安卓开发五——创建数据库和增加数据
我们要存入数据首先得有对象和视图中的数据绑定在一起。 之后我们在点击时需要将获取的数据存入数据库中。 这里将收入100元显示成+100,支出100元显示成-100。 时间的格式统一设置为xxxx-xx-xx的格式
Java浅谈BufferedReader
既然Scanner简单好用,为什么要用BufferedReader呢? 主要原因是面对大量的读入显得较慢且不安全,这里体现在三个方面,一方面是解析的问题,好用意味着封装的更复杂,一拖n的接口解析起来会慢;另一方面是缓冲区的问题,Scanner缓冲区小1024B,直面物理介质的机会更大,众所周知,IO时间在大数据面前总是拖后腿的。而BufferedReader是面对字符流的输入,虽然面对二进制等形
寻找两个有序数组的中位数(4)
4 Median of Two Sorted Arrays 问题描述:给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nums2 不会同时为空。 参考: Java面试手册 编程学习笔记
iText PDF Java API 入门介绍教程
iText是一个非常强大的Java库,用于创建和操作PDF文档。可以在Java应用程序中生成PDF文档,包括文本、表格、图像等丰富的内容。iText具有强大的功能,如PDF/A、数字签名、加密等,适用于复杂的PDF处理需求。iText是一个非常灵活和强大的库,可以根据具体需求进行大量的定制和扩展。 参考文档:iText PDF Java API 入门介绍教程-CJav
两数之和-输出有序数组
167 Two Sum II - Input array is sorted 问题描述:给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。 函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。 说明: 返回的下标值(index1 和 index2)不是从零开始的。 你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同
通过删除字母匹配到字典里最长单词
问题描述:给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 说明: 所有输入的字符串只包含小写字母。 字典的大小不会超过 1000。 所有输入的字符串长度不会超过 1000。 参考: Java面试手册 编程学习笔记
MyBatis动态SQL教程
动态SQL是 MyBatis 中非常强大且灵活的功能,允许你根据不同的条件构建SQL查询。 这主要通过 <if>、<choose>、<when>、<otherwise>、<foreach>等标签实现。 查询场景 if标签的使用 <if> 标签:该标签用于根据条件判断是否包含某段SQL片段。 测试 结论:if标签可通过t
2024.2.3日报
6.2 SortShuffle 解析 SortShuffleManager 的运行机制主要分成三种: 普通运行机制; bypass 运行机制:当 shuffle read task 的数量小于等于spark.shuffle.sort.bypassMergeThreshold参数的值时(默认为 200),就会启用 bypass 机制; Tungsten Sort 运行机制:开启此运行机制需设置配置
ES笔记:基础概念和使用
ES全称ElasticSearch,是一个开源的高扩展的实时的分布式全文检索和分析引擎,主要用于全文检索、结构化搜索、分析,扩展性非常好,可以扩展到上百台服务器,处理PB级别(1PB=1024TB)的数据。使用的编程语言为Java,以Lucene为核心,以RESTful API风格来实现索引和搜索的功能,让全文搜索变得更加简单。 注: 此笔记使用的ES版本为7.6.1 API文档: API con
MyBatis缓存教程
MyBatis 提供了一级缓存和二级缓存的支持,用于提高数据库查询的性能,减少不必要的数据库访问。 一级缓存(SqlSession 级别的缓存) 一级缓存是 MyBatis 中最细粒度的缓存,也称为本地缓存。它存在于每个 SqlSession 的生命周期中,当 SqlSession 被关闭或清空时,该缓存就会被清空。 什么是SqlSession? SqlSession是Java程序和数据库之间的
Mybatis之resultMap详解
resultMap作用是处理数据表中字段与java实体类中属性的映射关系。 准备工作 ① 创建数据库&数据表 ② 创建实体类Emp.java&Dept.java ③ 创建jdbc.properties,添加如下内容 ④ 创建Mybatis核心配置文件 ⑤ 添加依赖 ⑥ 创建SqlSession工具类 字段和属性的映射关系处理方案 数据表中字段名与属性名不一致的情况
RabbitMQ 学习笔记 - 1
RabbitMQ 的基础概念生产者产生数据发送消息的程序是生产者 交换机交换机是 RabbitMQ 非常重要的一个部件,一方面它接收来自生产者的消息,另一方面它将消息推送到队列中。交换机必须确切的知道如何处理它接收到的消息,是将这些消息推送到特定队列还是推送到多个队列,亦或者是把消息丢弃,这个得由交换机类型决定。 队列队列是 RabbitMQ 内部使用的一种数据结构,尽管消息流经 RabbitMQ
macOS 使用 x86_64 终端打开 Kettle
苹果于 2020 年推出了自家设计的基于 ARM 架构的 M1 芯片,在日常生活的大部分使用过程中,M1 的体验很好。然而,依然存在一小部分软件无法兼容 ARM 架构,需要我们模拟 x86 的架构来运行。 其中一个例子是 Kettle(又称 PDI)。笔者当年使用 Kettle 时无法直接双击打开,为了打开 Kettle,我们需要进入 x86 模式的终端,然后再在 x86 终端中输入命令打开 x8
滑动窗口算法变成默写题
在这个示例中,我们使用 left 和 right 两个整数变量表示窗口的左右边界,同时使用字符串 s 作为输入字符串。这段代码模拟了一个窗口滑动的过程,不断地增大窗口直到满足条件,然后根据某些条件缩小窗口。 这个算法技巧的时间复杂度是 O(N),比字符串暴力算法要高效得多。 其实困扰大家的,不是算法的思路,而是各种细节问题。比如说如何向窗口中添加新元素,如何缩小窗口,在窗口滑动的哪个阶段更新结
安卓开发二——项目内容和页面跳转
创建一个初始目录后会又以下的几个文件目录 manifests中有一个Androidmanifests.xml的文件它包含了我们这个软件的图标、名字等的基本信息 其中的activity标签中是我们的app所要使用的页面的注册信息 Java的文件目录中我们主要使用的就是第一个文件目录,其中的Java代码包含了我们页面执行时的执行流程或是各种对应的活动 &nb
Debug: javascript: while loop never exit due to state variable
1. Illustration In a javascript function, if a variable is not declared before assigning value, it is considered as a state variable of the function, even when the function returns, the state variable
2024/01/21
在servlet层来调用DAO层来实现数据库操作 这里根据查询数据库的返回值来选择跳转的页面,在输入的账号或密码错误时可以给出提示。 我们要接受提示首先要给前面的<span>值一个初始的变量用于接收。
2024/01/20
开始创建数据库。 Javabean只是对数据进行一个包装。我们要使用数据库还需要使用DAO来实现。 DAO(Data Access Object) 模型就是写一个类,把访问数据库的代码封装起来,DAO在数据库与业务逻辑(Service)之间。 Dao是数据访问层,Dao的作用是封装对数据库的访问:增删改查,不涉及业务逻辑,只是达到按某个条件获得指定数据的要求。 在这里连接数据库的方
2024/01/19
要完成登录我们首先得要有一个Javabean来对这组数据进行封装。 虽然暂时还用不到但是还时要说明一下在jsp里JavaBean的基本使用。 一个 JavaBean 对象的属性应该是可访问的。这个属性可以是任意合法的 Java 数据类型,包括自定义 Java 类。 一个 JavaBean 对象的属性可以是可读写,或只读,或只写。JavaBean 对象的属性通过 JavaBean 实现类中提供