- 【架构设计(二)】高可用、高并发的 Java 架构设计
架构学院
Java成神之路-架构师进阶java架构开发语言
【架构设计(二)】高可用、高并发的Java架构设计在互联网业务爆发式增长的今天,高可用和高并发已成为Java系统架构设计的核心目标。本文将围绕负载均衡与高可用架构、缓存设计与优化、数据库读写分离与分库分表三大关键领域,深入剖析其原理,并结合完整的代码示例,帮助开发者构建稳定高效的系统架构。无套路、关注即可领。持续更新中关注公众号:搜【架构研究站】回复:资料领取,即可获取全部面试题以及1000+份学
- alpine linux构建jdk基础镜像
alpine能够如此小巧是因为它没有集成一些普通的Linux库,比如跑Java应用必须依赖的glibc相关的包,alpinelinux构建oraclejdk时,需要先安装一些依赖库,oracle官网下载jre即可,无需下载jdk,否则构建的基础镜像过大,以下为DockerfileFROMalpine:3.18.5ADDjdk.tar.gz/usr/local/jdk/COPYlocale.md/u
- 手写 Vue 中虚拟 DOM 到真实 DOM 的完整过程
目录一、虚拟DOM的核心概念二、虚拟DOM到真实DOM的流程三、手写虚拟DOM到真实DOM的实现1.定义虚拟DOM的结构(VNode)2.创建虚拟DOM转真实DOM的函数3.挂载虚拟DOM到页面4.更新虚拟DOM的过程(Diff算法简化版)四、完整示例:虚拟DOM到真实DOM的生命周期五、总结一、虚拟DOM的核心概念虚拟DOM是用JavaScript对象(VNode)模拟真实DOM结构的轻量级抽象
- Python训练营-Day3
DAY3列表、循环和判断语句题目1:列表的基础操作题目:1.创建一个包含三个字符串元素的列表tech_list,元素分别为“Python”,“Java”,“Go”。2.获取列表中的第一个元素,并将其存储在变量first_tech中。3.向tech_list的末尾添加一个新的字符串元素“JavaScript”。4.修改tech_list中的第二个元素(索引为1),将其从“Java”更改为“Ruby”
- python+uniapp基于微信小程序的河湟文化宣传系统nodejs+java
文章目录具体实现截图本项目源码获取详细视频演示:文章底部获取博主联系方式!!!!本系统开发思路进度安排及各阶段主要任务java类核心代码部分展示主要参考文献:源码获取/详细视频演示##项目介绍摘要随着互联网技术的飞速发展和移动互联网的
- JAVA面试全过程
由于本人最近又在面试,想记录一下,可能会给你提供一下帮助。一、简历简历里面需要包含的内容应该是学历,自己的技术栈,然后自己做过的一些项目。简历不需要太长,两页纸即可。里面应该重点写你使用过的一些框架,自己做的一些项目,以及自己的收获,简练第一。一般面试官不会有很多的耐心,看你的项目详细描述,所以尽量简洁明了即可。二、简历投递投递的方式有几种吧,相信大家也都知道。一般在程序员的垂直招聘网站投递即可,
- java练习3
随机生成20个数字(随机种子)分别使用冒泡排序、二叉树排序、插入排序进行排序并输出最终结果以及三种排序使用的时间packagea01_第一次练习.a03_排序;importjava.time.Duration;importjava.time.LocalDateTime;importjava.util.TreeSet;publicclassTest{publicstaticvoidmain(Stri
- 尚硅谷-javaweb笔记记录
java成长之旅
javaweb
Javaweb笔记网页三组成:内容html,表现css,行为js。html,css,javascriptstyle标签定义css样式代码(只能在一个页面公用css样式)css文件id选择器:#id001{}#id002{}使用:标签1class选择器:.class001{}使用:类选择器组合选择器:选择器1,选择器2…{属性:值;}js里编写或者写完了再引入进去。且运算&&:当表达式为全真,返回最
- Gradle中如何设定使用JAVA_HOME以外的JRE版本
WlzSnail
Jenkinsjenkins
前言:由于DavinciTeam需要运行在JRE8,其运行环境是基于Gradle,而Jenkins和Tomcat是运行在JRE8以上的版本导致Gradle需要单独的JRE运行环境。解决方案:通过修改Gradle的配置使其运行环境运行在JRE8同时其它软件运行在JAVA_HOME设定的JRE版本中。一、首先在安装的Gradle根目录下创建gradle.properties二、在gradle.prop
- Android Binder与AIDL与Service使用案例及分析
曹小满2579
Android基础androidbinderAndroidIPC
水一篇以前写的文章Binder是Android内置的一种比较高效的跨进程机制,它很复杂,也很好用,可以让我们像调用普通方法那样完成跨进程式方法调用和数据传递。我们现在只需要知道它比较复杂以及怎么使用即可。ALDL全名AndroidinterfaceDefinitionLanguage,是Android官方提供的简化Binder开发的工具,适用于Java、Kotlin开发。所以很明显了,ALDL是小
- javase实操(二)-酒店管理系统
付朝鲜
javajava
一、题目使用二维数组实现酒店管理系统。功能如下:1.查看酒店所有房间的状态2.预定房间3.退房4.退出系统二、程序1.Hotel.javapackageHotel;publicclassHotel{privateintid;privateStringstandard;privateStringstatus;publicHotel(){}publicHotel(intid,Stringstandar
- 2025 Java NIO 面试题 (精选90题)
csdn_tom_168
面试题javanio
2025JavaNIO面试题(精选90题)1~301.什么是JavaNIO?JavaNIO(NewInput/Output)是Java1.4引入的一套新的I/OAPI,提供了与标准JavaI/O不同的I/O处理方式。它支持面向缓冲区的、基于通道的I/O操作,提供了更高的性能和更灵活的I/O操作方式。2.JavaNIO与传统的IO有什么区别?面向流vs面向缓冲区:传统IO是面向流的,而NIO是面向缓
- 想快速处理元素?想将一个List快速转为另一个List或Map?Stream流轻松帮你搞定!
头发那是一根不剩了
java
Java8API添加了一个新的抽象称为流Stream,可以让你以一种声明的方式处理数据,它提供了非常强大Java集合运算和表达的高阶抽象。这种风格将要处理的元素集合看作一种流,流在管道中传输,并且可以在管道的节点上进行处理,可以把它看成一个工厂,流水线的形式(假如是玩具厂)。在这个流水线上,工人们对每个过来的玩具,进行处理,比如筛选、组装等。StreamAPI可以极大提高Java程序员的生产力,省
- 位运算与逻辑运算及其区别(java)
一、位运算1、定义:程序中的所有数在计算机内存中都是以二进制补码的形式存储的。位运算就是直接对整数在内存中的二进制补码进行操作。2、分类:符号名称及运算规则&按位与:全1为1,否则为0按位或:全0为0,否则为1^按位异或:相同为0,否则为1~按位取反:0变为1,1变为0>>右移:补码向右移动相应位数,负数高位补1,正数补0>>无符号右移:向右移动相应位数,高位补0//按位与finalbytea=4
- 导购电商平台的实时数据处理架构:Java 架构师的实践经验
导购电商平台的实时数据处理架构:Java架构师的实践经验大家好,我是阿可,微赚淘客系统及省赚客APP创始人,是个冬天不穿秋裤,天冷也要风度的程序猿!在导购电商平台中,实时数据处理是核心需求之一。无论是商品信息的实时更新、用户行为的实时分析,还是订单处理的高效性,都直接影响用户体验和平台的运营效率。作为一名Java架构师,我将分享我们在省赚客平台中构建实时数据处理架构的实践经验,重点介绍如何通过Ja
- 【算法刷题记录001】整型数组合并(java代码实现)
一、题目描述对于给定的由n个整数组成的数组{a1,a2,…,an}和m个整数组成的数组{b1,b2,…,bm},将它们合并后从小到大排序,并输出去重后的结果。二、输入描述第一行输入一个整数n(1≤n≤150)代表数组a中元素个数。第二行输入n个整数a1,a2,…,an(-1≤ai≤105)代表数组a中的元素。第三行输入一个整数m(1≤m≤150)代表数组b中元素个数。第四行输入m个整数b1,b2,
- HTML表格导出为Excel文件的实现方案
~风清扬~
前端技术htmlexcel前端
1、前端javascript可通过mime类型、blob对象或专业库(如sheetjs)实现html表格导出excel,适用于中小型数据量;2、服务器端方案利用后端语言(如python的openpyxl、java的apachepoi)处理复杂报表和大数据,确保安全性与格式控制;3、常见问题包括数据类型识别错误、样式丢失、大文件卡顿、浏览器兼容性及乱码,需通过设置单元格类型、使用后端样式api、分页
- 如何优化Java文件处理的代码性能
科技苑
代码规范
一、使用高效的IOAPI-BufferedReader/BufferedWriter替代普通IO通过缓冲区减少底层IO调用次数。//优化前FileReaderfr=newFileReader("file.txt");//优化后BufferedReaderbr=newBufferedReader(newFileReader("file.txt"));-NIO.2(Java7+)的Path和Files
- Java 中的成员变量与成员方法 —— 一次讲清!
菜鸟不学编程
Java从入门到放弃java开发语言
你好,欢迎来到我的博客!我是【菜鸟不学编程】 我是一个正在奋斗中的职场码农,步入职场多年,正在从“小码农”慢慢成长为有深度、有思考的技术人。在这条不断进阶的路上,我决定记录下自己的学习与成长过程,也希望通过博客结识更多志同道合的朋友。 ️主要方向包括Java基础、Spring全家桶、数据库优化、项目实战等,也会分享一些踩坑经历与面试复盘,希望能为还在迷茫中的你提供一些参考。 我相信:写作
- 包装类是废物?还是背后藏着的 Java 设计良心?
你好,欢迎来到我的博客!我是【菜鸟不学编程】 我是一个正在奋斗中的职场码农,步入职场多年,正在从“小码农”慢慢成长为有深度、有思考的技术人。在这条不断进阶的路上,我决定记录下自己的学习与成长过程,也希望通过博客结识更多志同道合的朋友。 ️主要方向包括Java基础、Spring全家桶、数据库优化、项目实战等,也会分享一些踩坑经历与面试复盘,希望能为还在迷茫中的你提供一些参考。 我相信:写作
- 你还在用单线程处理请求?这年头还不会写多线程服务器,真的不慌吗?
菜鸟不学编程
Java从入门到放弃java开发语言
你好,欢迎来到我的博客!我是【菜鸟不学编程】 我是一个正在奋斗中的职场码农,步入职场多年,正在从“小码农”慢慢成长为有深度、有思考的技术人。在这条不断进阶的路上,我决定记录下自己的学习与成长过程,也希望通过博客结识更多志同道合的朋友。 ️主要方向包括Java基础、Spring全家桶、数据库优化、项目实战等,也会分享一些踩坑经历与面试复盘,希望能为还在迷茫中的你提供一些参考。 我相信:写作
- Java SPI机制及Springboot使用实例
Armyyyyy丶
Java语言相关javaspi
目录一、SPI是什么二、使用场景三、使用介绍四、Springboot实例运用五、总结一、SPI是什么SPI全称ServiceProviderInterface,是Java提供的一套用来被第三方实现或者扩展的API,它可以用来启用框架扩展和替换组件。整体机制图如下:JavaSPI实际上是“基于接口的编程+策略模式+配置文件”组合实现的动态加载机制。系统设计的各个抽象,往往有很多不同的实现方案,在面向
- 详细说说线程的同步和互斥
牛马baby
多线程面试资料
面试资料大全|各种技术资料-2000GJava中线程的同步(Synchronization)和互斥(MutualExclusion)这两个核心并发概念。它们是确保多线程程序正确性、避免竞态条件(RaceCondition)和维持数据一致性的基石。核心目标:协调多个线程对共享资源(变量、对象、文件、数据库连接等)的访问,防止它们同时进行可能导致数据损坏或逻辑错误的操作。1.互斥(MutualExcl
- Dash 安装使用教程
小奇JAVA面试
安装使用教程dash
一、Dash简介Dash是一个基于Python的Web应用框架,专为构建数据可视化界面而设计。它由Plotly团队开发,适合构建交互式仪表盘、可视化分析工具和Web应用,无需使用JavaScript。二、安装Dash2.1使用pip安装pipinstalldash推荐同时安装Plotly:pipinstallplotly2.2验证安装python-c"importdash;print(dash._
- java joinpoint教程_Java的教程
weixin_39572168
javajoinpoint教程
Java编程语言Java编程语言中,左侧的导航栏(Java编程语言),可以快速定位文章的内容。这篇文章主要汇总以下:Java编程语言学习:Java的概述,Java的基础,Java面向对象的概念,Java的运算符,Java面向对象的概念,Java中的字符串String,Java中的数组array,Java中的关键字,Java中的方法,Java中的构造函数,Java中的异常,Java中的继承,Java
- 7.3_JAVA_八股文_Redis
灰太狼Coding
redis数据库缓存
1、存储类型:String(缓存)、List(消息队列)、Hash、Set聚合计算(唯一,无序,不可重复)点赞(防止重复,因为set唯一)、共同关注(聚合)、抽奖活动(唯一)、ZSet(排行榜)2、Zset:元素少、每个元素小用压缩列表3、跳表内部:每个节点随机生成一个0-1的随机数,<0.25就
- Android 安装使用教程
小奇JAVA面试
安装使用教程android
一、Android开发简介Android是Google推出的基于Linux内核的开源操作系统,广泛用于智能手机、平板等移动设备。开发Android应用主要使用Java或Kotlin编程语言,并借助AndroidStudio作为官方IDE。二、安装Android开发环境2.1安装JDK(JavaDevelopmentKit)Android开发需要安装JDK(推荐JDK11或17):下载地址:http
- 7.4_面试_JAVA_
灰太狼Coding
面试职场和发展
所谓的学习,就是学了一个高耦合,低内聚。操作系统:进程调度算法有哪些??1先来服务算法:从队列中拿出最先入队的一个,一直运行,直到退出。才会再从队列中选择最先到的一个。适用于CPU繁忙型,不适用于IO繁忙型2、短服务优先。优先执行作业时间短的任务。提高系统吞吐量。缺点是会把长任务排到很往后。3、响应比算法:(用响应时间+等待时间)/等待时间,算出来,数字大的先执行。4、时间片轮转:设定一个固定时间
- java中http调用接口 传参为form-data
洋:Y
springbootjavahttpservlet
直接上代码@OverridepublicJSONObjectgetCameraList(intcurrent,intsize,Stringcode,Stringname)throwsIOException{DefaultHttpClientclient=newDefaultHttpClient();MultipartEntityBuilderbuilder=MultipartEntityBuild
- java接受formdata文件上传_java后端发送formdata上传文件
大东北精粮尚品
今天想实现java后端发送formdata上传文件,为了以后查找方便,特此记录下来上一次使用WebClient实现远程调用(一个非阻塞、响应式的HTTP客户端,它以响应式被压流的方式执行HTTP请求)查看现在使用的RestTemplateRestTemplate是在客户端访问Restful服务的一个核心类默认使用JDK提供的包去建立HTTP连接为每种HTTP请求都实现了相关的请求封装方法publi
- xml解析
小猪猪08
xml
1、DOM解析的步奏
准备工作:
1.创建DocumentBuilderFactory的对象
2.创建DocumentBuilder对象
3.通过DocumentBuilder对象的parse(String fileName)方法解析xml文件
4.通过Document的getElem
- 每个开发人员都需要了解的一个SQL技巧
brotherlamp
linuxlinux视频linux教程linux自学linux资料
对于数据过滤而言CHECK约束已经算是相当不错了。然而它仍存在一些缺陷,比如说它们是应用到表上面的,但有的时候你可能希望指定一条约束,而它只在特定条件下才生效。
使用SQL标准的WITH CHECK OPTION子句就能完成这点,至少Oracle和SQL Server都实现了这个功能。下面是实现方式:
CREATE TABLE books (
id &
- Quartz——CronTrigger触发器
eksliang
quartzCronTrigger
转载请出自出处:http://eksliang.iteye.com/blog/2208295 一.概述
CronTrigger 能够提供比 SimpleTrigger 更有具体实际意义的调度方案,调度规则基于 Cron 表达式,CronTrigger 支持日历相关的重复时间间隔(比如每月第一个周一执行),而不是简单的周期时间间隔。 二.Cron表达式介绍 1)Cron表达式规则表
Quartz
- Informatica基础
18289753290
InformaticaMonitormanagerworkflowDesigner
1.
1)PowerCenter Designer:设计开发环境,定义源及目标数据结构;设计转换规则,生成ETL映射。
2)Workflow Manager:合理地实现复杂的ETL工作流,基于时间,事件的作业调度
3)Workflow Monitor:监控Workflow和Session运行情况,生成日志和报告
4)Repository Manager:
- linux下为程序创建启动和关闭的的sh文件,scrapyd为例
酷的飞上天空
scrapy
对于一些未提供service管理的程序 每次启动和关闭都要加上全部路径,想到可以做一个简单的启动和关闭控制的文件
下面以scrapy启动server为例,文件名为run.sh:
#端口号,根据此端口号确定PID
PORT=6800
#启动命令所在目录
HOME='/home/jmscra/scrapy/'
#查询出监听了PORT端口
- 人--自私与无私
永夜-极光
今天上毛概课,老师提出一个问题--人是自私的还是无私的,根源是什么?
从客观的角度来看,人有自私的行为,也有无私的
- Ubuntu安装NS-3 环境脚本
随便小屋
ubuntu
将附件下载下来之后解压,将解压后的文件ns3environment.sh复制到下载目录下(其实放在哪里都可以,就是为了和我下面的命令相统一)。输入命令:
sudo ./ns3environment.sh >>result
这样系统就自动安装ns3的环境,运行的结果在result文件中,如果提示
com
- 创业的简单感受
aijuans
创业的简单感受
2009年11月9日我进入a公司实习,2012年4月26日,我离开a公司,开始自己的创业之旅。
今天是2012年5月30日,我忽然很想谈谈自己创业一个月的感受。
当初离开边锋时,我就对自己说:“自己选择的路,就是跪着也要把他走完”,我也做好了心理准备,准备迎接一次次的困难。我这次走出来,不管成败
- 如何经营自己的独立人脉
aoyouzi
如何经营自己的独立人脉
独立人脉不是父母、亲戚的人脉,而是自己主动投入构造的人脉圈。“放长线,钓大鱼”,先行投入才能产生后续产出。 现在几乎做所有的事情都需要人脉。以银行柜员为例,需要拉储户,而其本质就是社会人脉,就是社交!很多人都说,人脉我不行,因为我爸不行、我妈不行、我姨不行、我舅不行……我谁谁谁都不行,怎么能建立人脉?我这里说的人脉,是你的独立人脉。 以一个普通的银行柜员
- JSP基础
百合不是茶
jsp注释隐式对象
1,JSP语句的声明
<%! 声明 %> 声明:这个就是提供java代码声明变量、方法等的场所。
表达式 <%= 表达式 %> 这个相当于赋值,可以在页面上显示表达式的结果,
程序代码段/小型指令 <% 程序代码片段 %>
2,JSP的注释
<!-- -->
- web.xml之session-config、mime-mapping
bijian1013
javaweb.xmlservletsession-configmime-mapping
session-config
1.定义:
<session-config>
<session-timeout>20</session-timeout>
</session-config>
2.作用:用于定义整个WEB站点session的有效期限,单位是分钟。
mime-mapping
1.定义:
<mime-m
- 互联网开放平台(1)
Bill_chen
互联网qq新浪微博百度腾讯
现在各互联网公司都推出了自己的开放平台供用户创造自己的应用,互联网的开放技术欣欣向荣,自己总结如下:
1.淘宝开放平台(TOP)
网址:http://open.taobao.com/
依赖淘宝强大的电子商务数据,将淘宝内部业务数据作为API开放出去,同时将外部ISV的应用引入进来。
目前TOP的三条主线:
TOP访问网站:open.taobao.com
ISV后台:my.open.ta
- 【MongoDB学习笔记九】MongoDB索引
bit1129
mongodb
索引
可以在任意列上建立索引
索引的构造和使用与传统关系型数据库几乎一样,适用于Oracle的索引优化技巧也适用于Mongodb
使用索引可以加快查询,但同时会降低修改,插入等的性能
内嵌文档照样可以建立使用索引
测试数据
var p1 = {
"name":"Jack",
"age&q
- JDBC常用API之外的总结
白糖_
jdbc
做JAVA的人玩JDBC肯定已经很熟练了,像DriverManager、Connection、ResultSet、Statement这些基本类大家肯定很常用啦,我不赘述那些诸如注册JDBC驱动、创建连接、获取数据集的API了,在这我介绍一些写框架时常用的API,大家共同学习吧。
ResultSetMetaData获取ResultSet对象的元数据信息
- apache VelocityEngine使用记录
bozch
VelocityEngine
VelocityEngine是一个模板引擎,能够基于模板生成指定的文件代码。
使用方法如下:
VelocityEngine engine = new VelocityEngine();// 定义模板引擎
Properties properties = new Properties();// 模板引擎属
- 编程之美-快速找出故障机器
bylijinnan
编程之美
package beautyOfCoding;
import java.util.Arrays;
public class TheLostID {
/*编程之美
假设一个机器仅存储一个标号为ID的记录,假设机器总量在10亿以下且ID是小于10亿的整数,假设每份数据保存两个备份,这样就有两个机器存储了同样的数据。
1.假设在某个时间得到一个数据文件ID的列表,是
- 关于Java中redirect与forward的区别
chenbowen00
javaservlet
在Servlet中两种实现:
forward方式:request.getRequestDispatcher(“/somePage.jsp”).forward(request, response);
redirect方式:response.sendRedirect(“/somePage.jsp”);
forward是服务器内部重定向,程序收到请求后重新定向到另一个程序,客户机并不知
- [信号与系统]人体最关键的两个信号节点
comsci
系统
如果把人体看做是一个带生物磁场的导体,那么这个导体有两个很重要的节点,第一个在头部,中医的名称叫做 百汇穴, 另外一个节点在腰部,中医的名称叫做 命门
如果要保护自己的脑部磁场不受到外界有害信号的攻击,最简单的
- oracle 存储过程执行权限
daizj
oracle存储过程权限执行者调用者
在数据库系统中存储过程是必不可少的利器,存储过程是预先编译好的为实现一个复杂功能的一段Sql语句集合。它的优点我就不多说了,说一下我碰到的问题吧。我在项目开发的过程中需要用存储过程来实现一个功能,其中涉及到判断一张表是否已经建立,没有建立就由存储过程来建立这张表。
CREATE OR REPLACE PROCEDURE TestProc
IS
fla
- 为mysql数据库建立索引
dengkane
mysql性能索引
前些时候,一位颇高级的程序员居然问我什么叫做索引,令我感到十分的惊奇,我想这绝不会是沧海一粟,因为有成千上万的开发者(可能大部分是使用MySQL的)都没有受过有关数据库的正规培训,尽管他们都为客户做过一些开发,但却对如何为数据库建立适当的索引所知较少,因此我起了写一篇相关文章的念头。 最普通的情况,是为出现在where子句的字段建一个索引。为方便讲述,我们先建立一个如下的表。
- 学习C语言常见误区 如何看懂一个程序 如何掌握一个程序以及几个小题目示例
dcj3sjt126com
c算法
如果看懂一个程序,分三步
1、流程
2、每个语句的功能
3、试数
如何学习一些小算法的程序
尝试自己去编程解决它,大部分人都自己无法解决
如果解决不了就看答案
关键是把答案看懂,这个是要花很大的精力,也是我们学习的重点
看懂之后尝试自己去修改程序,并且知道修改之后程序的不同输出结果的含义
照着答案去敲
调试错误
- centos6.3安装php5.4报错
dcj3sjt126com
centos6
报错内容如下:
Resolving Dependencies
--> Running transaction check
---> Package php54w.x86_64 0:5.4.38-1.w6 will be installed
--> Processing Dependency: php54w-common(x86-64) = 5.4.38-1.w6 for
- JSONP请求
flyer0126
jsonp
使用jsonp不能发起POST请求。
It is not possible to make a JSONP POST request.
JSONP works by creating a <script> tag that executes Javascript from a different domain; it is not pos
- Spring Security(03)——核心类简介
234390216
Authentication
核心类简介
目录
1.1 Authentication
1.2 SecurityContextHolder
1.3 AuthenticationManager和AuthenticationProvider
1.3.1 &nb
- 在CentOS上部署JAVA服务
java--hhf
javajdkcentosJava服务
本文将介绍如何在CentOS上运行Java Web服务,其中将包括如何搭建JAVA运行环境、如何开启端口号、如何使得服务在命令执行窗口关闭后依旧运行
第一步:卸载旧Linux自带的JDK
①查看本机JDK版本
java -version
结果如下
java version "1.6.0"
- oracle、sqlserver、mysql常用函数对比[to_char、to_number、to_date]
ldzyz007
oraclemysqlSQL Server
oracle &n
- 记Protocol Oriented Programming in Swift of WWDC 2015
ningandjin
protocolWWDC 2015Swift2.0
其实最先朋友让我就这个题目写篇文章的时候,我是拒绝的,因为觉得苹果就是在炒冷饭, 把已经流行了数十年的OOP中的“面向接口编程”还拿来讲,看完整个Session之后呢,虽然还是觉得在炒冷饭,但是毕竟还是加了蛋的,有些东西还是值得说说的。
通常谈到面向接口编程,其主要作用是把系统设计和具体实现分离开,让系统的每个部分都可以在不影响别的部分的情况下,改变自身的具体实现。接口的设计就反映了系统
- 搭建 CentOS 6 服务器(15) - Keepalived、HAProxy、LVS
rensanning
keepalived
(一)Keepalived
(1)安装
# cd /usr/local/src
# wget http://www.keepalived.org/software/keepalived-1.2.15.tar.gz
# tar zxvf keepalived-1.2.15.tar.gz
# cd keepalived-1.2.15
# ./configure
# make &a
- ORACLE数据库SCN和时间的互相转换
tomcat_oracle
oraclesql
SCN(System Change Number 简称 SCN)是当Oracle数据库更新后,由DBMS自动维护去累积递增的一个数字,可以理解成ORACLE数据库的时间戳,从ORACLE 10G开始,提供了函数可以实现SCN和时间进行相互转换;
用途:在进行数据库的还原和利用数据库的闪回功能时,进行SCN和时间的转换就变的非常必要了;
操作方法: 1、通过dbms_f
- Spring MVC 方法注解拦截器
xp9802
spring mvc
应用场景,在方法级别对本次调用进行鉴权,如api接口中有个用户唯一标示accessToken,对于有accessToken的每次请求可以在方法加一个拦截器,获得本次请求的用户,存放到request或者session域。
python中,之前在python flask中可以使用装饰器来对方法进行预处理,进行权限处理
先看一个实例,使用@access_required拦截:
?