- 【微服务】springboot 整合 SA-Token 使用详解
小码农叔叔
微服务治理与实战SA-Token使用详解sa-token使用详解sa-tokensa-token使用sa-token认证授权java使用sa-token
目录一、前言二、认证与授权介绍2.1什么是认证2.1.1认证的目的2.1.2认证基本步骤2.2什么是授权2.2.1常用的授权模型三、微服务中常用的认证安全框架3.1SpringSecurity3.1.1SpringSecurity特点3.2JWT(JSONWebTokens)3.2.1JWT特点3.3其他认证安全框架四、SA-Token介绍4.1SA-Token是什么4.2SA-Token特点4.
- Folium:Python地图可视化库使用详解
零 度°
pythonpython开发语言
{row['Description']}",icon=folium.Icon(color='red',icon='info-sign')).add_to(marker_cluster)#添加多边形folium.Polygon(locations=[[39.9,116.4],[39.95,116.45],[40.0,116.4],[39.9,116.4]],color='blue',fill=Tru
- python之eval函数使用详解
吴少凡
python开发语言自动化
eval()是Python内置的一个函数,它可以将字符串最外侧的引号去掉,并且按照python语句方式执行去掉引号后的代码(去掉引号后,代码可能还是字符串,可能是数字,可能是列表,可能是执行函数的代码块等等),---用于执行字符串表达式。1.eval()函数的语法eval()函数的语法如下:eval(expression,globals=None,locals=None)参数:expression
- Python中random使用详解
夏天Aileft
Pythonpython开发语言
✨前言:Python标准库中的random模块提供了生成伪随机数的工具。以下是random模块中常用方法的详解和使用实例:✨1.random.seed(a=None,version=2):seed的定义:seed()函数用于设置随机数生成器的种子,它在生成随机数时提供了可重复性。这个种子是生成随机数的起始点,相同种子生成的随机数序列是确定性的,也就是说,在相同的种子下,每次生成的随机数序列都是一样
- 【Vue】watch与$watch使用详解
锋利的绵羊
Vuevue
文章目录配置项定义形式监听目标`key`响应事件`value`示例watch选项$watch实例方法监听多个数据变化配置项vue-watch有两个可配置项deep、immediate,分别表示是否深度监听及是否立即调用定义形式监听目标key监听目标的定义形式包括:普通key、字符串、函数(仅$watch)普通key:name:function(){},name(){}字符串:监听具体深层属性a.b
- 【Eureka】Eureka介绍与使用详解,超全!!!
何遇mirror
大数据eureka大数据
目录一、Eureka介绍Eureka的作用为什么使用Eureka服务治理服务注册服务发现Eureka的服务端与客户端Eureka服务端Eureka客户端二、搭建Eureka服务模块1.创建EurekaServer项目2.pom.xml3.application.yml4.主程序5.修改host文件三、搭建Eureka服务提供者(ServiceProvider)修改item-service模块pom
- Python任务编排和工作流管理库之prefect使用详解
Rocky006
python人工智能大数据
概要在数据工程和科学的世界中,任务编排和工作流管理变得越来越重要。随着数据处理任务的复杂性增加,开发人员需要一种可靠且易于使用的工具来设计、监控和管理这些任务。Prefect是一个用于构建、监控和管理数据管道的Python库,它简化了工作流的创建和执行,同时提供了强大的错误处理和重试机制。本文将详细介绍Prefect库,包括其安装方法、主要特性、基本和高级功能,以及实际应用场景,帮助全面了解并掌握
- 反编译及JD-GUI 使用详解
吹老师个人app编程教学
java-必备技能pythonpycharm开发语言
1、反编译介绍1.1、什么是反编译器大家都知道,将源代码转换成二进制执行代码的过程叫“编译”,比如将C源代码编译成exe可执行文件;那么把二进制执行代码转换成源代码的过程就叫“反编译”,比如把exe转换为C源代码就叫“反编译”。由于主流的C的编译器都进行了代码的优化,因此把C编译生成的exe文件反编译成C代码非常困难。但是像Java、.net这样基于虚拟机技术的编程语言则反编译非常容易,Java平
- 【云原生】Docker Compose 使用详解
小码农叔叔
linux与容器实战springboot入门到精通DockerComposeDocker容器编排dcokercomposedocker自定义网络docker容器编排
目录一、前言二、DockerCompose介绍2.1DockerCompose概述2.2DockerCompose特点2.3DockerCompose使用场景三、DockerCompose搭建3.1安装docker环境3.2DockerCompose安装方式一3.2.1下载最新版/如果不是最新可替换最新版本3.2.2设置权限3.2.3设置软链接3.2.4查看版本3.3DockerCompose安装
- Docker Compose 使用详解
Ballad999
docker容器运维云计算云原生
使用以下命令可以启动容器:docker-composeup使用以下命令可以停止并删除容器:docker-composedown以上就是Docker和DockerCompose的基础知识。下一步,你可以进一步学习如何创建自己的Docker镜像和使用DockerCompose部署多容器应用程序。什么是DockerCompose?DockerCompose是Docker官方的工具,用于定义和运行多容器D
- JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解
web718
Java
JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps、jstack、jmap、jhat、jstat等小巧的工具,本博客希望能起抛砖引玉之用,让大家能开始对JVM性能调优的常用工具有所了解。现实企业级Java开发中,有时候我们会碰到下面这些问题:OutOfMemoryError,内存不足内存泄露线程死锁锁争用(LockContention)J
- Python开发者必备利器之Gooey使用详解
Rocky006
数据库python开发语言
概要在Python开发中,命令行程序是一种常见的方式来与用户交互,但有时候用户更喜欢使用图形界面来操作程序。为了实现这一转变,我们可以使用非标准模块Gooey,它可以帮助我们将命令行程序快速转换为具有图形用户界面(GUI)的应用程序。本文将介绍Gooey的基本概念、使用方法以及多种案例,帮助读者了解如何利用Gooey轻松实现命令行程序到GUI程序的转变。什么是Gooey?Gooey是一个Pytho
- 从Python转向MicroPython使用详解
Rocky006
python开发语言
概要随着物联网(IoT)设备的普及和嵌入式系统的广泛应用,MicroPython逐渐成为Python开发者们探索嵌入式编程的重要工具。MicroPython是一种精简版的Python,专为资源受限的设备而设计,能够在微控制器和其他嵌入式设备上运行。对于习惯使用Python的开发者而言,转向MicroPython可能会有一些挑战和变化。本文将详细介绍如何从Python顺利转向MicroPython,
- Maven <parent> 标签的作用及使用详解
CodeDunkster
mavenjava
在使用Maven进行项目构建时,标签是一个非常重要的配置元素。它允许子模块继承父模块的配置,从而实现一致性和配置管理的简化。本文将详细介绍标签的主要作用,并通过示例来说明其使用方式和关键点。标签的主要作用标签的作用主要体现在以下几个方面:继承父模块的配置依赖管理(dependencyManagement):子模块可以继承父模块中定义的依赖管理配置。在子模块的dependencies中引用依赖时,如
- C语言文件相关函数
Beginner_bml
开发语言c语言
目录一、引言二、文件函数概述1.文件类型指针2.常用文件函数三、文件函数使用详解1.打开文件2.关闭文件3.写入文件4.读取文件5.二进制文件操作四、实战应用五、总结本文将详细介绍C语言中文件函数的基本概念、常用函数及其使用方法,并通过实例讲解如何在实际项目中应用文件函数进行数据的读写操作。掌握这些知识,将有助于提高C语言编程能力,为后续的项目开发奠定基础。一、引言在C语言编程中,文件操作是不可或
- Python配置管理工具库之hydra使用详解
Rocky006
python人工智能开发语言
概要在开发复杂的Python应用程序时,配置管理往往是一个重要但容易被忽视的部分。Hydra是一个强大的配置管理工具,它旨在简化配置文件的管理和使用,尤其是在涉及多个配置文件和参数组合的场景下。Hydra提供了一种优雅的方式来组织和访问配置数据,并支持动态生成和组合配置。这对于机器学习、数据科学和大型Python应用程序开发来说尤其有用。本文将详细介绍Hydra库,包括其安装方法、主要特性、基本和
- Python配置管理模块之Hydra使用详解
Rocky006
数据库python开发语言
概要在现代软件开发中,配置管理是一个至关重要的环节。随着应用程序的复杂性增加,如何有效地管理和组织配置文件成为了开发者面临的一大挑战。Python的Hydra模块为这一问题提供了优雅的解决方案。Hydra是一个用于管理复杂应用程序配置的框架,它允许用户通过命令行参数、配置文件和其他方式灵活地管理配置。本文将深入分析Hydra模块的应用,并通过代码示例展示其强大的功能。Hydra模块概述Hydra是
- BarChart使用详解及详细属性
Andy醒
AndroidBarChart
本来准备自己写的但是看见这篇文字写得很不错,就直接上地址了:http://blog.csdn.net/github_33304260/article/details/51272078
- Python分布式任务处理库之dramatiq使用详解
Rocky006
python开发语言
概要在现代Web应用和数据处理任务中,异步任务处理是一个至关重要的部分。Dramatiq是一个用于分布式任务处理的Python库,旨在提供简单、可靠的任务队列解决方案。与其他任务队列库相比,Dramatiq更加轻量级,且易于上手。它的设计目标是帮助开发者轻松地将耗时的任务放到后台处理,从而提升应用程序的响应速度。本文将详细介绍Dramatiq库,包括其安装方法、主要特性、基本和高级功能,以及实际应
- Python数据分析利器之groupby和pivot_table使用详解
Rocky006
python数据分析开发语言
概要在数据分析的过程中,数据聚合与数据透视是两项非常重要的操作。Python的Pandas库提供了强大的工具——groupby和pivot_table,帮助我们高效地进行数据聚合和透视分析。本文将详细介绍如何使用这两个功能,并结合示例代码展示它们的实际应用,帮助更好地掌握数据分析的技巧。数据聚合groupbygroupby是Pandas中用于对数据进行分组并进行聚合操作的工具。通过groupby,
- Python在神经网络中优化激活函数选择使用详解
Rocky006
python开发语言
概要在神经网络中,激活函数扮演着至关重要的角色。它的主要作用是引入非线性因素,使得神经网络能够处理复杂的非线性问题。如果没有激活函数,神经网络仅仅是线性模型的堆叠,无法胜任深度学习中的各种任务。本文将深入探讨几种常用的激活函数,包括Sigmoid、Tanh、ReLU及其变种,并通过具体的代码示例展示它们在Python中的实现和应用。激活函数的重要性激活函数将输入信号进行非线性转换,从而增强神经网络
- java jmap jstat_JVM性能调优监控工具jps、jstack、jstat、jmap、jinfo使用详解
小五咔咔咔
javajmapjstat
是什么jps查看所有的jvm进程,包括进程ID,进程启动的路径等等。我自己也用PS,即:ps-ef|grepjavajstack观察jvm中当前所有线程的运行情况和线程当前状态。系统崩溃了?如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的javastack和nativestack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。系统hung住了?
- C++STL之list的使用详解
小菜鸡的蜕变之路
STL读书笔记c++开发语言liststl数据结构
一、简介1、底层:list为双向链表,即struct中包含一个数据和两个指针,分别指向前一个节点和后一个节点,在堆上分配空间,每插入一个元数都会分配空间,每删除一个元素都会释放空间2、性能①访问:随机访问性能很差,只能快速访问头尾节点②插入:很快,一般是常数开销③删除:很快,一般是常数开销3、适用场景:list拥有一段不连续的内存空间,如果需要高效的插入和删除,而不关心随机访问,则应使用list二
- C++STL之map的使用详解
小菜鸡的蜕变之路
STL读书笔记c++stl算法
简介:map底层实现为红黑树,增删查的时间复杂度:O(logn),key是有序的,默认升序一、初始化#include#include#includeusingnamespacestd;intmain(){std::mapmyMap={{1,"apple"},{2,"mango"}};//初始化std::mapm1(myMap);//拷贝构造std::mapm2=myMap;//赋值return0;
- Vue.js 中的 vue-property-decorator 使用详解
小于负无穷
vue.js前端javascript前端框架typescriptnpmyarn
引言Vue.js是一个流行的前端框架,它的核心理念是让开发者以声明式的方式构建用户界面。尽管Vue的官方API非常直观易用,但随着项目的复杂度增加,使用TypeScript进行类型检查和更好的代码组织变得越来越重要。vue-property-decorator是一个用于在Vue.js中使用TypeScript装饰器的库,它能够简化Vue组件的定义,使代码更加简洁和可维护。本文将深入探讨vue-pr
- Notion使用详解一基础教程
shiming8879
notion
Notion使用详解一基础教程Notion,这款被誉为“来自未来的笔记协作工具”,自问世以来就凭借其强大的功能和独特的设计理念吸引了众多用户。它不仅集成了笔记、知识库、任务管理等多种功能于一体,还通过模块化设计、无限层级页面以及动态编辑器等特点,为用户提供了前所未有的使用体验。以下是对Notion使用的基础教程,旨在帮助初学者快速上手并充分利用其功能。一、Notion简介Notion是一款集笔记、
- Spring Boot 中动态数据源配置与使用详解
码农阿豪@新空间代码工作室
包罗万象收集springbootandroid后端
SpringBoot中动态数据源配置与使用详解在现代应用中,处理多数据源是常见的需求。可能由于业务需要,或者为了实现读写分离,我们往往需要在同一个应用中配置多个数据源,并根据具体的操作选择不同的数据源。在SpringBoot中,这样的需求可以通过动态数据源来轻松实现。本篇博客将详细介绍如何在SpringBoot中配置和使用动态数据源,并演示如何切换到指定的数据源。一、为什么要使用动态数据源?业务隔
- android常用控件详解,Android常见控件使用详解
尹子先生
android常用控件详解
本文实例为大家分享了六种Android常见控件的使用方法,供大家参考,具体内容如下1、TextView主要用于界面上显示一段文本信息2、Button用于和用户交互的一个按钮控件//为Button点击事件注册一个监听器publicclassClickextendsActivity{privateButtonbutton;@OverrideptotectedvoidonCreate(Bundlesav
- 海山数据库(He3DB)代理ProxySQL使用详解:(二)功能实测
牛燕飞
androidadb
读写分离实测ProxySQL官方demo演示了三种读写分离的方式:使用不同的端口进行读写分离、使用正则表达式进行通用的读写分离、使用正则和digest进行更智能的读写分离。最后一种是针对特定业务进行的优化调整,也可将其归结为第二种方式,下边分别进行测试。基于端口的读写分离环境准备MySQL里创建访问用户,监控用户SQL#创建监控账号createusermonitor@'192.168.31.%'i
- Python缓存之importlib.cache的使用详解
Rocky006
python开发语言缓存
概要在Python中,模块是组织代码的基本单元。当你导入一个模块时,Python会缓存已加载的模块,以便在后续的导入中加快速度并节省内存。这种缓存机制使得模块在多次导入时不会重复加载,而是直接从缓存中获取。这篇文章将详细介绍Python模块缓存的工作原理,以及如何使用importlib.cache来管理和操作这些缓存。通过具体的示例代码,探讨如何利用这些技术提高程序的效率。什么是模块缓存当你在Py
- tomcat基础与部署发布
暗黑小菠萝
Tomcat java web
从51cto搬家了,以后会更新在这里方便自己查看。
做项目一直用tomcat,都是配置到eclipse中使用,这几天有时间整理一下使用心得,有一些自己配置遇到的细节问题。
Tomcat:一个Servlets和JSP页面的容器,以提供网站服务。
一、Tomcat安装
安装方式:①运行.exe安装包
&n
- 网站架构发展的过程
ayaoxinchao
数据库应用服务器网站架构
1.初始阶段网站架构:应用程序、数据库、文件等资源在同一个服务器上
2.应用服务和数据服务分离:应用服务器、数据库服务器、文件服务器
3.使用缓存改善网站性能:为应用服务器提供本地缓存,但受限于应用服务器的内存容量,可以使用专门的缓存服务器,提供分布式缓存服务器架构
4.使用应用服务器集群改善网站的并发处理能力:使用负载均衡调度服务器,将来自客户端浏览器的访问请求分发到应用服务器集群中的任何
- [信息与安全]数据库的备份问题
comsci
数据库
如果你们建设的信息系统是采用中心-分支的模式,那么这里有一个问题
如果你的数据来自中心数据库,那么中心数据库如果出现故障,你的分支机构的数据如何保证安全呢?
是否应该在这种信息系统结构的基础上进行改造,容许分支机构的信息系统也备份一个中心数据库的文件呢?
&n
- 使用maven tomcat plugin插件debug关联源代码
商人shang
mavendebug查看源码tomcat-plugin
*首先需要配置好'''maven-tomcat7-plugin''',参见[[Maven开发Web项目]]的'''Tomcat'''部分。
*配置好后,在[[Eclipse]]中打开'''Debug Configurations'''界面,在'''Maven Build'''项下新建当前工程的调试。在'''Main'''选项卡中点击'''Browse Workspace...'''选择需要开发的
- 大访问量高并发
oloz
大访问量高并发
大访问量高并发的网站主要压力还是在于数据库的操作上,尽量避免频繁的请求数据库。下面简
要列出几点解决方案:
01、优化你的代码和查询语句,合理使用索引
02、使用缓存技术例如memcache、ecache将不经常变化的数据放入缓存之中
03、采用服务器集群、负载均衡分担大访问量高并发压力
04、数据读写分离
05、合理选用框架,合理架构(推荐分布式架构)。
- cache 服务器
小猪猪08
cache
Cache 即高速缓存.那么cache是怎么样提高系统性能与运行速度呢?是不是在任何情况下用cache都能提高性能?是不是cache用的越多就越好呢?我在近期开发的项目中有所体会,写下来当作总结也希望能跟大家一起探讨探讨,有错误的地方希望大家批评指正。
1.Cache 是怎么样工作的?
Cache 是分配在服务器上
- mysql存储过程
香水浓
mysql
Description:插入大量测试数据
use xmpl;
drop procedure if exists mockup_test_data_sp;
create procedure mockup_test_data_sp(
in number_of_records int
)
begin
declare cnt int;
declare name varch
- CSS的class、id、css文件名的常用命名规则
agevs
JavaScriptUI框架Ajaxcss
CSS的class、id、css文件名的常用命名规则
(一)常用的CSS命名规则
头:header
内容:content/container
尾:footer
导航:nav
侧栏:sidebar
栏目:column
页面外围控制整体布局宽度:wrapper
左右中:left right
- 全局数据源
AILIKES
javatomcatmysqljdbcJNDI
实验目的:为了研究两个项目同时访问一个全局数据源的时候是创建了一个数据源对象,还是创建了两个数据源对象。
1:将diuid和mysql驱动包(druid-1.0.2.jar和mysql-connector-java-5.1.15.jar)copy至%TOMCAT_HOME%/lib下;2:配置数据源,将JNDI在%TOMCAT_HOME%/conf/context.xml中配置好,格式如下:&l
- MYSQL的随机查询的实现方法
baalwolf
mysql
MYSQL的随机抽取实现方法。举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1。但是,后来我查了一下MYSQL的官方手册,里面针对RAND()的提示大概意思就是,在ORDER BY从句里面不能使用RAND()函数,因为这样会导致数据列被多次扫描。但是在MYSQL 3.23版本中,
- JAVA的getBytes()方法
bijian1013
javaeclipseunixOS
在Java中,String的getBytes()方法是得到一个操作系统默认的编码格式的字节数组。这个表示在不同OS下,返回的东西不一样!
String.getBytes(String decode)方法会根据指定的decode编码返回某字符串在该编码下的byte数组表示,如:
byte[] b_gbk = "
- AngularJS中操作Cookies
bijian1013
JavaScriptAngularJSCookies
如果你的应用足够大、足够复杂,那么你很快就会遇到这样一咱种情况:你需要在客户端存储一些状态信息,这些状态信息是跨session(会话)的。你可能还记得利用document.cookie接口直接操作纯文本cookie的痛苦经历。
幸运的是,这种方式已经一去不复返了,在所有现代浏览器中几乎
- [Maven学习笔记五]Maven聚合和继承特性
bit1129
maven
Maven聚合
在实际的项目中,一个项目通常会划分为多个模块,为了说明问题,以用户登陆这个小web应用为例。通常一个web应用分为三个模块:
1. 模型和数据持久化层user-core,
2. 业务逻辑层user-service以
3. web展现层user-web,
user-service依赖于user-core
user-web依赖于user-core和use
- 【JVM七】JVM知识点总结
bit1129
jvm
1. JVM运行模式
1.1 JVM运行时分为-server和-client两种模式,在32位机器上只有client模式的JVM。通常,64位的JVM默认都是使用server模式,因为server模式的JVM虽然启动慢点,但是,在运行过程,JVM会尽可能的进行优化
1.2 JVM分为三种字节码解释执行方式:mixed mode, interpret mode以及compiler
- linux下查看nginx、apache、mysql、php的编译参数
ronin47
在linux平台下的应用,最流行的莫过于nginx、apache、mysql、php几个。而这几个常用的应用,在手工编译完以后,在其他一些情况下(如:新增模块),往往想要查看当初都使用了那些参数进行的编译。这时候就可以利用以下方法查看。
1、nginx
[root@361way ~]# /App/nginx/sbin/nginx -V
nginx: nginx version: nginx/
- unity中运用Resources.Load的方法?
brotherlamp
unity视频unity资料unity自学unityunity教程
问:unity中运用Resources.Load的方法?
答:Resources.Load是unity本地动态加载资本所用的方法,也即是你想动态加载的时分才用到它,比方枪弹,特效,某些实时替换的图像什么的,主张此文件夹不要放太多东西,在打包的时分,它会独自把里边的一切东西都会集打包到一同,不论里边有没有你用的东西,所以大多数资本应该是自个建文件放置
1、unity实时替换的物体即是依据环境条件
- 线段树-入门
bylijinnan
java算法线段树
/**
* 线段树入门
* 问题:已知线段[2,5] [4,6] [0,7];求点2,4,7分别出现了多少次
* 以下代码建立的线段树用链表来保存,且树的叶子结点类似[i,i]
*
* 参考链接:http://hi.baidu.com/semluhiigubbqvq/item/be736a33a8864789f4e4ad18
* @author lijinna
- 全选与反选
chicony
全选
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>全选与反选</title>
- vim一些简单记录
chenchao051
vim
mac在/usr/share/vim/vimrc linux在/etc/vimrc
1、问:后退键不能删除数据,不能往后退怎么办?
答:在vimrc中加入set backspace=2
2、问:如何控制tab键的缩进?
答:在vimrc中加入set tabstop=4 (任何
- Sublime Text 快捷键
daizj
快捷键sublime
[size=large][/size]Sublime Text快捷键:Ctrl+Shift+P:打开命令面板Ctrl+P:搜索项目中的文件Ctrl+G:跳转到第几行Ctrl+W:关闭当前打开文件Ctrl+Shift+W:关闭所有打开文件Ctrl+Shift+V:粘贴并格式化Ctrl+D:选择单词,重复可增加选择下一个相同的单词Ctrl+L:选择行,重复可依次增加选择下一行Ctrl+Shift+L:
- php 引用(&)详解
dcj3sjt126com
PHP
在PHP 中引用的意思是:不同的名字访问同一个变量内容. 与C语言中的指针是有差别的.C语言中的指针里面存储的是变量的内容在内存中存放的地址 变量的引用 PHP 的引用允许你用两个变量来指向同一个内容 复制代码代码如下:
<?
$a="ABC";
$b =&$a;
echo
- SVN中trunk,branches,tags用法详解
dcj3sjt126com
SVN
Subversion有一个很标准的目录结构,是这样的。比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是svn://proj/|+-trunk+-branches+-tags这是一个标准的布局,trunk为主开发目录,branches为分支开发目录,tags为tag存档目录(不允许修改)。但是具体这几个目录应该如何使用,svn并没有明确的规范,更多的还是用户自己的习惯。
- 对软件设计的思考
e200702084
设计模式数据结构算法ssh活动
软件设计的宏观与微观
软件开发是一种高智商的开发活动。一个优秀的软件设计人员不仅要从宏观上把握软件之间的开发,也要从微观上把握软件之间的开发。宏观上,可以应用面向对象设计,采用流行的SSH架构,采用web层,业务逻辑层,持久层分层架构。采用设计模式提供系统的健壮性和可维护性。微观上,对于一个类,甚至方法的调用,从计算机的角度模拟程序的运行情况。了解内存分配,参数传
- 同步、异步、阻塞、非阻塞
geeksun
非阻塞
同步、异步、阻塞、非阻塞这几个概念有时有点混淆,在此文试图解释一下。
同步:发出方法调用后,当没有返回结果,当前线程会一直在等待(阻塞)状态。
场景:打电话,营业厅窗口办业务、B/S架构的http请求-响应模式。
异步:方法调用后不立即返回结果,调用结果通过状态、通知或回调通知方法调用者或接收者。异步方法调用后,当前线程不会阻塞,会继续执行其他任务。
实现:
- Reverse SSH Tunnel 反向打洞實錄
hongtoushizi
ssh
實際的操作步驟:
# 首先,在客戶那理的機器下指令連回我們自己的 Server,並設定自己 Server 上的 12345 port 會對應到幾器上的 SSH port
ssh -NfR 12345:localhost:22
[email protected]
# 然後在 myhost 的機器上連自己的 12345 port,就可以連回在客戶那的機器
ssh localhost -p 1
- Hibernate中的缓存
Josh_Persistence
一级缓存Hiberante缓存查询缓存二级缓存
Hibernate中的缓存
一、Hiberante中常见的三大缓存:一级缓存,二级缓存和查询缓存。
Hibernate中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存。这一级别的缓存是由hibernate管理的,一般情况下无需进行干预;第二级别的缓存是SessionFactory级别的缓存,它是属于进程范围或群集范围的缓存。这一级别的缓存
- 对象关系行为模式之延迟加载
home198979
PHP架构延迟加载
形象化设计模式实战 HELLO!架构
一、概念
Lazy Load:一个对象,它虽然不包含所需要的所有数据,但是知道怎么获取这些数据。
延迟加载貌似很简单,就是在数据需要时再从数据库获取,减少数据库的消耗。但这其中还是有不少技巧的。
二、实现延迟加载
实现Lazy Load主要有四种方法:延迟初始化、虚
- xml 验证
pengfeicao521
xmlxml解析
有些字符,xml不能识别,用jdom或者dom4j解析的时候就报错
public static void testPattern() {
// 含有非法字符的串
String str = "Jamey친ÑԂ
- div设置半透明效果
spjich
css半透明
为div设置如下样式:
div{filter:alpha(Opacity=80);-moz-opacity:0.5;opacity: 0.5;}
说明:
1、filter:对win IE设置半透明滤镜效果,filter:alpha(Opacity=80)代表该对象80%半透明,火狐浏览器不认2、-moz-opaci
- 你真的了解单例模式么?
w574240966
java单例设计模式jvm
单例模式,很多初学者认为单例模式很简单,并且认为自己已经掌握了这种设计模式。但事实上,你真的了解单例模式了么。
一,单例模式的5中写法。(回字的四种写法,哈哈。)
1,懒汉式
(1)线程不安全的懒汉式
public cla