Java

软构复习4

正确性和健壮性 健壮编程原则:封闭实现细节;考虑极端情况; 健壮性:尽可能使程序运行而不是退出 健壮性: 让用户变得更容易:出错也可以容忍,程序内部已有容错机制 正确性: 让开发者变得更容易:用户输入错误,直接结束。 (不满足precondition的调用) Error:一旦出现程序员无能为力,只能想办法让程序优雅的结束 Eg.用户输入错误、设备错误、物理限制 异常:程序自己的问题,可以捕获,可以

Kotlin难点

目录高阶函数双冒号函数引用类引用属性引用匿名函数Lambda 表达式例子作用域函数 高阶函数 高阶函数是将函数用作参数或返回值的函数,还可以把函数赋值给一个变量。 所有函数类型都有一个圆括号括起来的参数类型列表以及一个返回类型:(A, B) -> C 表示接受类型分别为 A 与 B 两个参数并返回一个 C 类型值的函数类型。 参数类型列表可以为空,如 () -> A,Unit 返回类型

项目终于用上了 Spring 状态机,非常优雅!

来源:https://www.duidaima.com/Group/Topic/JAVA/11942 1、什么是状态机 1.1 什么是状态 先来解释什么是“状态”( State )。现实事物是有不同状态的,例如一个自动门,就有 open 和 closed 两种状态。我们通常所说的状态机是有限状态机,也就是被描述的事物的状态的数量是有限个,例如自动门的状态就是两个 open 和 closed 。

OpenFeign

OpenFeign 简介 Feign是一个声明式的Web Service客户端,是一种声明式、模板化的HTTP客户端。OpenFeign是Spring Cloud 在Feign的基础上支持了Spring MVC的注解,如@RequesMapping等。 OpenFeign的@FeignClient可以解析SpringMVC的@RequestMapping注解下的接口,并通过动态代理的方式产生实现类

MySQL索引高级进阶详解-玩转MySQL数据库

前言 从今天开始本系列文章就带各位小伙伴学习数据库技术。数据库技术是Java开发中必不可少的一部分知识内容。也是非常重要的技术。本系列教程由浅入深, 全面讲解数据库体系。非常适合零基础的小伙伴来学习。 全文大约 【1957】字,不说废话,只讲可以让你学到技术、明白原理的纯干货!本文带有丰富案例及配图视频,让你更好的理解和运用文中的技术概念,并可以给你带来具有足够启迪的思考...... 一. 索引

前端总结

前端与后端的概念 前端 就是与用户直接打交道的操作界面就可以称为前端 后端 不直接与用户打交道主要负责内部真正的业务逻辑的执行就是后端 前端的三个模式 HTML 编写前端页面的文件 css 给html前端增加样式包装一下前端页面 JavaScript 给前端HTML文件增加功能 Http协议(规定浏览器与服务器的=之间数据的交互格式) 四个特性 基于请求格式:客户端发送请求,服务端回复响应

软件构造课程思考7

4.3易变性和不变性改变一个变量:将变量指向另一个存储空间 改变一个变量的值:将该变量当前指向的存储空间写入一个新值 4.3.1不变性(重要设计原则)数据类型一旦被创建,其值不能改变;引用类型一旦确定其指向的对象,不能再给变其指向其他对象 Java中使用关键字“final”来标记: final类无法派生自己的子类final变量无法改变值/引用final方法无法被子类重写编译器进行静态类型检查时,如

Spring学习笔记

