- Java EE的历史(转)
古剑诛仙
转自公众号码农翻身。前言:昨天下午有同学问我JavaEE是干什么用的,能开发什么系统,我在QQ中敲了很多字,掰扯了半天,终于给他整明白了。我突然意识在其实很多初学者对JavaEE的来龙去脉并去清楚,大家并不知道为什么会出现这个技术,要解决什么问题。所以就写了这篇文章介绍下JavaEE的历史。先把时间扯的远一点,94年我上高中的时候,见过亲戚家有过电脑,很好奇,虽然上面都是一些单机桌面程序,根本上不
- 延迟队列的入门使用
延迟队列的入门使用思考:1.什么是延迟队列?延迟队列运用场景?2.延迟队列的排队过程如何实现?真的是先进先出吗?3.如何实现运用延迟队列一.什么是延迟队列DelayQueue是Java中的一个基于优先级队列的实现的线程安全的延迟队列。运用场景:实现定时任务或者延迟任务的调度。DelayQueue实现BlockingQueue,加入这个队列的元素必须实现Delayed接口,当生产者提交元素进入队列时
- 2025AI智能体平台,10个Agent智能体开发平台推荐
cczixun
人工智能智能体大数据安全
1、扣子(Coze)开发平台字节跳动推出的AI智能体开发平台,用户无需编程基础,通过拖拽和配置即可快速创建聊天机器人,并部署到豆包、飞书、抖音、微信等多个平台。平台提供超过1万+的插件,内置豆包・Functioncall32k、通义千问-Max8k等多个大模型,还具备知识库、数据库、图像流等功能。2、通义千问Agent平台阿里巴巴基于通义千问大模型打造的智能体开发框架,以强大的多模态能力和工具集成
- Java DelayQueue延迟队列的使用和源码分析
°Fuhb
Java基础与进阶javaDelayQueue延迟队列
文章目录概述示例原理分析概述DelayQueue是JAVA提供的延时队列,队列内部的对象必须实现Delayed接口,该接口只有一个getDelay方法,返回延迟执行的时长。publicinterfaceDelayedextendsComparable{longgetDelay(TimeUnitunit
- DelayQueue延时队列简单使用
泉泉写Java
java开发语言
DelayQueue是JDK1.5引入到工具,位置在java.util.concurrent。从包路径我们就能知道该工具是给多线程使用到。我们先看看官方注释:AnunboundedblockingqueueofDelayedelements,inwhichanelementcanonlybetakenwhenitsdelayhasexpired.TheheadofthequeueisthatDel
- Java性能监测工具JMC的使用介绍
一、JMC介绍JMC是源自JRockitJVM的一套监控和管理工具,Oracle在发布JAVA7u4(Java7Update40)时将其包含在JDK中,用户不再需要单独下载。使用JMC可以监视和管理Java应用程序,不会导致相关工具类的大幅度性能开销,它使用为Java虚拟机(JVM)的普通自适应动态优化收集的数据。官方地址:https://www.oracle.com/java/technolog
- Spring Boot 3.0新特性全面解析与实战应用
天天进步2015
Javaspringboot
SpringBoot3.0新特性全面解析与实战应用引言SpringBoot3.0作为Spring生态系统的一个重要里程碑,带来了众多令人兴奋的新特性和改进。本文将深入解析SpringBoot3.0的核心变化,并通过实战示例展示如何在项目中应用这些新特性。核心变化概览Java版本要求提升SpringBoot3.0最显著的变化是Java版本要求提升至Java17。这一变化不仅仅是版本号的更新,更是对现
- python实现自动化sql布尔盲注(二分查找)
海星船长丶
python自动化sql网络安全web安全
为了优化自动化布尔盲注的代码,我们可以使用二分查找来减少猜测次数,从而提高效率。以靶场sqli为例:importrequests#目标URLurl="http://127.0.0.1/sqli/Less-8/index.php"#要推断的数据库信息(例如:数据库名)database_name=""#字符集(可以根据需要扩展)charset="abcdefghijklmnopqrstuvwxyzAB
- 电科金仓AI数据库一体机发布:30%性能提升+自然语言运维,重塑数据底座!
Loving_enjoy
计算机学科论文创新点人工智能深度学习迁移学习经验分享
>百万级并发处理与聊天式数据库运维,正在中国企业机房掀起静默革命。“替换数据库是一件非常困难的事。”电科金仓总裁杜胜在7月15日北京发布会现场坦言。过去20多年里,国外数据库建立的标准让应用软件与数据库深度耦合,迁移复杂度高、改造成本大、停机风险难控。随着他身后大屏幕亮起**“数据库平替用金仓”**的全新口号,电科金仓正式向这一行业痛点宣战。这场名为“融合进化智领未来”的发布会,最耀眼的明星是**
- JAVA面试八股文,万字长文!
Java进阶八股文
java面试开发语言职场和发展springbootspringjvm
1、多态的作用多态的实现要有继承、重写,父类引用指向子类对象。它的好处是可以消除类型之间的耦合关系,增加类的可扩充性和灵活性。多态允许你通过统一的接口来处理不同类型的对象,这样在添加新的类型时,不需要修改现有的代码,只需要实现相同的接口或继承相同的父类即可。这使得代码的扩展性大大增强。2、什么是反射?反射机制是在运行时,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意个对象,都能够调用它
- 云原生周刊:K8s 中的后量子密码学
KubeSphere 云原生
云原生kubernetes密码学
开源项目推荐KanisterKanister是一个由CNCF托管的开源框架,最初由VeeamKasten团队创建,旨在简化Kubernetes上的应用程序级别数据操作管理。它通过定义Blueprint、ActionSet和Profile等CRD(自定义资源)及其相关组件,为专家提供一种模板化的方式,将复杂的数据库或分布式系统备份/恢复逻辑封装在可重用、可共享的蓝图中。Kanister支持异步或同步
- 第一部分:MySQL 基础与核心架构(第二节: 存储引擎深度解析 之 MySQL存储引擎选择策略)
jarenyVO
Mysqlmysql架构数据库
第一部分:MySQL基础与核心架构(第二节:存储引擎深度解析之MySQL存储引擎选择策略)文章目录第一部分:MySQL基础与核心架构(第二节:存储引擎深度解析之MySQL存储引擎选择策略)MySQL存储引擎选择策略深度解析一、存储引擎选择决策框架1.核心决策维度2.关键评估指标矩阵二、典型业务场景引擎选择策略1.电商系统2.内容管理系统3.金融系统三、性能与一致性权衡策略1.CAP理论应用2.读写
- 【RAG专题】如何选择合适的RAG架构?
星际棋手
人工智能
选择适合的RAG架构需结合自身业务需求、数据特点、性能要求等因素综合判断,以下是关键考量维度及对应架构选择建议:1.按数据规模与类型选择•小规模、单一类型数据(如纯文本文档库):适合基础单阶段检索架构(检索模块+生成模块)。◦检索:用轻量级嵌入模型(如BGE-base、all-MiniLM)+简单向量数据库(如FAISS)。◦生成:搭配中小型LLM(如Llama2-7B、Mistral),无需复杂
- 设计模式-工厂方法模式 Java
模式概述工厂方法模式(FactoryMethodPattern)又称为工厂模式,定义创建对象的接口,但将具体实现延迟到子类,实现对象创建与使用的解耦。简单代码示例//1.抽象产品:日志记录器接口interfaceLogger{voidlog(Stringmessage);}//2.具体产品:文件日志记录器classFileLoggerimplementsLogger{@Overridepublic
- 大数据技术是解决什么问题的?
@佳瑞
大数据
基础知识1TB(太字节)=1024GB1PB(拍字节)=1024TB大数据核心框架HadoopHadoop作为大数据技术生态的核心框架,主要解决了海量数据(TB/PB级)的存储、处理和分析难题,尤其是在传统数据库(如MySQL)和单机计算无法应对的场景下,提供了低成本、高可靠、可扩展的解决方案。其核心解决的问题可归纳为以下几点:海量数据的存储问题传统痛点:单机存储容量有限(如单服务器硬盘通常在TB
- 实时时间钟表
命苦的孩子
java梦javajvmspring
目录一、前提二、代码2.1窗口2.2时间显示三、代码整合一、前提在之前我们学会了JDK时间相关类,那我们就来小小地利用它来写一个”小玩意儿”。没看过的快去看一遍,在初识JDK时间相关类二、代码2.1窗口首先,你是不是得有一个窗口,那就用得上Swing了。importjavax.swing.*;publicclasstestextendsJFrame{privateJPanelwindonpanel
- 【Java代码审计 | 第五篇】XSS漏洞成因+实战案例
秋说
Java代码审计javaxss
未经许可,不得转载。文章目录XSS漏洞成因1、直接输出用户输入2、在JSP中使用EL表达式输出用户输入3、在Thymeleaf模板中输出用户输入4、在JavaScript中嵌入用户输入实战案例案例1案例2案例3XSSXSS(跨站脚本攻击,Cross-SiteScripting)是一种常见的Web安全漏洞,攻击者通过在网页中注入恶意脚本,使得这些脚本在用户的浏览器中执行。XSS攻击通常分为以下三种类
- 第一部分:MySQL 基础与核心架构(第二节: 存储引擎深度解析 之 InnoDB 架构与核心特性)
jarenyVO
Mysqlmysql架构数据库
第一部分:MySQL基础与核心架构(第二节:存储引擎深度解析之InnoDB架构与核心特性)文章目录第一部分:MySQL基础与核心架构(第二节:存储引擎深度解析之InnoDB架构与核心特性)一、InnoDB架构概述1.内存结构2.磁盘结构二、核心特性深度解析1.事务支持(ACID)2.多版本并发控制(MVCC)3.锁机制4.缓冲池优化5.双写缓冲区(DoubleWriteBuffer)三、关键性能优
- Python处理MySQL大数据量:分页查询与性能优化
AI天才研究院
AI人工智能与大数据pythonmysql性能优化ai
Python处理MySQL大数据量:分页查询与性能优化关键词:Python分页查询、MySQL性能优化、大数据量处理、LIMITOFFSET、索引优化摘要:当数据库表数据量达到百万级时,传统的LIMITOFFSET分页查询会出现明显性能瓶颈。本文从实际场景出发,用“图书馆找书”的通俗比喻拆解分页原理,结合Python代码示例和MySQL执行计划分析,详细讲解传统分页的痛点、优化思路(索引分页/覆盖
- java二叉树遍历
在Java中,二叉树遍历通常有三种方式:先序遍历(PreorderTraversal):首先访问根节点,然后递归遍历左子树,最后递归遍历右子树。中序遍历(InorderTraversal):首先递归遍历左子树,然后访问根节点,最后递归遍历右子树。后序遍历(PostorderTraversal):首先递归遍历左子树,然后递归遍历右子树,最后访问根节点。例如,对于以下二叉树:1/\23/\/4567先
- java学习笔记
期末课堂作业,以下内容为2024年上学期java课堂学习笔记202402150705目录[第1章:Java语言概述](#第1章:Java语言概述)[第2章:数据类型与运算符](#第2章:数据类型与运算符)[第3章:控制流程语句](#第3章:控制流程语句)[第4章:数组](#第4章:数组)[第5章:类与对象](#第5章:类与对象)[第6章:封装、继承与多态](#第6章:封装、继承与多态)[第7章:异
- 第5章:数据访问层
liangxh2010
微服务后端架构
5.1SpringDataJPA使用文字讲解SpringDataJPA是SpringData项目的一部分,旨在极大地简化JPA(JavaPersistenceAPI)的使用。它通过提供基于Repository接口的编程模型,让我们无需编写任何实现代码就能完成大多数数据访问操作。核心概念:Entity:一个使用@Entity注解的普通Java对象(POJO),它映射到数据库中的一张表。Reposit
- Reids
子柒s
redis数据库
标题目录Redis概述Redis数据库特点Redis应用场景Redis安装RockyLinux操作系统Windows操作系统Mac操作系统Redis服务启动失败解决方案配置文件详解常见数据类型全局命令String类型字符串数值应用场景列表List基本命令应用场景Hash散列特性基本命令应用场景Set类型基本命令应用场景SortedSet类型有序集合示例基本命令应用场景数据持久化RDB数据持久化SA
- 浅谈全球化部署(二)
接上文,讲到多机房中的方案,本文继续说明多机房中数据同步的几中方式。上图为,全球化部署环境下,多机房部署,使用到相关技术:1.智能DNS:负责就近机房解析;2.API网关:负责关键数据读写分离;3.数据同步:负责底层数据库的同步;4.其它:如消息中心等;多机房的数据同步数据同步的方式存在如下几种:一写多读如上图所示。1.主机房,实现完整的读写;2.副机房,通过网关将写转到主机房,读在本机房完成;
- docker容器中连接宿主机mysql数据库
最近要在docker中使用mysql数据库,首先考虑在ubuntu的镜像中安装mysql,这样的脚本和数据库都在容器中,直接访问localhost:3306,脚本很简单,如下:importpymysql#建立数据库连接db=pymysql.connect(port=3306,host="localhost",user="root",password="password",database="my_
- MySql 运维性能优化
内存相关配置innodb_buffer_pool_size:这是InnoDB存储引擎最重要的参数,用于缓存数据和索引。建议设置为服务器可用内存的50%-70%(对于专用数据库服务器)。innodb_buffer_pool_size=8G#根据服务器内存调整innodb_log_buffer_size:用于缓存InnoDB日志。对于写入频繁的系统,可适当调大(默认16M):innodb_log_bu
- 【python】向AWS Dynamodb中插入数据
一、背景AWSDynamodb数据库在架构中起到的作用是配置数据库,s3上buckect_a-->bucket_b-->bucket_c对应着层与层之间的关系,总所周知,Dynamobd是非关系型数据库,数据插入的格式是键值对形式的二、代码importboto3importjsonimportpandasaspdAWS_ACCESS_KEY_ID=''AWS_SECRET_ACCESS_KEY='
- MySQL(150)如何进行数据库自动化运维?
辞暮尔尔-烟火年年
MySQL数据库运维mysql
数据库自动化运维(DBAAutomation)是确保数据库高效、安全运行的关键步骤。自动化运维可以涵盖备份、恢复、监控、性能优化、数据迁移等多个方面。以下是一个详细的指南,展示如何使用Java进行数据库自动化运维,包括代码示例。一、环境准备确保安装有Java开发环境(JDK)、Maven(或Gradle)以及一个数据库(例如MySQL)。我们将使用JDBC来进行数据库操作,以及QuartzSche
- 直接内存溢出
p&f°
JVMjvm
一、什么是直接内存直接捏成是一块由操作系统直接管理的内存,也叫堆外内存可以使用Unsafe或ByteBuffer分配直接内存可用-XX:MaxDirectMemorySize控制,默认是0,表示不限制二、为什么使用直接内存直接内存vs堆内存io效率高推荐参考:Java直接内存与非直接内存性能测试-阿里云开发者社区三、什么场景使用直接内存1有很大的数据需要存储,它的生命周期又很长2适合频繁的IO操作
- 单身程序员的幻想女友模拟器,面对对象的三大特征
运维帮手大橙子
开发语言javaintellij-idea对象面对对象windows程序人生
你new出来的不仅是一个对象,更是一段陪伴、一份慰藉。你孤独的时候想有人和你说说话。而真正的那个她,也一定会出现,和你肩并肩看代码、看星星。项目结构SweetGirlfriendSimulator/├──src/└──com/└──love/├──Main.java//启动类├──Person.java//抽象人类├──IdealGirlfriend.java//理想女友类(可爱温柔)└──Coo
- 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