- 系统架构设计师【第5章】: 软件工程基础知识 (核心总结)
数据知道
系统架构软件工程软考高级系统架构设计师软件工程基础
文章目录5.1软件工程5.1.1软件工程定义5.1.2软件过程模型5.1.3敏捷模型5.1.4统一过程模型(RUP)5.1.5软件能力成熟度模型5.2需求工程5.2.1需求获取5.2.2需求变更5.2.3需求追踪5.3系统分析与设计5.3.1结构化方法5.3.2面向对象方法5.4软件测试5.4.1测试方法5.4.2测试阶段5.5净室软件工程5.5.1理论基础5.5.2技术手段5.5.3应用与缺点5
- 全自动量化交易软件是否真的可靠?使用过程中有哪些潜在风险需要注意
财云量化
python炒股自动化量化交易程序化交易全自动量化交易软件可靠性潜在风险数据准确性股票量化接口股票API接口
炒股自动化:申请官方API接口,散户也可以python炒股自动化(0),申请券商API接口python炒股自动化(1),量化交易接口区别Python炒股自动化(2):获取股票实时数据和历史数据Python炒股自动化(3):分析取回的实时数据和历史数据Python炒股自动化(4):通过接口向交易所发送订单Python炒股自动化(5):通过接口查询订单,查询账户资产股票量化,Python炒股,CSDN
- Uniapp当中的scroll-view滚动条不出现或者触底刷新事件不触发
堕落年代
uniappuni-app
一、未正确设置容器高度问题描述scroll-view未设置明确高度或高度值无效,导致无法形成有效滚动区域。解决方案•使用行内样式直接设置height(如style="height:500rpx;"),避免类名样式被覆盖。•动态计算高度(例如通过uni.getSystemInfoSync()获取屏幕剩余高度)。二、滚动条样式被覆盖或隐藏问题描述•默认滚动条被全局CSS样式(如::-webkit-sc
- 69.Harmonyos NEXT图片预览组件应用实践(二):电商、内容与办公场景
harmonyos-next
温馨提示:本篇博客的详细代码已发布到git:https://gitcode.com/nutpi/HarmonyosNext可以下载运行哦!HarmonyosNEXT图片预览组件应用实践(二):电商、内容与办公场景效果预览一、电商应用最佳实践1.功能需求电商应用中的商品图片预览需求包括:支持商品多角度图片查看高清缩放查看商品细节商品参数标注和热点标记与商品信息面板的联动支持视频和图片混合展示2.实现
- HarmonyOS NEXT 获取当前位置信息
架构教育
在鸿蒙原生开发中,位置信息属于半开放隐私信息,开发中要想获取当前设备信息,需要向用户弹框申请权限及需要再module.json5添加权限列表"requestPermissions":[{"name":"ohos.permission.LOCATION","reason":"$string:permissionsReason","usedScene":{"abilities":["EntryAbil
- 短视频时代,普通人如何保护个人隐私?——从SSL证书看数据安全
安全
在短视频时代,每天数以亿计的用户上传内容、互动评论、甚至进行直播购物。然而,这些行为背后潜藏着隐私泄露的风险:账号密码被盗、支付信息被窃取、个人数据遭篡改……如何在这些场景中保护隐私?SSL证书作为互联网安全的基石,正扮演着关键角色。本文将从技术原理到实践建议,为你揭开SSL证书如何成为隐私保护的“隐形盾牌”。一、SSL证书:隐私保护的第一道防线SSL(SecureSocketsLayer)证书是
- HarmonyOS NEXT 将ArrayBuffer压缩到指定大小并转化为base64返回
架构教育
项目中有需求要对获取的图片进行压缩,并且是要压缩到固定大小,考虑到harmonyos中对图片质量压缩方式packing,压缩后要及时检查大小,就使用while循环一步步的压缩,直至压缩到目标值letbitmap:ArrayBuffer;//需要压缩的数据letcompressSize:number;//目标大小letconsiderBase64:boolean;//是否考虑base64算法把字节数
- sql语句编写逻辑
賢843
mysqlsql
一、SQL语句的「书写顺序」与「执行顺序」书写顺序(人类思维逻辑)SELECT字段列表--第3步:确定要输出的内容FROM表名--第1步:确定数据来源[JOIN表ON条件]--第2步:处理表连接关系WHERE筛选条件--第4步:过滤原始数据GROUPBY分组字段--第5步:数据分组HAVING分组后条件--第6步:过滤分组结果ORDERBY排序字段--第7步:排序结果LIMIT分页参数--第8步:
- Android第二次面试总结(项目拷打实战)
每次的天空
android
MVVM+Jetpack组件落地采用ViewModel+LiveData实现数据驱动开发,将UI逻辑与业务逻辑解耦,通过LiveData的生命周期感知能力避免内存泄漏。使用WorkManager替代传统Service处理后台任务(如数据同步),结合Room数据库实现任务持久化,确保应用被杀后仍能恢复任务。性能优化实战集成Glide加载国风插画,结合自定义三级缓存策略(内存LRU+磁盘缓存+本地资源
- Qt+ffmpeg环境搭建
技术不支持
qtffmpeg开发语言
Qt+ffmpeg环境搭建各平台常见视频开发库举例:iOS:AVFoundationAudioUnitAndroid:MediaPlayer,MediaCodecWindows:DirectShowLinux:GStreamerFFmpeg库是一个跨平台的视频开发库,还有libVLC也是一个跨平台的视频开发库掌握了其中一个库,也能很快上手其它库,因为音视频解码的原理类似引入FFmpeg库有两种方式
- QT中读取QSetting文件
Хайде
qt开发语言
1.ini文件的格式头文件#include#include#include#include2.读文件//ini文件的读取voidiniTest::readIniFile(QStringfilePath){//1.打开ini文件QSettingsm_iniFile(filePath,QSettings::IniFormat);//2.获取所有的分组QStringListgroupList=m_ini
- android 新闻客户端和springboot后台开发-网络接口封装(三)
mmsx
android作业源码分享androidspringboot
一、前言android新闻客户端和springboot后台开发(一)-CSDN博客android新闻客户端和springboot后台开发(二)-CSDN博客这篇接前面,写android客户端接口这样方面的实现。okhttp简易封装,方便使用。二、例如注册接口示例UsermUser=newUser(account,password,UserTypeEnum.User.getDesc());Okhtt
- 哨兵2号遥感影像解析全流程:步骤、算法与AI应用详解
zhz5214
AIGIS人工智能遥感aisentinel智能体
遥感影像解析是农业监测、环境评估等领域的重要技术手段。哨兵2号(Sentinel-2)凭借其高分辨率多光谱数据,成为遥感分析的热门数据源。本文将系统梳理哨兵2号影像解析的核心步骤、适用算法与软件工具,并探讨AI技术在该领域的创新应用。一、哨兵2号影像解析核心步骤1.数据获取与预处理数据下载哨兵2号数据可通过官方平台[CopernicusOpenAccessHub](https://scihub.c
- 大数据技术【7】
星绘搜题
bigdata数据挖掘大数据
1.目前所获取的总数据量的80%以上都是()数据。。A.结构化B.非结构化C.文本D.半结构化2.Kmeans算法包括如下步骤:①在第j次迭代中,对于每个样本点,选取最近的中心点,归为该类;②更新中心点为每类的均值;③随机选取k个中心点;④j选择一项:a.③①②④b.①②③④c.①④③②d.④③②①A.③①②④B.①②③④C.①④③②D.④③②①3.利用先验原理可以帮助减少频繁项集产生时需要探查的
- 如何更新 Oh My Zsh
獨梟
全面配置linux运维服务器
OhMyZsh会定期更新,提供新功能、优化和Bug修复。如果你想获取最新版本,可以手动更新。方法1:使用官方更新命令(推荐✅)OhMyZsh提供了内置的更新命令,非常简单高效。1.1运行更新命令omzupdate或者upgrade_oh_my_zsh1.2重启Zsh使更新生效execzsh✅这个方法最推荐,因为它:自动拉取最新的OhMyZsh版本更新所有插件不会覆盖你的.zshrc配置方法2:手动
- 【2025年饿了么春招-3月14日-第二题(200分)- 小红的排列构造】(题目+思路+Java&C++&Python解析+在线测试)
塔子哥学算法
javac++python算法数据结构饿了么
题目内容小红希望你构造一个长度为nnn的排列,满足∑i=1n∗i\sum_{i
- 接口测试中加密参数如何处理?
海姐软件测试
接口测试python开发语言测试工具职场和发展
1.加密类型及应对策略①对称加密(AES/DES)特点:加密解密使用同一密钥。处理方法:向开发获取密钥和加密算法(如AES-CBC、AES-ECB)。使用代码或工具解密响应数据:python复制fromCrypto.CipherimportAESimportbase64defdecrypt_aes(key,encrypted_data):cipher=AES.new(key.encode(),AE
- Podman 运行redis 报错
one one day
podmanredis数据库
Podman运行redis报错一、报错内容find:'.':Permissiondeniedchown:changingownershipof'.':Permissiondenied二、问题分析SELinux模式SELinux(Security-EnhancedLinux)是一种安全模块,旨在通过强制访问控制(MAC)来增强Linux系统的安全性。SELinux具有三种工作模式,每种模式提供不同的
- 分子动力学仿真软件:ESPResSo_(14).优化与性能提升
kkchenjj
分子动力学2模拟仿真仿真模拟分子动力学
优化与性能提升在分子动力学仿真中,性能优化是一个至关重要的环节。高效的仿真可以显著减少计算时间,提高研究效率。本节将详细介绍如何在ESPResSo中进行性能优化,包括并行计算、算法优化、内存管理等方面的内容。并行计算并行计算是提高分子动力学仿真性能的有效手段。ESPResSo支持多种并行计算模式,包括多线程(OpenMP)和分布式计算(MPI)。合理利用这些并行计算模式可以显著提升仿真速度。Ope
- 安全中心建设关键技术之机器学习
sinfoyou
安全机器学习人工智能
1.1.1功能要求针对目前广为流行的网银、掌上银行撞库行为,需要围绕撞库防护建立针对性的发现、预警、拦截体系。在本课题在大量数据中自动分析获得规律,并利用规律对未知数据进行预测。通过机器学习重点解决目前无法在识别撞库攻击源IP地址的基础上,进一步识别出被撞库成功的账号。由于机器学习算法需要从数据中自动分析获得规律,所以必须要有历史数据。在针对撞库攻击行为分析的场景中,首先需要获取手机银行和网上银行
- Redisson 分布式锁全面解析:锁类型(可重入锁、公平锁、联锁、红锁、读写锁)和锁常见方法解读
千层冷面
Redis分布式
Redisson分布式锁全面解析一、Redisson分布式锁原理Redisson分布式锁基于Redis实现,核心机制如下:Lua脚本保证原子性使用Lua脚本在Redis中执行锁的获取和释放操作,确保多个Redis命令的原子性。可重入锁设计同一线程可重复获取锁,通过计数器记录重入次数,避免死锁。看门狗(Watchdog)自动续期后台线程定期检查锁状态,若锁仍被持有且未完成业务逻辑,则自动延长锁的过期
- Android自动化测试工具
海棠如醉
web技术自动化运维
细解自动化测试工具Airtest-CSDN博客以下是几种常见的Android应用自动化测试工具:Appium:支持多种编程语言,如Java、Python、Ruby、JavaScript等。可以用于Web应用程序和原生应用程序的自动化测试,并支持iOS和Android平台。Espresso:由Google开发的AndroidUI测试框架,可用于测试应用程序的用户界面和与用户的交互。Espresso支
- SpringBoot整合MinIO实现文件的上传下载以及获取预览URL
.晚安.
springboot后端javaweb
SpringBoot整合MinIO实现文件的上传下载以及获取预览URLJDK17SpringBoot3参考https://min.io/docs/minio/linux/developers/java/API.html?ref=docs-redirect#uploadObject源码https://gitee.com/Uncommen/easy-min-io引入依赖在pom.xml中添加主要的依赖
- 佑驾创新获得大众、奥迪定点
高工智能汽车
自动驾驶人工智能
近日佑驾创新宣布,获得多封定点通知书,将为某全球知名车企旗下的合资品牌、豪华品牌提供DMS(驾驶员监测系统)及OMS(乘客监测系统)智能座舱解决方案。据其官方内容显示,两家品牌拥有广泛的用户基础和强大的品牌影响力,此次合作将进一步提升公司的市场覆盖率,同时也加速智能座舱技术的迭代升级。有知情业内人士透露,该合资品牌、豪华品牌为大众、奥迪。据悉,此次佑驾创新定点了多款车型,包括纯电及增程等不同能源类
- Prometheus + Grafana 配置监控指标
笑远
prometheusgrafana运维数据库
Prometheus+Grafana配置监控指标在前一篇指南中,我们详细介绍了如何安装和配置Prometheus与Grafana。接下来,我们将深入探讨如何配置Prometheus来采集具体的监控指标,并使用Grafana将这些指标可视化。本指南将涵盖以下内容:选择和配置Exporters(除了NodeExporter之外)配置Prometheus以采集相关指标在Grafana中创建和配置仪表板高
- Android文件选择器的优化之旅
t0_54manong
编程问题解决手册android个人开发
在Android开发中,我们经常需要用户从设备中选择文件。最近,我在处理一个项目时遇到了一个有趣的问题:如何限制用户只能选择一个文件,而不是多个。下面我将详细介绍如何实现这个功能,并提供一个实际的例子。问题描述通常,我们使用Intent.ACTION_OPEN_DOCUMENT来启动文件选择器。在默认情况下,这个选择器允许用户选择多个文件,但有时候我们希望用户只能选择一个文件。这不仅可以提高用户体
- 软件工程师的招聘
天黑了g
开发团队管理软件工程团队开发
要建设良好的开发团队,首先得招聘到合适的人才。合适的团队成员能够事半功倍,管理也会省心省力。本次要说的主要内容是关于普通软件开发工程师的招聘目标、面试过程和新人试用期阶段。招聘的岗位职责和技术要求一般是比较容易确定的,但在能力程度上就得好好考虑,是要招初级、中级还是高级?初级程序员主要作为辅助,写一些简单业务的类和方法,干一些杂货,一般工作经验不超过1年。中级工程师能够单独开发常规业务模块或完整的
- 无人机的科技革命:改变未来的力量
JiYan_blue
业界资讯
无人机的科技革命:改变未来的力量一、无人机的普及及其优势应用近年来,无人机已成为大众视线中的常见元素,它不仅仅是军事领域的重要工具,也逐渐走进了人们的日常生活。无人机具有高效率、低成本和灵活多样的特点,使其在各个领域展现出了广泛的应用前景。首先,在农业领域,无人机通过搭载先进的摄像头和传感器技术,可以实现精准农业的实施。它们能够迅速获取农田数据,帮助农民进行作物的病虫害监测和精准施肥。这不仅提高了
- R 语言科研绘图第 31 期 --- 韦恩图-基础
TigerZ 生信宝库
r语言贴图程序人生开发语言
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。为了便于使用,本系列文章介绍的所有绘图都已收录到了sciRplot项目中,获取方式:R语言科研绘图模板---sciRplothttps://mp.weixin.qq.com/s/QA_8LVqjkdg4A16zLonw4w?payreadticket=HElUE5WWmBflodEFw10g0l2NrRotj8kbU
- spring BeanFactory解析
yulin959
spring
BeanFactory是spring容器的根容器,定义和约定了获取对象.定义了spring管理的对象的生命周期;生命周期如下:Beanfactoryimplementationsshouldsupportthestandardbeanlifecycleinterfacesasfaraspossible.Thefullsetofinitializationmethodsandtheirstandar
- 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