- 第一百六十一章 why we fight?
羊儿小白
第一百六十一章whywefight?“那是什么?”唐冠杰看着显示屏上的亮点问道。“亮斑!”我正在输液头也没回,边上自有人替我回答。“我猜……应该和那具尸体有关吧?”唐冠杰或许作战经验不足,但他智商绝对不低。(疑问a+疑问B+疑问c)*推测=答案!“好聪明的孩子!”狼人盯着屏幕同样没有回头只是平著移了移脑袋把脸贴过来点说道。“不是我的孩子!”他的话仿佛在称赞我的儿子一般。令我想起了不知下落的婴孩心中
- 财富自由之路读后感004
假装Yes
WHAT:学习任何一项技能或知识,快速入门非常必要的一件事,而快速入门在掌握最少必要知识后是绝对可能做到的。WHY:当需要学习某项技能或知识时,一定要想办法在最短时间内弄清楚它的最少必要知识,然后迅速掌握它,然后就是只需要执行就可以了,这样相对于大多数人来说更加快速的习得技能或知识HOW:快速入门如此重要,我们应该怎么做呢?为什么大多数人做不到呢?第一,在刚开始的时候平静地接受自己的笨拙长期以来挡
- 春招面试高频题目总结
小杰312
面试笔试面试c++职场和发展学习
面试问题redis可以用于进程间通信吗?Why?How?--->延展一下有哪些进程间通信技术,优劣如何?有大量的插入sql语句,一条条的插入性能很差,如何通过事务进行优化?保证线程安全的策略有哪些?你知道哪些设计模式?有什么理解?单例、工厂方法、责任链、模板方法、策略模式都是基类抽象固定方法。子类提供具体实现。如何实现服务端与客户端的即时通讯?消息队列如何保证这个消息一定执行?不会丢失?持久化消息
- 2021-12-21
ziatan
青龙openAPI非官方文档前言:之前预告发一个小工具,本来后端部分已经写完,在本地测试成功,但是搬到服务器就出现错误,再加上沉迷游戏,先鸽了。授人以鱼不如授人以渔,发个openapi使用说明,应该有人需要,其实看青龙的源码也能看明白,这里以环境变量的api为例,抛砖引玉了。官方源码:https://github.com/whyour/qinglong/blob/develop/back/api/
- 黄丽红日精进450/450 -
做自己小太阳
手机用手机真的qq微信逛了一天都是看各种群里消息回复微信信息what?出分之前不断查询出分以后忍不住发了一条朋友圈当时真的太激动了其实自己应该在复试之后再发成败最后才能定夺没到最后一刻谁也不知道结局会是如何如何why?克服焦躁稳住性子等到最后结果但是做就做了没必要删除没有意义不是吗how?以后少发朋友圈朋友圈甚至可以关闭了发朋友圈问一下自己有必要吗???“真的只是一个人的悲欢离合”没有会懂得除了学
- 026讲:权力基础|有了权力不一定有领导力
奔跑的吉米
一,文章的本意是什么What:1.权利是什么?权力分为五种,硬权利是和管理岗位高度相关的,依次是法定权力、奖赏权力和强制权力,软权利:专家权利和参照权利。2.什么是领导力?领导力,其实就是存在于领导者和被领导者之间施加影响的一种关系。3.有权力不一定有领导力。Why1.岗位权力不等于领导力2.迷恋岗位权力的后果会导致自恋How1.具备领导特质理论的常见特质,眼光独到、无私、执着、心胸宽广等可能是领
- sql初级题_初级开发人员不要避免学习SQL,您将需要它
weixin_26739079
sqlmysql
sql初级题WheneverImeetjuniordevelopers,usually,theyeitherhavenoideaaboutSQLortheyhaveverylimited,practically-unapplicableknowledge.通常,每当我遇到初级开发人员时,他们要么对SQL一无所知,要么掌握的知识非常有限,几乎不适用。Why?Don’ttheylearnSQLduri
- 超级职场新人成长方法
还是太菜
学会提问,建立系统化的视角,不断发现问题的本质5W分析法What:产品背景,回顾这3年,拼多多发展过程中有几个重要节点?Who:目标人群,拼多多用户是谁?商户是谁?它头2个月不靠广告积累出的1200万用户有什么特征?Why:核心价值,为什么已经有了淘宝、京东以及各种团购,拼多多还能跑出来?它有什么差异化竞争优势?Where:使用场景,用户在什么场景下触发的购买,又是在什么情况下转化、复购?When
- 【日更DAY632】每日复盘
梧桐苑落
今天是休闲放松了一天,带孩子,在南京周边城市休假,享受暑假里的快乐时光。1.脑子公众号学习,别把失败归为外因。那如何正确归因?需要具备把经验抽象成方法理论的能力,用关联的,整体的,动态的眼光看清要素之间的关联并形成系统。从而通过现象,看到本质,从导致这个问题的直接原因找到间接原因,从而再找到根本原因。有什么好的工具和方法呢?用5WHY分析法深度思考模型,一层一层,像拨洋葱一样,多纬度归因找根本原因
- 四、ChatGPT的回答从哪里来?—我耀学IT
我耀学IT
chatgptchatgpt人工智能
ChatGPT回答问题时通常比问题本身更长,这是因为它需要通过补充额外的信息来提供完整的答案。它的回答来源于对现有信息的抽取和整合,那么具体是怎么进行抽取和整合的呢,下面我们带着这个疑问来详细讨论一下它的工作原理。首先,英语中的问题通常以疑问词开头,例如"What"、"Why"、"Who"、"When"、"Where"、"Which"和"How"等。这些疑问词也被称为WH单词。那么在这些问题中又可
- Python实战|利用Dowhy框架实现因果推断实战(二)
数据万花筒
文章来源:gzh数据万花筒文章链接:https://mp.weixin.qq.com/s/7uBQ3_sR2j_zxH8mj7nKeQ点击上方蓝字关注我们因果推断系列文章分为上下两篇,目录结构如下所示,上篇文章可点击阅读原文查看。利用Dowhy框架进行因果分为推断上下两篇上篇1.Dowhy因果推断框架2.数据来源及预处理3.数据相关性探索下篇因果推断实现1.计算期望频数,初步判断因果关系2.基于假
- 黄丽红日精进462/463(补)
做自己小太阳
手机What?每天手机10h不知道在干啥Why?请做个人趴每天节约5h可以看几遍书了复试英语What?日常练习文献Why?模拟真的给了我很大自信还是有实力的很多东西都是自己想出来的!不是吗????考场能回答那么流利和有逻辑问题真的应该不大还可能往前面几名why?就可以选择最想跟老师表现的好如果你真的不行为什么平时能模拟出来呢??这几天问专业课回答的都挺好的啊How?继续努力坚持练习到考前一定可以上
- Why Not Http?
littleschemer
漫谈游戏服务器http网络socket
游戏服务器开发主要是基于socket,或者websocket,很少采用http(可能有部分非常轻量级的服务器选择http)。这是什么原因呢?我们先来看看socket与http之间的区别。socket与http之间的区别socket与http对比sockethttpTCP/IP协议工作在传输层工作在应用层链接状态长链接短链接,请求无状态通信方向双向通信单项通信,基于请求-响应模式数据格式私有协议,自
- 什么都不放弃!!!
adff4a937f42
图片发自App图片发自App好像是的,如果什么都不放弃,能不难吗?佛说——贪、嗔、痴、妒、慢、疑。是人性。什么都不放弃,什么都想要。所以人生能不难吗?如果肯放弃贪,简单的生活状态。所需并不会太多,够吃够用够喝。可能烦恼会少许多。但是WHY?NONONO~~~
- golang-centos的镜像
carl-Xiao
对于Go的学习
why项目引用了github上的jieba分词golang版本,windows和centos都正常启动,但是ubantu等不能启动,总是提示缺少文件等错误于是干脆重新制作一个centos的镜像解决问题DockerfileFROMcentos:7Labelauthor=xiaobowenRUNyuminstall-ygcc-c++#WORKDIRWORKDIR/go#envENVPATH/usr/l
- 带孩子一起捋一捋《大自然的社交网络》里的逻辑线
匡当
今天推荐给大家《大自然的社交网络》,亲测适合亲子共读——青藤自然用这本书做过亲子共读读书会,一个小时+的时间,孩子们全程投入。因为书有讲了很多动物们的行为、境遇,孩子们感兴趣这些动物故事,我这个大人也闻所未闻。另外,我8岁的儿子正是对因果关系感兴趣的时候,书里有让他烧脑的N条逻辑线。比如,开篇就是:为什么狼拯救了森林?(Whywolvessavedthetrees)最简单的逻辑线是:狼多了—鹿就减
- 2019-7-22(超能王数据分析)
超能豆妈
大爱的老大,各位优秀的东西城的家人们,大家好!我是超能王,跟大家分享我的进步。继上一篇关于象数理,那我们如何在看到现象背后的数据后,去思考关于这些数据的道理呢?我们可以使用5Why提问法。也就连续追问5个为什么,来寻找这个数据异动背后的原因。(5只是一个象征性的数字,意在提醒你,别拿到第一个答案后就认为是全部,而要继续往下深挖)为什么成绩出现下滑?因为懒,不愿意学为什么不愿意学?因为有的知识听不懂
- codewhy_vue笔记01
qq_43827247
前端html5es6webpackvue.js
Vue.js安装这里我们使用方式二:去官网,下载vue.js(开发版本)使用webstorm新建项目,然后新建js文件夹,把刚才下载的vue.js放到js文件夹下修改数据第一个vue代码Title{{message}}//let(变量)const(常量)//newVue,说明有一个functionVue()//声明式编程constapp=newVue({//用于挂载要管理的元素el:'#app',
- 小包子的Scalers Talk第四轮新概念朗读持续力训练Day19 20181110
美少女和雷雷哥
练习材料:Lesson34Quickwork原文:DanRobinsonhasbeenworriedallweek.LastTuesdayhereceivedaletterfromthelocalpolice.Intheletterhewasaskedtocallatthestation.Danwonderedwhyhewaswantedbythepolice,buthewenttothestat
- AI趋势(06) Sora,AI对世界的新理解
图王大胜
趋势人工智能大模型AIAI作画
说明:使用黄金圈法则学习和解读Sora(what、why、how)1Sora是什么?1.1Sora的基本解读Sora是OpenAl在2024年2月16日发布的首个文本生成视频模型。该模型能够根据用户输入的文本自动生成长达60秒的1080p复杂场景视频,具有良好的连贯性和高质量。Sora继承了Dall·E-3的画质和遵循指令能力,可以根据用户的文本提示快速制作长达一分钟的高保真视频,还能获取现有的静
- 为什么2023年是AI视频的突破年,以及对2024年的预期#a16z
shadowcz007
人工智能
2023年所暴露的AI生成视频的各种问题,大部分被OpenAI发布的Sora解决了吗?以下为a16z发布的总结,在关键之处,我做了OpenAISora的对照备注。推荐阅读,了解视频生成技术进展。Why2023WasAIVideo’sBreakoutYear,andWhattoExpectin2024作者:JustineMoorePostedJanuary31,20242023年被认为是AI视频的突
- 时间管理十步法
剑侠火羽
001使用滴答清单,初步整理自己的所有任务What:将所有任务用滴答清单记录并分解Why:让自己能够利用碎片时间快速行动起来How:滴答清单002完成5年愿景的信,并使用GPS孵化成目标、路径和计划What:将5年愿景转化为具体的行动,并填入幸福人生九宫格Why:明确自己的目标,明确自己每一件要做的事情的意义How:5年愿景、GPS、幸福人生九宫格003将生活、娱乐等任务列入清单,并使用时间轴来规
- Git合并merge时,git中Please enter a commit message to explain why this merge is necessary.
ilily
问题背景:我遇到的情况是,gitpush推送失败后(则因为远程分支比你的本地更新),需要先用gitpull试图合并;gitpull试图合并的时候出现下面截图:image.pngPleaseenteracommitmessagetoexplainwhythismergeisnecessary.请输入提交消息来解释为什么这种合并是必要的git在pull或者合并分支的时候有时会遇到这个界面。莫慌...~
- 速读-NFA的GPU加速器
Reacubeth
徐奕的专栏机器学习人工智能体系结构
Liu,Hongyuan,SreepathiPai,andAdwaitJog.“WhyGPUsareslowatexecutingNFAsandhowtomakethemfaster.”ProceedingsoftheTwenty-FifthInternationalConferenceonArchitecturalSupportforProgrammingLanguagesandOperatin
- 2020-04-03 工作日志
CowSword
14:00《java设计模式及实践》开闭原则,里氏替换原则,单一职责原则,接口隔离原则?,依赖倒置原则?UML14:30《lightwieghtdjango》WhyStateless?HTTPitselfisastatelessprotocol,meaningeachrequestthatcomestotheserverisindependentofthepreviousrequest.Ifapa
- 今日复盘
一颗被上帝眷顾的彩虹糖
听清晨朗读会《Whycoding》为什么学编程?之前还跟朋友们讨论过未来三项不会失业的能力:写作演讲编程。编程这一课程现如今在各学校如火如荼地开展着。文中给出了学习编程的个原因:1.编程能驱动创新。从无人驾驶汽车到机器人辅助外科手术,再到社交媒体,计算机科学正在改变我们生活的方方面面。为了下一代能够引领这一浪潮,孩子们必须学习编程这一基本技能。2.编程启发儿童的创造力。孩子们可以通过编程创造出真正
- 黄丽红日精进497/498
做自己小太阳
手机What?微信还是控制不住不知道自己在干嘛一天天竞赛真的要努力不然去这一趟也没有意思Why?微信聊天太能聊了今日份番茄钟还是不错的有进步How?继续保持番茄钟微信直接退出趴那就培训What?今天上午主要看了一些执业医师内容比较困再加上想睡觉状态不好晚上也没什么状态Why?真的手机太害人了可以交给同学保管把电脑登录上WLHow?放在小曾那里哈哈哈自己用电脑交流主要看书今日份1.执业医师内容2.南
- 2018-10-09
3aadf915e5cf
WhyIdon'tstudyhardWhynotstudyhardAssoonasIsawthetopicoftheEnglishwriting,itreallyamusedme.Atfirst,Ithoughtitwasalittlestrangetowriteaboutthistopicasastudent.ButwhenIbegantothinkaboutthereasonwhyyouask
- Why haven’t bitcoin become a common payment option?
aboutcryptocurrency
cryptocurrencybitcoin
Astherepresentativeofdigitalcurrencies,bitcoinvalueanditsmarketcapwasunstableinrecentyears.Meanwhile,theargumentaboutthecurrencyattributeofbitcoinneverstop.However,itisnodoubtthatbitcoinhaven’tbecomea
- 2021-04-05:中信书院大咖共度第13期-《阿里巴巴基本动作》01
弘农笑
一、我在阿里的三个重要收获三个收获:抓核心矛盾(说“why”的能力)、终局思维、目标感结果思维。重复性说“why”的能力。组织能力的三个关键点:切换外部视角关注客户体验、强化从未来看现在的能量、激发个体创造性张力。定目标,需要以终为始的思维。未来会成为什么样,决定我们做什么。一定不要用现在的能力来规划自己的未来。今天的最好表现是明天的最低要求。不注重结果的人,通常都缺乏目标。没有过程的结果,叫垃圾
- 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