- 13. 说说 MyBatis 的缓存机制?
这孩子叫逆
Mybatis笔记mybatisjavaspring
MyBatis提供了一级缓存和二级缓存两种缓存机制,用于提高应用程序的性能,减少数据库的访问次数。缓存机制是MyBatis的一个重要特性,通过缓存可以在一定程度上减少对数据库的访问,从而提高查询性能。1.一级缓存(LocalCache)作用范围:一级缓存是MyBatis默认开启的缓存机制,作用于SqlSession级别。特点:生命周期:一级缓存的生命周期与SqlSession相同。在同一个SqlS
- 大厂Java面试题:MyBatis是如何进行分页的?分页插件的实现原理是什么?
技术范王有志
大厂Java面试题mybatisjava面试后端
大家好,我是王有志。今天给大家带来的是一道来自京东的关于MyBatis实现分页功能的面试题:MyBatis是如何进行分页的?分页插件的实现原理是什么?通常,分页的方式可以分为两种:逻辑(内存)分页物理分页逻辑(内存)分页指的是数据库返回全部符合条件的数据,然后再通过程序代码对数据结果进行分页处理;物理分页指的是通过SQL语句查询,由数据库返回分页后的查询结果。逻辑(内存)分页和物理分页各有优缺点,
- NoSQL(非关系型数据库)之Redis
花狮66
nosqlredis数据库
目录一、关系型数据库与非关系型数据库1.1关系型数据库1.2非关系型数据库1.3区别1.3.1数据存储方式不同1.3.2扩展方式不同1.4非关系型数据库产生背景二、Redis简介2.1Redis概述2.2Redis优点2.3Redis为什么这么快?总结一数据流向二各自特点一、关系型数据库与非关系型数据库1.1关系型数据库关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面
- Mybatis 是如何进行分页的?分页插件的原理是什么?
骆梦晴
mybatismysqljava
1)Mybatis使用RowBounds对象进行分页,也可以直接编写sql实现分页,也可以使用Mybatis的分页插件。2)分页插件的原理:实现Mybatis提供的接口,实现自定义插件,在插件的拦截方法内拦截待执行的sql,然后重写sql
- MySQL添加用户、为用户分配权限
ChenyuMa
添加用户1.允许本地访问的用户(127.0.0.1)createuserzhrt@localhostidentifiedby'123456';2.允许外网IP访问的用户createuser'zhrt'@'%'identifiedby'123456';用户分配权限授予用户在本地服务器对该数据库的全部权限grantallprivilegesondbname.*tozhrt@localhostident
- MYSQL数据库的实验总结_MySQL数据库基础总结
weixin_39993623
MYSQL数据库的实验总结
来源:实验楼链接:https://www.shiyanlou.com/courses/9一、开发准备#打开MySQL服务sudoservicemysqlstart#使用root用户登录,密码为空mysql-uroot二、查看数据库SHOWDATABASES三、新建数据库首先,我们创建一个数据库,给它一个名字,比如mysql_shiyan,以后的几次实验也是对mysql_shiyan这个数据库进行操
- 联合唯一索引其中一个为Null,多条同样的数据为什么不会冲突
Amagi.
数据库开发语言
在数据库中,联合唯一索引(CompositeUniqueIndex)是由两个或多个列组合而成的主键,用于唯一标识表中的每一行。当一个联合唯一索引的某个字段为NULL时,涉及到的关键问题在于,NULL值的唯一性是不同于其他值的。1.NULL的语义在SQL中,NULL被认为是“未知”的而非简单的空值。在大多数数据库管理系统(DBMS)中,NULL值的比较结果是“未知”,并且两个NULL被认为是不同的。
- MyBatis如何实现分页
思静语
#Mybatismybatis
文章目录MyBatis分页方式对比使用数据库厂商提供的分页查询语句通过自定义SQL实现分页逻辑1.使用RowBounds实现分页2.使用PageHelper实现分页数组分页使用MyBatis-Plus进行分页MyBatis物理分页和逻辑分页MyBatis手写一个拦截器分页在MyBatis中实现分页通常有两种方式:使用数据库厂商提供的分页查询语句(如MySQL的LIMIT)或者通过自定义SQL来实现
- MySQL 大小写问题
天珩
今日所得
场景在做mysql查询的时候,注意到一个问题,mysql默认是不区分大小写的通过简单的查询,发现通过关键字binary可以强制区分大小写参考每日所得--分页查询优化和mysql区分大小写问题那为什么MySQL不区分大小写呢参考文档mysql不区分大小写技术原理文章总结1、是否区分是取决于字符集和校对(Collation)部分所做的工作2、取决于字符集中是否声明了大小写敏感声明之后,开销增加参考ht
- SQL很简单,可你却写不好?也许这才是SQL最好的教程
莫叫石榴姐
收获不止一点sql数据库数据分析数据仓库hive
目录1写在前面#你为什么必须学SQL?#SQL语法很简单,但几乎没几个人写的很好2SQL实战技巧总结2.1断点问题2.11断点分组2.22断点排序2.23断点缝合2.24断点边界划分2.25断点去重2.3数据分桶问题2.2.1基于规则的分桶2.3.2等距分桶2.3.3等频分桶2.3数据合并问题2.3.1基于指定规则的数据合并2.3.2基于时间顺序的数据合并2.4数据展开问题2.5时点值状态问题2.
- SQL进阶技巧:截止当前批次前的批次量与订单量 | 移动窗口问题
莫叫石榴姐
数字化建设通关指南#SQL进阶实战技巧sql数据库大数据数学建模hive数据仓库数据分析
目录0场景描述1数据准备2问题分析3小结0场景描述表A有如下字段,userid(用户ID),batchid(批次ID),orderid(订单ID),createtime(创建时间),同一个用户ID下有多个批次,同一个批次下有多个订单ID,相同批次ID的创建时间是相同的,创建时间精确到了秒。统计,截止对应批次ID的时间点前,该用户下有多少个批次ID,有多少个订单ID,输出的字段应该为用户ID批次ID
- Springboot配置文件中账号密码等敏感信息的加解密
乌托邦的逃亡者
软件开发springspringbootjava后端
说明:使用过SpringBoot配置文件的朋友都知道,资源文件中的内容通常情况下是明文显示,安全性比较低。打开application.properties或application.yml,比如MySQL登录密码,Redis登录密码以及第三方的密钥等等一览无余。这里介绍一个加解密组件jasypt,用以提高配置文件中敏感配置数据的安全性。本文以数据库连接URL、用户名和数据库密码加密为例。一,引入Ma
- MySQL 高可用性架构:复制与分片
墨瑾轩
数据库mysql架构adb
关注墨瑾轩,带你探索编程的奥秘!超萌技术攻略,轻松晋级编程高手技术宝库已备好,就等你来挖掘订阅墨瑾轩,智趣学习不孤单即刻启航,编程之旅更有趣嗨,小伙伴们!今天我们要聊的是一个超级重要的话题——如何通过复制和分片技术来构建MySQL的高可用性架构。想象一下,你的数据库就像是一座城堡,里面藏满了宝贵的用户数据。为了保护这座城堡,我们需要建立一整套防御体系,确保数据安全无虞,而且即便遇到突发状况也能迅速
- django报错汇总
Yogurt bottle
djangopython后端
1.django.core.exceptions.ImproperlyConfigured:ErrorloadingMySQLdbmodule__init__.py文件中添加以下代码:importpymysqlpymysql.install_as_MySQLdb()2.index()takes0positionalargumentsbut1wasgiven#视图函数必须要传入一个参数request
- XSS和sql注入部分场景测试用例样例
谷隐凡二
测试xsssql测试用例
目录1.SQL注入测试用例设计基本SQL注入复杂SQL注入盲注测试2.XSS攻击测试用例设计基本XSS攻击复杂XSS攻击DOM-basedXSS1.SQL注入测试用例设计SQL注入攻击通常通过在输入字段中插入恶意SQL代码,试图操纵数据库查询。设计这些测试用例时,需要涵盖各种常见的SQL注入技术。基本SQL注入用例1:使用单引号:输入:'OR'1'='1预期结果:应拒绝输入并返回错误消息,不应允许
- Navicat和SQLynx产品功能比较二(SQL查询)
chat2tomorrow
数据库服务器运维sqlynxidesqlmysql
数据库管理工具最常用的功能就是SQL的查询,没有之一。本文针对Navicat和SQLynx做了SQL查询相关的性能测试,从测试结果来看,Navicat主要适合开发类的小型数据量需求,SQLynx可以适应大型数据量或小型数据量的需求,用户可以根据自己的实际需求做一些不同的对比测试。目录1性能比较2测试示例3总结Navicat是一款功能强大的数据库管理和开发工具,广泛用于各类数据库的管理和操作。它支持
- 【Redis基础篇】详细讲解Redis
小林同学学JAVA
redis数据库redis服务器nosql缓存数据库javaspringboot
这篇文章让你详细了解Redis的相关知识,有代码讲解以及图片剖析,让你更轻松掌握制作不易,感觉不错,请点赞收藏哟!!!目录1redis基础1.1定义1.2SQL和NOSQL不同点1.3特征1.4Redis通用命令1.5Redis数据结构介绍1.6Redis的java客户端2Jedis快速入门2.1操作步骤2.2Jedis连接池3SpringDataRedis3.1定义3.2优势3.3API3.4操
- MySQL 大量 IN 的查询优化
陈挨踢
运维数据库mysql数据库优化查询优化sql
背景(1)MySQL8.0版本(2)业务中遇到大量IN的查询,例:SELECTid,username,iconFROMusersWHEREidIN(123,523,1343,...);其中id为主键,IN的列表长度有8000多个问题行数扫描30W+,无法用到主键索引造成MySQLCPU突升,其它的SQL堆积导致HTTP502响应原因MySQL的范围优化器在执行查询优化时,所需消耗的内存超出系统所配
- 详细分析Mysql配置文件路径的查找(多种方法)
码农研究僧
配置mysql数据库配置文件
目录前言1.基本知识2.查找配置文件2.1mysql--help--verbose2.2MySQL进程启动参数2.3MySQL内部变量查询2.4常见配置2.5mysqladmin工具2.6查看日志2.7strace跟踪系统调用前言事因是卸载mysql5,准备安装mysql8的时候,一直安装不上,最后发现是配置文件读取到了mysql5的问题在使用MySQL时,配置文件(通常为my.cnf或my.in
- MYSQL:DDL数据定义语言
公子龍.
数据库mysqlsql
数据库基本操作:DDL数据定义语言–1、DDL操作之数据库操作(不区分大小写)–查看所有数据库showdatabases;–创建数据库createdatabasemydb1;createdatabaseifnotexistsmydb1;–选择使用哪一个数据库usemydb1;–删除数据库dropdatabasemydb1;dropdatabaseifexistsmydb1;–修改数据库编码alte
- win32com python_python win32com模块
圭多达莱佐
win32compython
今天再次被python的强大所折服,一直很奇怪公司的excel文件直接生成sql脚本是怎么实现的,今天闲着没事找到实现脚本看了下,竟然就是用python写的!!!当时真的是震惊了,仔细看了下脚本内容,里面用到了一个关键模块win32com,这里在网上找到了一些大神们总结的该模块用法,码来一起学习!!importwin32comfromwin32com.clientimportDispatch,co
- mybatis与gbase8s plsql适配问题一
gbase_lmax
gbase8s数据库
在使用mybatis调用gbase8soracle模式下创建的plsql时,出现空指针的报错Causedby:java.lang.NullPointerExceptionatcom.gbasedbt.jdbc.IfxCallableStatement.getResultSet(IfxCallableStatement.java:267)atorg.apache.ibatis.executor.re
- druid 连接gbase8s数据库问题记录
gbase_lmax
数据库java
在druid1.2.16以及之前版本中,可以允许dbType=null,不影响数据库连接使用在druid1.2.17以及之后版本中,已经不允许dbType=null代码差异如下1.2.16if(connectTimeout>0){if(isMySql){if(connectTimeoutStr==null){connectTimeoutStr=Integer.toString(connectTim
- druid连接数据库报错
Aliyev
MySQL连接错误时区问题版本匹配jar包
信息:{dataSource-1}inited10月21,20229:26:36下午com.alibaba.druid.support.logging.JakartaCommonsLoggingImplerror严重:createconnectionSQLException,url:jdbc:mysql://localhost:3306/db1,errorCode0,state01S00java.
- 以下是一些 SQL 优化的方法:
qq_20033739
数据库oracle
一、查询语句优化1.只选择需要的列-避免使用“SELECT*”,而是明确指定所需的列名。这样可以减少数据传输量和查询的开销。-例如:“SELECTcolumn1,column2FROMtable_name”。2.使用合适的索引-根据查询条件,在经常用于筛选、排序或连接的列上创建索引。-索引可以大大提高查询的速度,但过多的索引也会影响数据的插入、更新和删除操作,因此需要权衡。-例如,如果经常根据“u
- MySQL主从复制架构(异步复制)
蜜糖伴午茶
mysql架构数据库
目录一、主从复制的原理编辑二、主从复制的作用三、实验准备四、实验过程1、关闭master和slave上的防火墙和selinux2、在master服务器上开启二进制日志3、新建授权用户,用来让slave服务器去master服务器上获取二进制日志4、在master服务器上刷新二进制日志,方便slave服务器记录和获取当前的位置号5、在主从复制之前,保证master和slave上的数据是一致的6、在sl
- 数据库的介绍:关系型数据库和非关系型数据库究竟是什么?
一名在八月份找工作的测试员
数据库nosql
1.数据库是什么?数据库(DB)是按照一定数据结构存储数据的仓库2.数据库管理系统是什么?数据库管理系统(DBMS)是操纵和管理数据库的一套软件。市面上主流的有Mysql/oracle/sqlserver3.数据库管理系统又可以分为哪些类型?数据库管理系统可以分为:关系型与非关系型①关系型数据库管理系统(RDBMS)-----适用于二维表格常见的系统有:oracle/mysql/sqlserver
- hive搭建 -----内嵌模式和本地模式
lzhlizihang
hivehadoop
文章目录一、内嵌模式(使用较少)1、上传、解压、重命名2、配置环境变量3、配置conf下的hive-env.sh4、修改conf下的hive-site.xml5、启动hadoop集群6、给hdfs创建文件夹7、修改hive-site.xml中的非法字符8、初始化元数据9、测试是否成功10、内嵌模式的缺点二、本地模式(最常用)1、检查mysql是否正常2、上传、解压、重命名3、配置环境变量4、修改c
- mongoDB 对一个做了索引的字段,要不要给默认值?
hongkid
mongodb数据库
引言在设计数据库模式时,如何处理字段的默认值是一个值得深入探讨的话题。对于MongoDB这样的NoSQL数据库来说,灵活性是其一大特点,但这同时也意味着开发者需要更加谨慎地考虑数据的一致性和完整性。本文将探讨在一个已创建索引的字段上,在插入文档时是否应该显式设置默认值的问题,并给出具体的建议。MongoDB中的索引与字段设置在MongoDB中,索引可以帮助提高查询性能,特别是在处理大规模数据集时。
- MongoDB-聚合查询操作介绍
侯晓阳丶
MongoDBmongodb数据库linuxdba经验分享
目录前言db.collection.aggregate()db.collection.aggregate()示例一db.collection.aggregate()示例二复杂的聚合操作通过mongoimport导入测试数据复杂的聚合操作示例聚合操作的偏好设置-project函数聚合操作的偏好设置-unwind函数前言MongoDB聚合操作相当于关系型数据库SQL语句的"groupby"、“orde
- 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