1、基本概念 Spring: 开源的轻量级的java开发框架,目的是提高开发人员的开发效率以及系统的可维护性。 核心功能是支持IOC(控制反转)和AOP(面向切面编程) 可以很方便地对数据库进行访问、可以很方便地集成第三方组件(电子邮件,任务,调度,缓存等等)、对单元测试支持比较好、支持 RESTful Java 应用程序的开发。 是很多模块的集合:包括core-container(spring

三路快排Java版(带思路分析)

快速排序 这里我们直接开始讲相对的最优解 带随机数的三路快排 好了,中间还有很多版本的快排,但是都有一些问题导致在某种极端情况下造成耗费时间极多。 基础快排:在序列本身有序的情况下复杂度为O(n²) 带随机数的快排:在序列本身有序的情况下复杂度为O(nlogn),但是在序列全部元素相同情况下复杂度为O(n²) 带随机数的双路快排:比前者更快一些为O(n),因为前后同时向中间遍历,但是在

MyBatis体系笔记(未完结)

MyBatis 什么是MyBatis MyBatis是优秀的持久层框架 MyBatis使用XML将SQL与程序解耦,便于维护 MyBatis学习简单,执行高效,是JDBC的延伸 1.MyBatis开发流程 引入MyBatis依赖 创建核心配置文件 创建实体(Entity)类 创建Mapper映射文件 初始化SessionFactory 利用Sq

hibernate注解(二)

本篇将向大家介绍表关联的注解方式。 1. 一对一(One-to-one) 使用@OneToOne注解可以建立实体bean之间的一对一的关联.一对一关联有三种情况:一是关联的实体都共享同样的主键,二是其中一个实体通过外键关联到另一个实体的主键(注意要模拟一对一关联必须在外键列上添加唯一约束).三是通过关联表来保存两个实体之间的连接关系(注意要模拟一对一关联必须在每一个外键上添加唯一约束). 首先,我

java 通过String关键词 和 String对象创建字符串 耗时对比

https://www.runoob.com/java/string-performance.html 不得不说m1芯片强悍啊,循环多100倍,时间还比手册的短!!! 相信坚持的力量,日复一日的习惯.

MapperProxyFactory(映射器代理工厂)的实现原理

再次回顾Mybatis的基本用法 1、定义Mapper接口 2、在xml(或注解)中写sql mybatis帮我们屏蔽了所有和数据库相关的操作,我们只需要给他提供参数、sql、标注返回值的类型即可。 通过mapper接口我们可以传递参数、获取返回值;通过xml或者注解我们可以提供需要执行的sql。那么问题来了,究竟是谁在干活?我们经常在service中注入的dao来自于哪里? 答案自然是————代

Arthas学习笔记

一、运行环境 二、安装Arthas并attach一个进程 三、基础命令 1.help 2.cat 3.grep 4.pwd 5.cls 6.session 7.reset 8.history 9.quit 10.stop 11.keymap 四、快捷键 1.命令行快捷键  2.快捷键说明 命令说

时间不等人,但 Moment.js 可以等你解决时间问题!

前言 一直以来,处理时间和日期的JavaScript库,选用的都是Moment.js。它的API清晰简单,使用方便灵巧,功能还特别齐全。 我是Moment.js的重度使用者。凡是遇到时间和日期的操作,就把Moment.js引用上。 简介 Moment.js是一款常用于JavaScript日期时间处理的代码库,它能够解析、验证、操作以及格式化日期和时间。 在实际开发中,我们经常需要对日期时间进行转

流程引擎-接口API管理

//查看枚举接口 common_post.postPortal({ "ac": "get_enum_items_by_id", id:"枚举ID" }).then(function (data) { });      //查看数据详情 common_post.postPortal({"ac": "get_one_when_edit_from_portal", "tabid

JWT令牌技术 —— token【Web后端开发进阶】

JWT 一、介绍   全称:JSON Web Token ,用于对应用程序上的用户进行身份标记   本质上就是一个经过加密处理与校验处理的字符串,它由三部分组成:     头信息(Header):记录令牌类型和签名算法,例如:{ "alg" : "HS256", "typ" : "JWT" }     有效载荷(Payload):记录一些自定义能够区分身份的非敏感信息,例如:{ "id" : "1

网络编程

概述 Java是Internet上的语言,它从语言级上提供了对网络应用程序的支持,程序员能很容易开发常见的网络应用程序 Java提供的网络类库,可以实现无痛的网络链接,联网的底层细节被隐藏在Java的本机安装系统里,由JVM进行控制。并且Java实现了一个跨平台的网络库,程序员面对的是一个统一的网络编程环境。 计算机网络:把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大、功能

JK手机屏蔽器的管理软件如何使用

一、根据厂家的提供的安装包exe进行安装。(安装包索要:手机屏蔽器管理软件) 二、登陆软件。双击打开软件,输入正确的账号、密码即可进入管理界面。登陆成功后软件左上角显示项目名称。            三、分配操作权限。根据不同终端用户的操作权限,实现分层有序的配置。 四、查看控制点工作状态。直观显示设备位置的工作状态,方便故障定位和合

hadoop安装过程与踩雷记录

1. 安装教程 https://blog.csdn.net/weixin_47749831/article/details/109607682 在粘贴脚本修改代码时需要注意用自己的路径替换博客中代码的路径   2. 报错:‘-Dhadoop.security.logger‘ 不是内部或外部命令,也不是可运行的程序 https://blog.csdn.net/qq_41012810/art

java函数式编程stream流操作lambda表达式使用方法引用用法等练习

java函数式编程stream流操作lambda表达式使用方法引用用法等练习                         参: https://www.bilibili.com/video/BV1Gh41187uR  

Netty实战(三)

目录一、Channel、EventLoop 和 ChannelFuture1.1 Channel 接口1.2 EventLoop 接口1.3 ChannelFuture 接口二、ChannelHandler 和 ChannelPipeline2.1 ChannelHandler 接口2.2 ChannelPipeline 接口2.3 编码器和解码器2.4 抽象类 SimpleChannelInbo

一篇文章解密 - 如何在MyEclipse中使用JavaScript编写代码?

MyEclipse v2022.1.0正式版下载 MyEclipse技术交流群:742336981 欢迎一起进群讨论 JavaScript 项目 在 MyEclipse 2021 及更高版本中,JavaScript 支持对大多数 JavaScript 源代码都是开箱即用的——不需要特殊的 JavaScript Eclipse 项目或 JavaScript facet。但是,我们建议使用jsconf

3种分页列表缓存方式,速收藏~

摘要:本文介绍了实现分页列表缓存的三种方式。 本文分享自华为云社区《分页列表缓存,你真的会吗》,作者: 勇哥java实战分享 。 1 直接缓存分页列表结果 显而易见,这是最简单易懂的方式。 我们按照不同的分页条件来缓存分页结果 ,伪代码如下: 这种方案的优点是工程简单,性能也快,但是有一个非常明显的缺陷基因:列表缓存的颗粒度非常大。 假如列表中数据发生增删,为了保证数据的一致性,需要修

day 105 - javaBean

javaBean 是一种实体类 JavaBean有特定的写法 必须有一个无参构造 属性必须私有化 必须有对应的get,set方法 一般用来和数据库字段做映射:ORM ORM:对象关系映射 表-->类 字段-->属性 行记录-->对象 实现 创建数据库, 创建对应实体类     用jsp去创建一个实体对象  

Jquery Deferred 对比 Promise

javascript处理异步逻辑有多种方式,这里只对比 JQuery的Deferred 和 ES6的Promise。场景是判断网页中所有图片是否加载完(加载异常404也算加载完毕)。 JQuery Deferred 方式 ES6 Promise   总结:这两种方式整体来说,Promise更简洁,未来的趋势。

平衡二叉树AVL

平衡二叉树AVL 1. BST存在的问题——引入平衡二叉树 上图中的BST左子树为空,从形式上来看更像是一条单链表; 虽然插入的速度并没有受到影响,但查询的速度明显降低; 这是由于每次查询进行比较时,还需要比较左子树,其查询速度比单链表还慢,无法发挥BST的优势; 提出解决方案,一种新的数据结构——平衡二叉树(AVL树) 2. AVL树的基本介绍 平衡二叉树又称平衡二叉排序树(Self-

enum-最好的单例模式

.markdown-body { line-height: 1.75; font-weight: 400; font-size: 16px; overflow-x: hidden; color: rgba(37, 41, 51, 1) } .markdown-body h1, .markdown-body h2, .markdown-body h3, .markdown-body h4, .mar

终于!我们把 CEO 炒了,让 ChatGPT 出任 CEO

⚠️ FBI Warning:本文纯属作者自娱自乐,数字人的观点不代表 CEO 本人的观点,请大家不要上当受骗!! 哪个公司的 CEO 不想拥有一个自己的数字克隆? 想象🤔一下,如果 CEO 数字克隆上线了,那他是不是就可以一天约见 100 个投资人了?把他接入企业官方公众号后台作为客服,24 小时不吃饭不睡觉不喝水给用户答疑解惑,想想就很刺激!感觉 CEO 在给我打工✅ 环界云的 CEO 做

Spring MVC学习笔记

1、基本概念 Spring MVC 是 Spring 中的一个很重要的模块,主要赋予 Spring 快速构建 MVC 架构的 Web 程序的能力。 MVC 是模型(Model)、视图(View)、控制器(Controller)的简写,其核心思想是通过将业务逻辑、数据、显示分离来组织代码。 Spring MVC 下我们一般把后端项目分为 Service 层(处理业务)、Dao 层(数据库操作)、E

<<  <  1212  1213  1214  1215  1216  1217  1218  1219  1220  1221  1222  >  >>