- 学习笔记:java的23种设计模式总结
SJLoveIT
java设计模式
设计原则开闭原则:对扩展开放,对修改关闭里氏替换原则:尽量不重写父类的非抽象方法迪米特法则:不要和陌生人说话依赖倒置原则:面向接口、面向抽象编程。spring容器和Bean的自动注入就是最生动的实践单一职责原则:一个人只做一件事,别乱套了接口隔离原则:和单一职责类似合成复用原则:尽量先通过组合等来实现,而非通过继承来实现优先考虑hasA而非isA设计模式(1)单例模式饿汉式懒汉式DCL双重检测锁v
- k8s部署Nginx实现外部访问
leetrocken
nginxdockerk8syaml
k8s部署Nginx实现外部访问1.准备k8s环境[root@masteryaml]#kubectlgetnodes##两个节点均为Ready状态NAMESTATUSROLESAGEVERSIONmasterReadymaster3d8hv1.18.1nodeReady3d8hv1.18.12.检查主机上是否存在Nginx镜像[root@mastercicd]#dockerimages|grepn
- Tomcat 8.0.12 资源下载
洪岭瑶
Tomcat8.0.12资源下载【下载地址】Tomcat8.0.12资源下载本仓库提供Tomcat8.0.12版本的资源文件下载。Tomcat是一个开源的JavaServlet容器,广泛用于部署和运行JavaWeb应用程序项目地址:https://gitcode.com/open-source-toolkit/dde6e简介本仓库提供Tomcat8.0.12版本的资源文件下载。Tomcat是一个开
- 技术学习周刊第 3 期:Linux& 容器网络扫盲
艾希逐月
技术学习周刊学习linux网络
#IntroductiontoLinuxinterfacesforvirtualnetworking介绍了Linux中常用的网络概念,比如bridge网桥、veth对、VLAN&VXLAN、MACVLAN等,可以帮助自己对这些概念做一个快速的了解。#AnintroductiontoLinuxvirtualinterfaces:Tunnels算是上一篇文章的姊妹篇,主要介绍了Linux网络隧道相关的
- DeepSeek 提示词:常见指令类型
伏羲栈
人工智能deepseek提示词人工智能
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
- 教程 | 在 Linux 环境中安装 Docker(含2025最新镜像站加速,实测可用)
The god of big data
大Big数据Data容器那点事儿教程linuxdocker运维
在Linux环境中安装Docker的完整教程Docker是一种流行的容器化平台,可帮助用户快速构建、部署和运行应用程序。本教程将指导您如何在常见的Linux发行版(Ubuntu/Debian、CentOS/Fedora)上安装Docker。准备工作系统要求64位Linux系统(内核3.10或更高版本)。确保已安装curl或wget工具。以root用户或具有sudo权限的用户执行以下操作。卸载旧版本
- 内网安装docker、docker-compose和harbor仓库 保姆级教程
passion_flower_
云计算
下图是用到的安装包安装docker1.关闭防火墙firewalld和selinxsystemctlstopfirewalldsed-i'/^SELINUX=/cSELINUX=disabled/'/etc/selinux/config配置systemctl启动dockervim/etc/systemd/system/docker.service[Unit]Description=DockerApp
- Dockerfile实战:从代码到容器的自动化构建
一碗黄焖鸡三碗米饭
Docker技术之路自动化运维docker
Dockerfile实战:从代码到容器的自动化构建在现代软件开发中,容器化技术已经成为了一种主流趋势,Docker更是其中的佼佼者。Docker为开发人员提供了一个高效的方式来构建、打包和运行应用程序。而Dockerfile则是Docker镜像构建过程中的核心,作为一份配置文件,Dockerfile让自动化构建Docker镜像成为可能。本文将通过一个实际的案例,深入讲解如何编写Dockerfile
- Kubernetes集群V1.26二进制部署
L-0715H
Kuberneteskubernetes容器云原生
Kubernetes集群V1.26二进制部署1:环境介绍本环境是基于内网环境无互联网情况下的Kubernetes集群的部署,Runtime使用containerd。亲测有效,有基础可以修改我的配置文件,不懂请不要更改,无脑负责粘贴。容器编排:Kubernetes允许您在一个集群中运行和管理容器化的应用程序。它可以自动化容器的部署、扩展和运维。自动化部署:Kubernetes提供了强大的自动化部署功
- alpine镜像简介
小达人Fighting
dockerjava开发语言docker
AlpineLinux是一个轻量级的Linux发行版,因其小巧、安全和高效而广受欢迎,尤其是在容器化环境中(如Docker)。Alpine镜像指的是基于AlpineLinux制作的容器镜像。它的特点如下:极小的体积:Alpine镜像仅几MB大小,远小于其他常见的Linux镜像(如Ubuntu、Debian等)。这有助于节省存储空间,加快容器下载和部署速度。安全性:AlpineLinux默认采用了“
- ROS2入门教程—创建ROS2功能包(C++版)
Roar冷颜
ROS2入门教程其他
ROS2入门教程—创建ROS2功能包(C++版)1ROS2中的功能包2创建功能包3编译功能包4设置环境变量5运行功能包6功能包中的内容7修改package.xml文件 功能包是ROS2中组织代码的基本容器,方便我们编译、安装、分发开发的代码,一般来讲,每个功能包都是用来完成某项具体的功能相对完整的单元。1ROS2中的功能包 ROS2中的功能包可以使用CMake或者Python两种方式来编译(本
- docker-compose部署onlyoffice8.3.0并支持ssl,且支持通过nginx代理,关闭JWT配置
luopeng207663436
dockersslnginx
编写docker-compose文件mkdir-p/data/onlyoffice&&echo"version:'3'services:onlyoffice:container_name:OnlyOfficeimage:onlyoffice/documentserver:8.3.0restart:alwaysports:-8088:80-64431:443environment:TZ:Asia/S
- QNAP DOCKER 镜像拉取ddns-go
仒雨
威联通docker容器运维
1、通过putty,管理员账号登陆qnap;2、使用一键脚本bash-c"$(curl-sSLfhttps://xy.ggbond.org/xy/docker_pull.sh)"-s完整镜像名这个可以拉取到(至于镜像被拉取到哪里,这完全取决于docker_pull.sh脚本的内容。通常,Docker镜像会被拉取到本地的Docker镜像库中);3、通过dockerimages查看本地已有的Docke
- Docker部署常见应用之Oracle数据库
weixin_44585288
Docker数据库dockeroracle
文章目录安装部署参考文章安装部署使用Docker安装Oracle数据库是一个相对简便的过程,可以避免在本地环境中直接安装Oracle数据库的复杂性。安装Docker环境:确保你的系统上已经安装了Docker,并且Docker服务正在运行。具体的安装方法可以根据你的操作系统查找相应的Docker安装指南。Centos安装可以参考Docker和Docker-Compose安装。获取Oracle镜像:使
- Eureka应用
javaspringboot
Eureka[juˈriːkə]简介Eureka是Netflix服务发现的服务端与客户端,Eureka提供服务注册以及服务发现的能力,当是EurekaServer时(注册中心),所有的客户端会向其注册,当是EurekaClient时,可以从注册中心获取对应的服务信息,或者是向EurekaServer将自己作为实例注册进去,每个Eureka不仅仅是一个服务端同时还是一个客户端。注册中心当Eureka
- 现代C++9-迭代器和好用的新for循环
程序员zhi路
C++就业体系课资料c++开发语言
我们已经讲过了容器。在使用容器的过程中,你也应该对迭代器(iterator)或多或少有了些了解。今天,我们就来系统地讲一下迭代器。什么是迭代器?迭代器是一个很通用的概念,并不是一个特定的类型。它实际上是一组对类型的要求([1])。它的最基本要求就是从一个端点出发,下一步、下一步地到达另一个端点。按照一般的中文习惯,也许“遍历”是比“迭代”更好的用词。我们可以遍历一个字符串的字符,遍历一个文件的内容
- C++中迭代器与指针
DevangLic
BraveBridgec++开发语言学习算法数据结构
在C++中,指针和迭代器虽然在某些方面表现出相似的行为,但它们的设计目标、使用场景以及功能上有明显的不同。以下是它们的共性和区别,以及通过代码进行说明:1.共性:遍历容器元素:指针和迭代器都可以用来遍历数组或其他连续内存区域,或者STL容器中的元素。解引用操作:通过解引用操作符*可以访问指针或迭代器所指向的对象。算术运算:两者都支持自增(++)和自减(–)运算符,用于移动到下一个或前一个元素。示例
- HarmonyOS学习第10天: 解锁线性布局的魔法排列
老三不说话、
HarmonyOS开发harmonyos学习华为
线性布局初相识在HarmonyOS开发的奇妙旅程中,界面布局就像是搭建房屋的基石,而线性布局(LinearLayout)无疑是其中最为常用且基础的一块。它是构建有序界面排列的关键,通过线性容器Row和Column,能够让子元素在水平或垂直方向上依次排列,为我们打造出简洁、规整的用户界面。无论是简单的登录页面,还是复杂的应用主界面,线性布局都能发挥重要作用,帮助我们将各种组件合理地组织在一起,提升用
- Spring 事务
zhujilisa
Springspring
Spring事务使用Spring事务Spring事务传播使用Spring事务引入依赖org.springframeworkspring-tx5.3.20开启Spring事务注解@EnableTransactionManagement@Transactional该注解实际是导入了两个bean:1.AutoProxyRegistrar.class:通过beanDefinition向Spring容器注册
- Spring容器扩展点
zhujilisa
Springspring
Spring容器扩展点BeanDefinitionRegistryPostProcessorBeanFactoryPostProcessorImportSelectorImportBeanDefinitionRegistorBeanPostProcessorInstantiationAwareBeanPostProcessor--postProcessBeforeInstantiationSmar
- Spring MVC流程
zhujilisa
Springspring
SpringMVC启动流程启动流程父子容器请求处理MultipartFile解析参数传递返回值处理HandlerInterceptor启动流程启动Tomcat解析web.xml创建DispatcherServlet调用DIspatcherServlet的init方法4.1创建Spring容器4.2发布ContextRefresheEvent4.3在OnRefreshed方法中触发initStrat
- Java容器化环境一致性:3大绝招教你告别“薛定谔的Bug”!从踩坑到闭眼部署的终极指南
墨瑾轩
Java乐园bug
关注墨瑾轩,带你探索编程的奥秘!超萌技术攻略,轻松晋级编程高手技术宝库已备好,就等你来挖掘订阅墨瑾轩,智趣学习不孤单即刻启航,编程之旅更有趣第一章:为什么你的Java容器像薛定谔的猫?“本地跑得好好的,一上容器就翻车?”“测试环境稳如狗,生产环境秒变脆皮鸭?”这都是环境一致性在作妖!容器化本为解决环境差异而生,但如果连Dockerfile都写得像抽盲盒…(摇头)第二章:容器化环境三大杀手️♀️杀手
- 使用Idea创建springboot项目
奔跑吧邓邓子
SpringBoot深入浅出常见问题解答(FAQ)高效运维javaidea
提示:“奔跑吧邓邓子”的高效运维专栏聚焦于各类运维场景中的实际操作与问题解决。内容涵盖服务器硬件(如IBMSystem3650M5)、云服务平台(如腾讯云、华为云)、服务器软件(如Nginx、Apache、GitLab、Redis、Elasticsearch、Kubernetes、Docker等)、开发工具(如Git、HBuilder)以及网络安全(如挖矿病毒排查、SSL证书配置)等多个方面。无论
- Springboot 整合 Java DL4J 实现企业门禁人脸识别系统
伏羲栈
人工智能深度学习JavaDL4J-深度学习实战springbootjavaDeeplearning4jdeeplearning人工智能深度学习spring
博主简介:历代文学网(PC端可以访问:https://literature.sinhy.com/#/literature?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于
- 使用Dockerfile搭建ubuntu20.04 + php8.2镜像
编写Dockerfile最近在部署项目事,想做一个基于ubuntu20.04,搭建nginx+php8.*的镜像。但是在制作的过程中遇到了很多坑,记录下来供后续参考学习。修改镜像过程大概分为了6个模块:模块一:对ubuntu20.04官方镜像重新构造。模块二:在基础镜像添加php8.*的源模块三:安装nginx、php以及相关依赖。模块四:设置nginx、php配置文件模块五:编写nginx、ph
- Streaming ELT 同步 MySQL 到 StarRocks
慧一居士
大数据mysql数据库
StreamingELT同步MySQL到StarRocks这篇教程将展示如何基于FlinkCDC快速构建MySQL到StarRocks的StreamingELT作业,包含整库同步、表结构变更同步和分库分表同步的功能。本教程的演示都将在FlinkCDCCLI中进行,无需一行Java/Scala代码,也无需安装IDE。准备阶段准备一台已经安装了Docker的Linux或者MacOS电脑。准备Flink
- 多台服务器jenkins+自建gitlab+docker搭建项目自动化部署
一、场景:公司有三台服务器,一台是测试服务器,一台是正式服务器,还有一台是内部服务器。测试服务器就是公司研发用来调试的服务器,正式服务器是生产环境的服务器,内部服务区是用来部署公司gitlab、jenkins、api接口文档等服务。目前想通过内部服务器部署jenkins+docker实现自动化部署功能,要想实现不同服务器的互通,最好通过配对的ssh公钥和秘钥实现,既不用输入密码也能保证服务的安全。
- Kubernetes容器平台架构之道
巨子嘉
云原生kubernetes容器云原生
1.Kubernetes容器平台架构之道Kubernetes是一个开源容器编排平台,管理大规模分布式容器化软件应用,是云计算发展演进的一次彻底革命性的突破。Kubernetes是谷歌的第三代容器管理系统,是Borg独特的控制器和Omega灵活的调度器的组合。Kubernetes中的应用被打包成与环境完全分离的容器镜像,并且自动配置应用并维护跟踪资源分配。Kubernetes是以应用为中心的技术架构
- Kubernetes 从零开始:手把手教你玩转容器编排王者!
Leaton Lee
kubernetes容器
引言:为什么Kubernetes如此重要?在微服务架构盛行的今天,容器化和编排技术已经成为现代应用部署的核心。而Kubernetes(简称k8s),作为容器编排领域的“扛把子”,几乎成了每个开发者和技术团队的必修课。无论你是刚接触容器技术的小白,还是有一定经验的开发者,Kubernetes的学习曲线都堪称陡峭。本文将从零开始,手把手带你一步步掌握Kubernetes的核心概念、安装配置、常用组件以
- Docker网络与数据卷持久化
由于格式和图片解析问题,为了更好的阅读体验,可以前往阅读原文docker中网络的概念也是非常重要,它对于容器资源的隔离也起着非常重要的作用。你有没有在启动一个容器后查看它的ip,假如你启动了一个nignx容器,你想在主机上访问它,首先得知道他的ip地址,可以通过以下方式获取:dockerinspectnginx|grep-A20Networks#..."Networks":{"bridge":{#
- java杨辉三角
3213213333332132
java基础
package com.algorithm;
/**
* @Description 杨辉三角
* @author FuJianyong
* 2015-1-22上午10:10:59
*/
public class YangHui {
public static void main(String[] args) {
//初始化二维数组长度
int[][] y
- 《大话重构》之大布局的辛酸历史
白糖_
重构
《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。
背景
公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
- 电驴链接在线视频播放源码
dubinwei
源码电驴播放器视频ed2k
本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网:
http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。
项目源码:
http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。
项目源码依赖于两个库项目,库项目一链接:
http://git.oschina.
- Javascript中函数的toString()方法
周凡杨
JavaScriptjstoStringfunctionobject
简述
The toString() method returns a string representing the source code of the function.
简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。
句法
function.
- struts处理自定义异常
g21121
struts
很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。
非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。
此处我们用的是非运行时异常,首先定义一个异常LoginException:
/**
* 类描述:登录相
- Linux中find常见用法示例
510888780
linux
Linux中find常见用法示例
·find path -option [ -print ] [ -exec -ok command ] {} \;
find命令的参数;
- SpringMVC的各种参数绑定方式
Harry642
springMVC绑定表单
1. 基本数据类型(以int为例,其他类似):
Controller代码:
@RequestMapping("saysth.do")
public void test(int count) {
}
表单代码:
<form action="saysth.do" method="post&q
- Java 获取Oracle ROWID
aijuans
javaoracle
A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row.
The oracle.sql.ROWID class i
- java获取方法的参数名
antlove
javajdkparametermethodreflect
reflect.ClassInformationUtil.java
package reflect;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.Modifier;
import javassist.bytecode.CodeAtt
- JAVA正则表达式匹配 查找 替换 提取操作
百合不是茶
java正则表达式替换提取查找
正则表达式的查找;主要是用到String类中的split();
String str;
str.split();方法中传入按照什么规则截取,返回一个String数组
常见的截取规则:
str.split("\\.")按照.来截取
str.
- Java中equals()与hashCode()方法详解
bijian1013
javasetequals()hashCode()
一.equals()方法详解
equals()方法在object类中定义如下:
public boolean equals(Object obj) {
return (this == obj);
}
很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
- 精通Oracle10编程SQL(4)使用SQL语句
bijian1013
oracle数据库plsql
--工资级别表
create table SALGRADE
(
GRADE NUMBER(10),
LOSAL NUMBER(10,2),
HISAL NUMBER(10,2)
)
insert into SALGRADE values(1,0,100);
insert into SALGRADE values(2,100,200);
inser
- 【Nginx二】Nginx作为静态文件HTTP服务器
bit1129
HTTP服务器
Nginx作为静态文件HTTP服务器
在本地系统中创建/data/www目录,存放html文件(包括index.html)
创建/data/images目录,存放imags图片
在主配置文件中添加http指令
http {
server {
listen 80;
server_name
- kafka获得最新partition offset
blackproof
kafkapartitionoffset最新
kafka获得partition下标,需要用到kafka的simpleconsumer
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.
- centos 7安装docker两种方式
ronin47
第一种是采用yum 方式
yum install -y docker
 
- java-60-在O(1)时间删除链表结点
bylijinnan
java
public class DeleteNode_O1_Time {
/**
* Q 60 在O(1)时间删除链表结点
* 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
*
* Assume the list is:
* head->...->nodeToDelete->mNode->nNode->..
- nginx利用proxy_cache来缓存文件
cfyme
cache
user zhangy users;
worker_processes 10;
error_log /var/vlogs/nginx_error.log crit;
pid /var/vlogs/nginx.pid;
#Specifies the value for ma
- [JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题
comsci
嵌入式
假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:
string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"
定义一个0整数c,然后用这个整数c去
- 如何集成支付宝官方文档
dai_lm
android
官方文档下载地址
https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash
集成的必要条件
1. 需要有自己的Server接收支付宝的消息
2. 需要先制作app,然后提交支付宝审核,通过后才能集成
调试的时候估计会真的扣款,请注意
- 应该在什么时候使用Hadoop
datamachine
hadoop
原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html
存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。
--------------------------------------------万能的分割线--------------------------------
有人问我,“你在大数据和Hado
- 在GridView中对于有外键的字段使用关联模型进行搜索和排序
dcj3sjt126com
yii
在GridView中使用关联模型进行搜索和排序
首先我们有两个模型它们直接有关联:
class Author extends CActiveRecord {
...
}
class Post extends CActiveRecord {
...
function relations() {
return array(
'
- 使用NSString 的格式化大全
dcj3sjt126com
Objective-C
格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
- 使用activeX插件对象object滚动有重影
蕃薯耀
activeX插件滚动有重影
使用activeX插件对象object滚动有重影 <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
- SpringMVC4零配置
hanqunfeng
springmvc4
基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。
项目说明如下:
1.db.sql是项目中用到的表,数据库使用的是oracle11g
2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动;
3.默认项目为零配置启动,如果需要更改启动方式,请
- 《开源框架那点事儿16》:缓存相关代码的演变
j2eetop
开源框架
问题引入
上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。
该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。
当然去看相关实现代代码的时候,大致是下面的样子。
[java]
view plain
copy
print
?
public vo
- AngularJS浅析
kvhur
JavaScript
概念
AngularJS is a structural framework for dynamic web apps.
了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm
Directive
扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
- 架构师之jdk的bug排查(一)---------------split的点号陷阱
nannan408
split
1.前言.
jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug.
2.代码
String[] paths = "object.object2.prop11".split("'");
System.ou
- 如何对10亿数据量级的mongoDB作高效的全表扫描
quentinXXZ
mongodb
本文链接:
http://quentinXXZ.iteye.com/blog/2149440
一、正常情况下,不应该有这种需求
首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。
说一下,
- C语言算法之水仙花数
qiufeihu
c算法
/**
* 水仙花数
*/
#include <stdio.h>
#define N 10
int main()
{
int x,y,z;
for(x=1;x<=N;x++)
for(y=0;y<=N;y++)
for(z=0;z<=N;z++)
if(x*100+y*10+z == x*x*x
- JSP指令
wyzuomumu
jsp
jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %>
常用的三种指令: page,include,taglib
page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%>
include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include