- RabbitMQ面试精讲 Day 3:Exchange类型与路由策略详解
在未来等你
RabbitMQ面试专栏RabbitMQ消息队列Exchange路由策略AMQP面试题分布式系统
【RabbitMQ面试精讲Day3】Exchange类型与路由策略详解文章标签RabbitMQ,消息队列,Exchange,路由策略,AMQP,面试题,分布式系统文章简述本文是"RabbitMQ面试精讲"系列第3天内容,深入解析RabbitMQ的核心组件——Exchange及其路由策略。文章详细剖析4种Exchange类型(Direct/Fanout/Topic/Header)的工作原理和适用场景
- 熬之滴水穿石:JSP--HTML中的JAVA代码(1)
33--JSP的由来说实话,在B/S系统中我并没有多少前端开发的经验。03年由C/S转B/S后曾有那么短暂的时间写前台用过JSP。但大部分时间从事后台的开发,等04年当上项目经理后基本没有搞过Web页面的开发了。这些工作都是留给我的团队开发的,但是不管角色怎么变,对于技术上的理解和追求始终没变!03年JSPJavaBean开发应用系统,到06年时已经是Web2.0的时代了,07年还用了JSF。有些
- krpano 渲染全景视频
是菜菜的小前端啊
前端
使用krpano渲染全景视频,可渲染不同分辨率的视频。使用的krpano版本为1.19index.htmlERROR:Javascriptnotactivatedembedpano({xml:"video.xml",target:"pano",passQueryParameters:"startscene,startlookat"});video.xmlif(device.panovideosup
- IDEA spring-boot-devtools 热部署
A_aspectJ项目开发
JavaEE阶段springbootjava
1、IDEA编写SpringBoot项目时,修改了Java文件,浏览器无法实时访问修改后的内容时,此时可以设置热部署插件。2、在pom.xml文件中添加热部署依赖,中设置插件fork为true org.springframework.boot spring-boot-devtools runtime true
- RabbitMQ--批量处理
你我约定有三
RabbitMQwindowsjavarabbitmq后端
一、RabbitMQ原生批量处理(Java客户端)1.1原生RabbitMQ不支持真正意义上的“批量监听消费”,但支持“批量确认”//原生消费:注册一个消费者channel.basicConsume("queue_name",false,(consumerTag,message)->{//处理单条消息System.out.println("收到消息:"+newString(message.getB
- Tomcat 目录结构及JAR包说明
WSSWWWSSW
tomcatjarjava
Tomcat目录结构及JAR包说明一、Tomcat目录结构概述ApacheTomcat是一个开源的Servlet容器,用于运行JavaWeb应用程序。其标准目录结构如下:tomcat/├──bin/#二进制脚本文件(启动、停止等)├──conf/#配置文件目录├──lib/#Tomcat核心库及依赖├──logs/#日志文件目录├──temp/#临时文件目录├──webapps/#Web应用程序部
- 305李03days作业#裂变实验室#
李_d891
A账号大数据里加的人B账号精筛选一遍的客户C账号vip客户深度信任客户今天事情有点多,没有好好学习,明天重新写一个补到新作业里。
- Spring MVC、Spring Boot 和 Spring Cloud简要介绍及区别
箬敏伊儿
javaspringbootspringspringcloud
SpringMVC、SpringBoot和SpringCloud是Spring生态系统中的三个重要组件,它们在不同层面上帮助开发者构建和管理应用程序。以下是对它们的介绍及其区别:SpringMVC介绍SpringMVC(Model-View-Controller)是一个基于Java的Web框架,用于构建Web应用程序和RESTful服务。它提供了一组组件和注解,简化了Web应用程序的开发,尤其是与
- 借助零信任网格重塑分布式MCP与LLM访问:安全、灵活的下一代架构实践
码力金矿
机器学习深度学习人工智能人工智能自动化运维数据库mysqlpythonjava
在数字化转型的浪潮中,AI应用与分布式系统正在加速融合。传统架构中,MCP(模型上下文协议)服务与LLM(大语言模型)工具的部署常面临安全暴露、网络复杂性、跨防火墙通信等挑战。本文将结合零信任网格(ZTM,ZeroTrustMesh)与Flomesh技术,探索一种更安全、灵活的分布式架构方案,让MCP服务无需VPN或静态IP即可实现全球可访问,同时为LLM应用提供统一的安全层。一、传统分布式架构的
- Ant的使用
菁华浮英梦
1、Ant:基于java的生成工具,作用类似于C的Make。make工具有两个缺陷:依赖UNIX的SHELL语言,所以无法跨平台;生成文件格式严格,容易导致错误。Ant基于java,所以可以跨平台,而且Ant使用XML生成文件,具有更好的适应性。2、下载和安装:①解压之后的文件结构如下:bin:启动启动和运行ant的可执行命令etc:包含一些样式单文件,通常无需理会该目录下的文件lib:包含Ant
- k8s:手动创建PV,解决postgis数据库本地永久存储
云游
k8skubernetes容器云原生
1.离线环境CPU:HygonC86728532-coreProcessor操作系统:麒麟操作系统containerd:1.7.27Kubernetes:1.26.12KubeSphere:4.1.2kubekey:3.1.10Harbor:2.13.1Postgis:17-3.52创建StorageClass2.1创建apiVersion:storage.k8s.io/v1kind:Storag
- USB串口通信、握手协议、深度学习等技术要点
深度学习教程,
深度学习人工智能网络协议
基于OpenMV的智能车牌识别系统:从硬件到算法的完整实现前言本文将详细介绍一个基于OpenMV微控制器的智能车牌识别系统的设计与实现。该系统集成了嵌入式视觉处理、串口通信协议、深度学习OCR识别等多种技术,实现了从图像采集到车牌识别的完整流程。系统架构概述整体设计思路该车牌识别系统采用分布式架构设计,将计算密集型任务与嵌入式控制分离:┌─────────────┐USB串口通信┌────────
- Unity与VS2015协同调试C#脚本实战指南
带你玩遍北海道
本文还有配套的精品资源,点击获取简介:Unity是广受青睐的跨平台游戏引擎,C#是其主要编程语言。VisualStudio2015作为一个强大的IDE,支持对Unity项目中的C#代码进行深入调试。本文将指导你如何设置VisualStudio2015作为Unity项目的官方外部脚本编辑器,并详细说明如何在VS2015中进行代码调试,包括断点设置、启动调试、调试操作和性能优化等步骤。了解这些调试技巧
- 深入浅出理解 IOC(控制反转)与 DI(依赖注入)
snowfoootball
前后端java开发语言spring
深入浅出理解IOC(控制反转)与DI(依赖注入)深入理解Spring框架中的IoC与DI在学习Spring框架时,控制反转(IoC)和依赖注入(DI)是不可回避的核心概念。它们不仅是设计模式的体现,更是实现高内聚、低耦合架构的关键。本文将从“为何需要”与“如何实现”两个维度,深入剖析这两个概念。一、为何需要IoC与DI:面向对象设计的挑战考虑以下传统的Java代码示例:publicclassOrd
- Kubernetes 配置管理全解析:ConfigMap 与 Secret 核心机制
在Kubernetes中管理应用配置和敏感信息是核心需求。ConfigMap用于存储非敏感配置数据(如环境变量、配置文件),而Secret专用于存储敏感信息(如密码、密钥),两者都通过键值对形式存储数据,并支持挂载为环境变量或文件供Pod使用。一、核心概念对比特性ConfigMapSecret数据类型非敏感配置(如环境变量、配置文件)敏感数据(密码、密钥、Token)存储格式明文存储(YAML/J
- Kubernetes 核心命令速查手册:运维与开发必备
liux3528
k8skubernetes运维容器
本文整理了Kubernetes集群运维的实用命令集锦,涵盖8大核心场景:1)集群基础信息查看;2)Pod生命周期管理;3)服务与网络配置;4)存储与配置管理;5)故障排查方法;6)性能监控优化;7)高级运维技巧;8)命令行效率工具。重点包括节点状态查询、Pod调试、日志分析、网络连通性测试、资源监控等高频操作,并提供了批量处理、安全审计、集群维护等进阶技巧。每个命令均标注适用场景,可作为K8s运维
- Eureka 和 Nacos
简单程序猿
eureka云原生
一、基本介绍EurekaEureka是Netflix公司开发的一款基于REST风格的服务注册与发现组件,专为分布式系统设计。它遵循AP原则(可用性、分区容错性优先),强调在网络分区等异常情况下的服务可用性,是SpringCloudNetflix生态中的核心组件之一。NacosNacos(DynamicNamingandConfigurationService)是阿里巴巴开源的一站式服务发现、配置管
- Day1学习心得||Leetcode704,27,977
Part1数组的一些注意点第一天学习的内容是数组,基础的内容就按下不表,浅记一下补上的漏洞1.数组的元素不能删除,只能覆盖乍一看可能比较奇怪,但是仔细思考一下很简单。关注一下数组的本质其实是内存上开辟的一串连续的内存空间。在程序中,只能将内存空间中存储的内容改写,而不能完全去除(即使动态数组也只是释放)。2.二维数组的空间地址依然是连续的(顺序比较像阅读的顺序)tip:虽然还没学过Java,但是先
- Java内存模型深度解析:栈、堆、方法区详解
wsj__WSJ
javajava
本文通过生动比喻和实战案例,帮你彻底掌握Java内存结构中栈内存、堆内存和方法区的核心原理与协作方式。一、为什么要区分三种内存?Java划分栈、堆、方法区是为了提高内存使用效率,不同数据有不同的生命周期和访问频率:数据类型类比场景存储位置生命周期临时数据(方法参数)便签纸栈内存方法执行期间对象实例常用文件夹堆内存对象存在期间类定义信息公司制度手册方法区程序运行期间就像高效的办公桌管理:栈内存:临时
- JSON 对象
JSON对象概述JSON(JavaScriptObjectNotation)对象是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSON对象是JSON数据的一种基本结构,类似于JavaScript中的对象(Object)。在本文中,我们将详细介绍JSON对象的概念、语法、创建方法以及在实际应用中的使用。JSON对象的语法JSON对象使用大括号{}表示,其中包含一系列键值对。
- 小白带你部署LNMP分布式部署
刘俊涛liu
分布式
目录前言一、概述二、LNMP环境部署三、配置nginx1、yum安装2、编译安装四、安装1、编译安装nginx2、网络源3、稍作优化4、修改配置文件vim/usr/local/nginx/conf/nginx.conf5、书写测试页面五、部署应用前言LNMP平台指的是将Linux、Nginx、MySQL和PHP(或者其他的编程语言,如Python、Perl等)集成在一起的一种Web服务器环境。它是
- 力扣Leetcode热题100-二分查找 解题思路分享
花卷321
Leetcode热门100leetcode职场和发展java开发语言
1.搜索插入位置题目如下:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为O(logn)的算法。思路分析与最基本的二分查找算法类似,但是基础的二分查找在找不到值的时候一般情况下返回-1,找到的值返回索引,下面先展示最基本的二分查找的Java代码:publicstaticintbinarySearch(in
- gRPC深度解析:原理、实践与性能优化指南
亲爱的非洲野猪
性能优化
引言在现代分布式系统架构中,服务间通信的效率直接影响着整体系统的性能。gRPC作为新一代RPC框架,凭借其高性能、跨语言支持和强大的功能特性,已成为微服务通信的事实标准。本文将深入剖析gRPC的核心原理,分享最佳实践,并提供生产环境中的优化建议。一、gRPC核心架构解析1.1ProtocolBuffers:高效的数据交换格式ProtocolBuffers(简称protobuf)是gRPC的接口定义
- Java学习----Redis集群
典孝赢麻崩乐急
java学习redis
在分布式系统开发中,Redis作为高性能的键值存储数据库,被广泛用于缓存、会话存储、消息队列等场景。当单节点Redis无法满足高并发、大容量的需求时,Redis集群成为解决性能瓶颈和数据可靠性问题的关键方案。Redis集群是Redis提供的分布式解决方案,通过将数据分片存储在多个节点上,实现数据的分布式存储和负载均衡。它由多个Redis节点组成,节点之间通过gossip协议进行通信,共同承担数据存
- ⚡C++ 有必要学吗?⚡我的家长有话说
司空妲命
c++开发语言
在编程教育愈发普及的当下,除了备受关注的Python,C++也进入了许多家长和孩子的视野。作为一门经典且强大的编程语言,C++在系统开发、游戏制作、嵌入式领域等有着广泛应用。然而,对于是否让孩子学习C++,家长们看法不一。有人认为它是通往高端技术领域的钥匙,也有人担忧其较高的学习难度会让孩子望而却步。今天,就让我们深入探讨C++学习的必要性。一、家长眼中的C++:潜力与顾虑交织有人疑惑:“C++现
- Crawlee高阶用法:无代码配置实现动态网站爬虫
程序员威哥
爬虫pythonscrapytcp/ip网络协议
爬虫开发一直以来都需要编写大量的代码,尤其是在抓取动态网站时,往往需要处理JavaScript渲染和分页等复杂的问题。然而,Crawlee(之前叫ApifySDK)作为一个现代化的爬虫框架,提供了更加高效和简便的方式,甚至可以通过无代码配置来快速抓取动态网站数据。在本篇文章中,我们将深入探讨如何使用Crawlee实现动态网站的爬虫,并展示如何通过简单的配置来完成爬虫任务,节省开发时间和精力。1.C
- Python爬虫高阶:Selenium+Scrapy+Playwright融合架构,攻克动态页面与高反爬场景
程序员威哥
python爬虫selenium
随着互联网应用的不断发展,越来越多的网站采用JavaScript动态渲染页面,常见的静态页面数据抓取方式逐渐失效。此外,高反爬技术也使得传统爬虫架构面临着更大的挑战,许多网站通过复杂的反爬机制如验证码、IP屏蔽、请求频率限制等来防止数据抓取。为了应对这些挑战,我们需要采用更为先进和灵活的爬虫架构。在此背景下,结合Selenium、Scrapy和Playwright这三种技术,能够帮助我们突破动态页
- JAVA面试宝典 -《DDD实战:从贫血模型到领域事件》
DDD实战:从贫血模型到领域事件引言:为什么从三层架构转向DDD?在传统的三层架构中,我们习惯将系统划分为Controller、Service和Repository层,关注点更多落在“技术职责”而非“业务语义”。然而,随着系统复杂度提高,贫血模型、重复逻辑、脆弱耦合等问题层出不穷。领域驱动设计(DDD)正是为了解决这些问题而生。它强调以业务为中心建模,将“业务行为”作为核心驱动软件设计,帮助系统在
- ELF文件解析
涌进的小羔羊
Android逆向androidc++ELF解析
ELF文件解析近期正在进行Android的逆向。自己写出好代码是一个方面,而破解别人的代码则会给人另一种感受。因Java层的Android开发是如此不安全,越来越多的公司把重要的东西写入Native层,逻辑处理均由Native层完成,而Java层只负责进行结果显示。这样便要求对Native层的so文件进行逆向解析,而so文件是linux系统下的ELF(ExcutableandLinkableFil
- final修饰符不可变的底层
final修饰符的底层原理在Java中,final修饰符的底层实现涉及编译器优化和JVM字节码层面的约束其核心目标是保证被修饰元素的【不可变性】或【不可重写/继承性】一、final修饰类:禁止继承的底层约束当一个类被final修饰时,例如String、IntegerJVM在字节码层面会通过访问标志(accessflags)标记该类为ACC_FINAL编译器在编译时会检查:如果子类试图继承被fina
- 关于旗正规则引擎下载页面需要弹窗保存到本地目录的问题
何必如此
jsp超链接文件下载窗口
生成下载页面是需要选择“录入提交页面”,生成之后默认的下载页面<a>标签超链接为:<a href="<%=root_stimage%>stimage/image.jsp?filename=<%=strfile234%>&attachname=<%=java.net.URLEncoder.encode(file234filesourc
- 【Spark九十八】Standalone Cluster Mode下的资源调度源代码分析
bit1129
cluster
在分析源代码之前,首先对Standalone Cluster Mode的资源调度有一个基本的认识:
首先,运行一个Application需要Driver进程和一组Executor进程。在Standalone Cluster Mode下,Driver和Executor都是在Master的监护下给Worker发消息创建(Driver进程和Executor进程都需要分配内存和CPU,这就需要Maste
- linux上独立安装部署spark
daizj
linux安装spark1.4部署
下面讲一下linux上安装spark,以 Standalone Mode 安装
1)首先安装JDK
下载JDK:jdk-7u79-linux-x64.tar.gz ,版本是1.7以上都行,解压 tar -zxvf jdk-7u79-linux-x64.tar.gz
然后配置 ~/.bashrc&nb
- Java 字节码之解析一
周凡杨
java字节码javap
一: Java 字节代码的组织形式
类文件 {
OxCAFEBABE ,小版本号,大版本号,常量池大小,常量池数组,访问控制标记,当前类信息,父类信息,实现的接口个数,实现的接口信息数组,域个数,域信息数组,方法个数,方法信息数组,属性个数,属性信息数组
}
&nbs
- java各种小工具代码
g21121
java
1.数组转换成List
import java.util.Arrays;
Arrays.asList(Object[] obj); 2.判断一个String型是否有值
import org.springframework.util.StringUtils;
if (StringUtils.hasText(str)) 3.判断一个List是否有值
import org.spring
- 加快FineReport报表设计的几个心得体会
老A不折腾
finereport
一、从远程服务器大批量取数进行表样设计时,最好按“列顺序”取一个“空的SQL语句”,这样可提高设计速度。否则每次设计时模板均要从远程读取数据,速度相当慢!!
二、找一个富文本编辑软件(如NOTEPAD+)编辑SQL语句,这样会很好地检查语法。有时候带参数较多检查语法复杂时,结合FineReport中生成的日志,再找一个第三方数据库访问软件(如PL/SQL)进行数据检索,可以很快定位语法错误。
- mysql linux启动与停止
墙头上一根草
如何启动/停止/重启MySQL一、启动方式1、使用 service 启动:service mysqld start2、使用 mysqld 脚本启动:/etc/inint.d/mysqld start3、使用 safe_mysqld 启动:safe_mysqld&二、停止1、使用 service 启动:service mysqld stop2、使用 mysqld 脚本启动:/etc/inin
- Spring中事务管理浅谈
aijuans
spring事务管理
Spring中事务管理浅谈
By Tony Jiang@2012-1-20 Spring中对事务的声明式管理
拿一个XML举例
[html]
view plain
copy
print
?
<?xml version="1.0" encoding="UTF-8"?>&nb
- php中隐形字符65279(utf-8的BOM头)问题
alxw4616
php中隐形字符65279(utf-8的BOM头)问题
今天遇到一个问题. php输出JSON 前端在解析时发生问题:parsererror.
调试:
1.仔细对比字符串发现字符串拼写正确.怀疑是 非打印字符的问题.
2.逐一将字符串还原为unicode编码. 发现在字符串头的位置出现了一个 65279的非打印字符.
 
- 调用对象是否需要传递对象(初学者一定要注意这个问题)
百合不是茶
对象的传递与调用技巧
类和对象的简单的复习,在做项目的过程中有时候不知道怎样来调用类创建的对象,简单的几个类可以看清楚,一般在项目中创建十几个类往往就不知道怎么来看
为了以后能够看清楚,现在来回顾一下类和对象的创建,对象的调用和传递(前面写过一篇)
类和对象的基础概念:
JAVA中万事万物都是类 类有字段(属性),方法,嵌套类和嵌套接
- JDK1.5 AtomicLong实例
bijian1013
javathreadjava多线程AtomicLong
JDK1.5 AtomicLong实例
类 AtomicLong
可以用原子方式更新的 long 值。有关原子变量属性的描述,请参阅 java.util.concurrent.atomic 包规范。AtomicLong 可用在应用程序中(如以原子方式增加的序列号),并且不能用于替换 Long。但是,此类确实扩展了 Number,允许那些处理基于数字类的工具和实用工具进行统一访问。
 
- 自定义的RPC的Java实现
bijian1013
javarpc
网上看到纯java实现的RPC,很不错。
RPC的全名Remote Process Call,即远程过程调用。使用RPC,可以像使用本地的程序一样使用远程服务器上的程序。下面是一个简单的RPC 调用实例,从中可以看到RPC如何
- 【RPC框架Hessian一】Hessian RPC Hello World
bit1129
Hello world
什么是Hessian
The Hessian binary web service protocol makes web services usable without requiring a large framework, and without learning yet another alphabet soup of protocols. Because it is a binary p
- 【Spark九十五】Spark Shell操作Spark SQL
bit1129
shell
在Spark Shell上,通过创建HiveContext可以直接进行Hive操作
1. 操作Hive中已存在的表
[hadoop@hadoop bin]$ ./spark-shell
Spark assembly has been built with Hive, including Datanucleus jars on classpath
Welcom
- F5 往header加入客户端的ip
ronin47
when HTTP_RESPONSE {if {[HTTP::is_redirect]}{ HTTP::header replace Location [string map {:port/ /} [HTTP::header value Location]]HTTP::header replace Lo
- java-61-在数组中,数字减去它右边(注意是右边)的数字得到一个数对之差. 求所有数对之差的最大值。例如在数组{2, 4, 1, 16, 7, 5,
bylijinnan
java
思路来自:
http://zhedahht.blog.163.com/blog/static/2541117420116135376632/
写了个java版的
public class GreatestLeftRightDiff {
/**
* Q61.在数组中,数字减去它右边(注意是右边)的数字得到一个数对之差。
* 求所有数对之差的最大值。例如在数组
- mongoDB 索引
开窍的石头
mongoDB索引
在这一节中我们讲讲在mongo中如何创建索引
得到当前查询的索引信息
db.user.find(_id:12).explain();
cursor: basicCoursor 指的是没有索引
&
- [硬件和系统]迎峰度夏
comsci
系统
从这几天的气温来看,今年夏天的高温天气可能会维持在一个比较长的时间内
所以,从现在开始准备渡过炎热的夏天。。。。
每间房屋要有一个落地电风扇,一个空调(空调的功率和房间的面积有密切的关系)
坐的,躺的地方要有凉垫,床上要有凉席
电脑的机箱
- 基于ThinkPHP开发的公司官网
cuiyadll
行业系统
后端基于ThinkPHP,前端基于jQuery和BootstrapCo.MZ 企业系统
轻量级企业网站管理系统
运行环境:PHP5.3+, MySQL5.0
系统预览
系统下载:http://www.tecmz.com
预览地址:http://co.tecmz.com
各种设备自适应
响应式的网站设计能够对用户产生友好度,并且对于
- Transaction and redelivery in JMS (JMS的事务和失败消息重发机制)
darrenzhu
jms事务承认MQacknowledge
JMS Message Delivery Reliability and Acknowledgement Patterns
http://wso2.com/library/articles/2013/01/jms-message-delivery-reliability-acknowledgement-patterns/
Transaction and redelivery in
- Centos添加硬盘完全教程
dcj3sjt126com
linuxcentoshardware
Linux的硬盘识别:
sda 表示第1块SCSI硬盘
hda 表示第1块IDE硬盘
scd0 表示第1个USB光驱
一般使用“fdisk -l”命
- yii2 restful web服务路由
dcj3sjt126com
PHPyii2
路由
随着资源和控制器类准备,您可以使用URL如 http://localhost/index.php?r=user/create访问资源,类似于你可以用正常的Web应用程序做法。
在实践中,你通常要用美观的URL并采取有优势的HTTP动词。 例如,请求POST /users意味着访问user/create动作。 这可以很容易地通过配置urlManager应用程序组件来完成 如下所示
- MongoDB查询(4)——游标和分页[八]
eksliang
mongodbMongoDB游标MongoDB深分页
转载请出自出处:http://eksliang.iteye.com/blog/2177567 一、游标
数据库使用游标返回find的执行结果。客户端对游标的实现通常能够对最终结果进行有效控制,从shell中定义一个游标非常简单,就是将查询结果分配给一个变量(用var声明的变量就是局部变量),便创建了一个游标,如下所示:
> var
- Activity的四种启动模式和onNewIntent()
gundumw100
android
Android中Activity启动模式详解
在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作。在Android中Activity的启动模式决定了Activity的启动运行方式。
Android总Activity的启动模式分为四种:
Activity启动模式设置:
<acti
- 攻城狮送女友的CSS3生日蛋糕
ini
htmlWebhtml5csscss3
在线预览:http://keleyi.com/keleyi/phtml/html5/29.htm
代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>攻城狮送女友的CSS3生日蛋糕-柯乐义<
- 读源码学Servlet(1)GenericServlet 源码分析
jzinfo
tomcatWebservlet网络应用网络协议
Servlet API的核心就是javax.servlet.Servlet接口,所有的Servlet 类(抽象的或者自己写的)都必须实现这个接口。在Servlet接口中定义了5个方法,其中有3个方法是由Servlet 容器在Servlet的生命周期的不同阶段来调用的特定方法。
先看javax.servlet.servlet接口源码:
package
- JAVA进阶:VO(DTO)与PO(DAO)之间的转换
snoopy7713
javaVOHibernatepo
PO即 Persistence Object VO即 Value Object
VO和PO的主要区别在于: VO是独立的Java Object。 PO是由Hibernate纳入其实体容器(Entity Map)的对象,它代表了与数据库中某条记录对应的Hibernate实体,PO的变化在事务提交时将反应到实际数据库中。
实际上,这个VO被用作Data Transfer
- mongodb group by date 聚合查询日期 统计每天数据(信息量)
qiaolevip
每天进步一点点学习永无止境mongodb纵观千象
/* 1 */
{
"_id" : ObjectId("557ac1e2153c43c320393d9d"),
"msgType" : "text",
"sendTime" : ISODate("2015-06-12T11:26:26.000Z")
- java之18天 常用的类(一)
Luob.
MathDateSystemRuntimeRundom
System类
import java.util.Properties;
/**
* System:
* out:标准输出,默认是控制台
* in:标准输入,默认是键盘
*
* 描述系统的一些信息
* 获取系统的属性信息:Properties getProperties();
*
*
*
*/
public class Sy
- maven
wuai
maven
1、安装maven:解压缩、添加M2_HOME、添加环境变量path
2、创建maven_home文件夹,创建项目mvn_ch01,在其下面建立src、pom.xml,在src下面简历main、test、main下面建立java文件夹
3、编写类,在java文件夹下面依照类的包逐层创建文件夹,将此类放入最后一级文件夹
4、进入mvn_ch01
4.1、mvn compile ,执行后会在