`

Velocity模板(VM)语言介绍 1 liferay 中的vm 转转

阅读更多
1.        关于
Velocity 用户指南旨在帮助页面设计者和内容提供者了解 Velocity 和其简单而又强大的脚本语言( Velocity Template Language (VTL) )。本指南中有很多示例展示了用 Velocity 来讲动态内容嵌入到网站之中,但是所有的 VTL examples 都同演示用于所有的页面和模版。
感谢选择 Velocity!
 
2.        什么是 Velocity?
Velocity 是一个基于 Java 的模版引擎。它允许 web 页面设计者引用 JAVA 代码预定义的方法。 Web 设计者可以根据 MVC 模式和 JAVA 程序员并行工作,这意味着 Web 设计者可以单独专注于设计良好的站点,而程序员则可单独专注于编写底层代码。 Velocity Java 代码从 web 页面中分离出来,使站点在长时间运行后仍然具有很好的可维护性,并提供了一个除 JSP PHP 之外的可行的被选方案。
Velocity 可用来从模板产生 web 页面, SQL, PostScript 以及其他输出。他也可用于一个独立的程序以产生源代码和报告,或者作为其它系统的一个集成组件。这个项目完成后, Velocity 将为 Turbine web 应用程序框架提供模板服务。 Velocity+Turbine 方案提供的模板服务将允许 web 应用按真正的 mvc 模式进行开发。
 
3.        Velocity 可以做什么 ?
3.1.      Mud Store 示例
假设你是一个专门销售泥浆( MUD )的在线商店的页面设计者。我们称他为 "The Online Mud Store" 。生意很好。客户订购各种各样的类型和数量的泥浆。他们使用他们的用户名和密码登陆到商店中来,就可以浏览他们的订货和购买其他东西。现在,赤土陶泥正在促销,这是一种很常用的泥巴。一少部分顾客很有规律的购买一种亮红土 Bright Red Mud ,这也是促销产品,但是不太常用,因此被移到页面的边缘。所有顾客的信息都在数据库中被跟踪,因此有一天问题出现了: 为什么不使用 Velocity 来定位目标客户,这些客户对某种类型的产品特别感兴趣?
Velocity 使针对访问者个性的 WEB 页面客户化(个性化)非常容易。作为一个在线泥巴商店的站点设计者,以想在客户以登陆进展点后就看到它们想看的页面。
你遇到你公司的软件工程师,每个人都认为 $customer 将保持当前登陆进入的客户信息,而 $mudsOnSpecial 将士当前所有促销的泥巴。 $flogger 对象包含有助于促销的方法。对于当前的任务,让我们仅关注这三个问题。记住,你不需要担心软件工程师如何从数据库中取得顾客信息,但你必须知道他们可以。这样可以使你专注于你的工作而软件工程师则忙于他们自己的工作。
你可以在你的页面中嵌入如下的 VTL 语句:
<HTML>
<BODY>
Hello $customer.Name!
<table>
#foreach( $mud in $mudsOnSpecial )
   #if ( $customer.hasPurchased($mud) )
      <tr>
        <td>
          $flogger.getPromo( $mud )
        </td>
      </tr>
   #end
#end
</table>
 
foreach 语 句的细节将进一步细说,但重要的是这个短小的脚本居然可以在你的站点上运行。当有一个倾向于亮红土的顾客登陆进来时,亮红土正在促销,这就是这个顾客所看 到的,并且促销显示非常显著。如果另外一个长期购买赤陶土的顾客登陆进来,赤陶土促销的提示信息则应该在前面中间位置。 Velocity 是非常灵活的,受限的只是你的创造力。
写在 VTL 参考文档中的是其他 Velocity 元素,他们一起给你很强大的能力和灵活性以创建很好的站点。待你更加了解这些元素,就可以开始释放 Velocity 的强大动力。
4.         Velocity 模板语言 (VTL): 介绍
Velocity 模板语言 (VTL) 旨在为 Web 页面结合动态内容提供最容易、简单和简洁的方法。即使有一点或者没有编程经验的页面设计者也可以很快能为页面提供动态内容。
VTL 使用引用( references )来将动态内容嵌入 web 页面,每个变量就是某一个类型的引用。变量实际上是一个可以调用定义在 java 代码中的内容的引用,或者它可以从页面内的 VTL 语句得出自身的值。下面是一个例子,说明可以嵌入到 HTML 文档中的 VTL 语句。
 
#set( $a = "Velocity" )
 
 
这个 VTL 语句,就像所有的 VTL 语句一样,以 # 字符开始,并跟着一个指令 set 当一个在线访问这请求页面时, Velocity 模伴引擎在页面内搜索所有 # 字符,然后决定是哪一个标记了 VTL 语句的开始,哪个标记不需要 VTL 做什么动作。
 
 # 字符后面紧跟一个指令 set . set 指令使用一个括在括号内的表达式 --- 一个等式将一个值指派给一个变量。变量在等号的左边而值在等号的右边。
 
在上面的示例中,变量是 $a 值是 Velocity 这个变量就象其他引用一样,以一个 $ 字符开始。值通常在引号之中,对 Velocity 来说一般没有类型冲突的问题,因为只有字符串 ( 基于文本的信息 ) 可以传递给变量。
 
下面的主要规则可能有助于理解 Velocity 是如何工作的:引用以 $ 开头用于取得什么东西,而指令以 # 开始用于做什么事情。
在上面的例子中, #set 用于将一个值指派给一个变量。而变量 $a 则可以用来在模板中输出 "Velocity"
5.         Hello Velocity World!
一旦一个值被赋给一个变量,便可以在 HTML 中随处引用它。在下面的示例中,先给变量 $foo 赋值然后引用它。
<html>
<body>
#set( $foo = "Velocity" )
Hello $foo World!
</body>
<html>
 
这个页面的结果是输出 "Hello Velocity World!"
为了使包含 VTL 指令的语句具有可读性,我们鼓励每个 VTL 语句在一个新行开始,虽然并不一定要这样做。 set 将随后深入解释。
 
6.         注释
可以用注释加入描述性文本,他们并不在模板引擎中输出。注释可以有助于你的记忆或者想其他人解释你的 VTL 语句正在做什么。
## This is a single line comment.
 
单行注释以 ## 开始,并在本行结束。如果需要加入多行注释,并不需要加入很多的单行注释。多行注释,以 #* 开始并以 *# 结束可以处理这种情况。
This is text that is outside the multi-line comment.
Online visitors can see it.
 
#*
 Thus begins a multi-line comment. Online visitors won't
 see this text because the Velocity Templating Engine will
 ignore it.
*#
 
Here is text outside the multi-line comment; it is visible.
 
 
下面事一些例子说明单行注释和多行注释如何工作。
This text is visible. ## This text is not.
This text is visible.
This text is visible. #* This text, as part of a multi-line comment,
is not visible. This text is not visible; it is also part of the
multi-line comment. This text still not visible. *# This text is outside
the comment, so it is visible.
## This text is not visible.
 
还有第三种注释, VTL 注释块,可以用来存储诸如文档作者、版本信息等。
 
#**
This is a VTL comment block and
may be used to store such information
as the document author and versioning
information:
@author
@version 5
*#
 
7.         引用
VTL 中有三种类型的引用:变量,属性和方法。作为使用 VTL 的设计者,你和你的工程师必须在饮用的特定命名上取得一致,以便在你的模板中正确的使用他们。
 
有关引用的所有参数都处理为字符串对象。 Everything coming to and from a reference is treated as a String object. 假如有一个对象表示 $foo ( 比如说是整型对象 ) Velocity 将调用其 toString() 方法来将此对象转换为一个字符串。
7.1.      变量 Variables
变量的简略标记是有一个前导 "$" 字符后跟一个 VTL 标识符( Identifier. )组成。一个 VTL 标识符必须以一个字母开始 (a .. z A .. Z) 。剩下的字符将由以下类型的字符组成:
字母 (a .. z, A .. Z)
数字 (0 .. 9)
连字符 ("-")
下划线 ("_")
下面是一些有效的变量引用 :
$foo
$mudSlinger
$mud-slinger
$mud_slinger
$mudSlinger1
 
VTL 引用一个变量时,比如 $foo ,变量可以从模板的 set 指令取得值,也可以从
 Java 代码中取得。例如,如果 Java 变量 $foo 在模板被请求的时候具有值 bar ,则 bar 将替换页面中的所有 $foo 的实例。或者,如果包含下面的语句:
#set( $foo = "bar" )
 
紧跟指令后的所有 $foo 的实例的输出将会一样值。
7.2.      属性

VTL
引用的第二种元素是属性,而属性具有独特的格式。属性的简略标记识前导符 $ 后跟一个 VTL 标识符,在后跟一个点号 (".") 最后又是一个 VTL 标识符。这是一些有效的示例:
$customer.Address
$purchase.Total
 
请看第一个例子, $customer.Address . 。他有两种意思。 它可以意味着,查询由 customer 标是的哈希表并按关键字 Address 返回值。但是 $customer.Address 也可能引用一个方法(下述, $customer.Address 可能是 $customer.getAddress() . 的缩写。当一个页面被请求时, Velocity 将决定这两种可能到底是哪一个,然后返回相应的值。
7.3.        方法
方法在 JAVA 代码中定义,并作一些有用的事情,比如运行一个计算器或者作出一个决定。方法是实际上也是引用,由前导符 "$" 后跟一个 VTL 标识符,后跟一个 VTL 方法体( Method Body )。 VTL 方法体由一个 VTL 标识符后跟一个左括号,再跟可选的参数列表,最后是右括号。下面是一些有效的方法示例:
 
$customer.getAddress()
$purchase.getTotal()
$page.setTitle( "My Home Page" )
$person.setAttributes( ["Strange", "Weird", "Excited"] )
 
前面两个例子 -- $customer.getAddress() $purchase.getTotal() 看起来有点象上面属性一节中所用的样子, $customer.Address $purchase.Total . 。如果你想这些例子在某些方面相关,那你就对了。
 
VTL 属性可以为 VTL 方法用作简略标记。属性 $customer.Address 具有和方法 $customer.getAddress()   完全一样的效果。属性和方法的主要不同点是方法中可以添加参数列表。
简略标记可以用在下面的方法中:
sun.getPlanets()
$annelid.getDirt()
$album.getPhoto()
 
我们或许希望方法可以为我们放回属于太阳系的行星的名字,喂养我们的蚯蚓,或者从相册中返回一张照片。下面只有长的那个标记是可以工作的方法:
$sun.getPlanet( ["Earth", "Mars", "Neptune"] )
## 不能将参数列表传递给 $sun.Planets
 
$sisyphus.pushRock()
## Velocity 假定我意思是 $sisyphus.getRock()
 
$book.setTitle( "Homage to Catalonia" )
## 不能传递一个参数列表
 
7.4.        形式引用符 Formal Reference Notation
引用的简略符号如上所述,但是另外还有一种引用的形式符号,示例如下:
${mudSlinger}
${customer.Address}
${purchase.getTotal()}
 
在大多数情况下,我们将使用引用的简略符号,但在一些情况下,也需要拥戴哦形式引用符以便正确处理。
假定你正在纸片上构件一个句子,将使用 $vice 作为句子中名词的词根。我们的目标是允许人们选择词根,然后产生以下两种结果之一:
"Jack is a pyromaniac."
或者 "Jack is a kleptomaniac."
  在这种情况下,使用简略符号是不太充分的。考虑到下面的例子:
Jack is a $vicemaniac.
 
 
这里有个不确定性, Velocity 假定 $vicemaniac ,(而不是 $vice 是一个你想要使用的标识符。 找不到 $vicemaniac 的值,他将返回 $vicemaniac 。使用形式符号便可解决这个问题:
Jack is a ${vice}maniac
现在 Velocity 知道 $vice (而不是 $vicemaniac 是一个引用。形式符号常用在饮用咋模板中和文本直接邻近的地方。
 
7.5.      安静引用符 Quiet Reference Notation
Velocity 遇到一个位定义的引用时,其通常行为是输出这个引用的映像。比如,假设下面的引用出现在模板中的一部分:
<input type="text" name="email" value="$email"/>
  当表单初次装入时,变量引用 $email 无值,你宁愿是一个空白域而不是具有值 "$email" 。使用安静引用符可以绕过 Velocity 的常规行为,在 VTL 中不用 $email 而是用 $!email 符号。 所以,上面的例子将会看起来像下面的样子:
<input type="text" name="email" value="$!email"/>
现在,当表单初次装入时, $email 仍然没有值,但是将输出空字符串而不是 "$email"
 
形式和安静引用符可以一起使用,如下所示:
<input type="text" name="email" value="$!{email}"/>
 
 
 
 
 
 
 
 
 
 
1.        取得语义 Getting literal
VTL 特别的字符,比如 $ # 来做这个工作,因此在模板中使用这些自负的时候必须格外小心。本节讲述 $ 的转义。
1.1.      货币
我们写下句子 "I bought a 4 lb. sack of potatoes at the farmer's market for only $2.50!" ,这并没有什么问题。但如前所述, VTL 标识符总是以大写或是小写字母开始,所以 $2.50 在引用中将不能出错。
1.2.        转义有效的 VTL 引用
问题将会出现,因为 Velocity 将有一个潜在的冲突。转义特殊字符是处理 VTL 模板种特殊字符的最好的办法,者可以用一个反斜线来进行。
foo
$email
foo
$email
 
如果 Velocity VTL 模板中遇到一个 $email 引用,他将在上下文中查找相应的值。这里,输出将是 foo ,因为 $email 是定义了的。如果 $email 未定义,输出将是 $email
 
假设 $email 是定义了的(比如,具有值 foo) ,但是你想输出 $email 。可以有几种方法来做这个事情,不是最简单的是使用转义符。
## The following line defines $email in this template:
#set( $email = "foo" )
$email
$email
\$email
\$email
 
将输出是
foo
$email
foo
$email
 
注意: 绑定在 $ 的左边。从做绑定原则使 \$email 被解释为 \$email 和上面例子比较下面的例子,这里 $email 未定义。
$email
$email
\$email
\$email
输出
 
$email
$email
\$email
\$email
 
注意, Velocity 处理定义和未定义的引用是不同的。下面一个 set 指令将 $foo 设为值 gibbous.
#set( $foo = "gibbous" )
$moon = $foo
 
输出将是 $moon = gibbous
-- 这里 $moon 作为字面输出,因为他并没有定义。而 gibbous 将在 $foo 的位置输出。
 
我们也可以转义 VTL 指令,这将在指令一节祥述。
 
2.        Case Substitution
现在你大致了解了引用,可以在模板中使用它们了。 Velocity 采用了很多 JAVA 原理的优点,模板设计人员会发现非常容易使用。例如:
$foo
 
$foo.getBar()
## is the same as
$foo.Bar
 
$data.getUser("jon")
## is the same as
$data.User("jon")
 
$data.getRequest().getServerName()
## is the same as
$data.Request.ServerName
## is the same as
${data.Request.ServerName}
这个例子显示了引用的一些其他用法。 Velocity 借鉴了 Java 的自省和组件 bean 特征,来解决引用名在上下文中作为对象和对象方法的问题。可以在你的模板的任何地方插入引用和求值。
Velocity, 建模在 Sun Microsystems 定义的 BEAN 规范之上,是大小写敏感的;开发者努力捕捉和纠正可能出现的用户错误。当方法 getFoo() 在模板中通过 $bar.foo 引用时, Velocity 首先尝试 $getfoo 。如果失败,他会再尝试 $getFoo 。类似地,当一个模板引用到 $bar.Foo Velocity 将尝试 $getFoo() 先,然后尝试 getfoo()
注意: 模板中引用示例变量的问题仍然没有解决。 只有引用等价于 JavaBean getter/setter 方法解决了。
分享到:
评论

相关推荐

    liferay开发手册

    模板通常使用VM(Velocity模板语言)实现,`.ftl`文件与`.vm`文件对应,修改`.vm`文件时需同步更新对应的`.ftl`文件。 #### 三、布局(Layout)开发 **3.1 配置文件** - **liferay-layout-templates.xml** - **...

    TinyYolo2实时视频流物体检测ONNX模型

    TinyYolo2实时视频流物体检测ONNX模型 运行 ONNX 模型,并结合 OpenCV 进行图像处理。具体流程包括: 1. 加载并初始化 ONNX 模型。 2. 从摄像头捕获实时视频流。 3. 对每一帧图像进行模型推理,生成物体检测结果。 4. 在界面上绘制检测结果的边界框和标签。

    chromedriver-linux64-134.0.6998.23(Beta).zip

    chromedriver-linux64-134.0.6998.23(Beta).zip

    Web开发:ABP框架4-DDD四层架构的详解

    Web开发:ABP框架4-DDD四层架构的详解

    chromedriver-linux64-135.0.7029.0(Canary).zip

    chromedriver-linux64-135.0.7029.0(Canary).zip

    (参考项目)MATLAB人脸门禁系统.zip

    实现人脸识别的考勤门禁系统可以分为以下步骤: 1. 采集人脸图像数据集:首先需要采集员工的人脸图像数据集,包括正面、侧面等多个角度的图像。可以使用MATLAB中的图像采集工具或者第三方库进行采集。 2. 预处理人脸图像数据:对采集到的人脸图像数据进行预处理,包括人脸检测、人脸对齐、人脸裁剪等操作。MATLAB提供了相关的图像处理工具箱,可以用于实现这些处理步骤。 3. 特征提取与特征匹配:使用人脸识别算法提取人脸图像的特征,比如使用人脸识别中常用的特征提取算法如Eigenfaces、Fisherfaces或者基于深度学习的算法。然后将员工的人脸数据与数据库中的人脸数据进行匹配,判断是否为注册员工。 4. 考勤记录与门禁控制:如果人脸匹配成功,系统可以记录员工的考勤时间,并且控制门禁系统进行开启。MATLAB可以与外部设备进行通信,实现门禁控制以及考勤记录功能。

    rdtyfv、ijij

    yugy

    企业IT治理体系规划.pptx

    企业IT治理体系规划.pptx

    基于Nutz、SSH、SSM的新闻管理系统.zip(毕设&课设&实训&大作业&竞赛&项目)

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    基于多目标粒子群算法的冷热电联供综合能源系统优化调度与运行策略分析,基于多目标粒子群算法的冷热电联供综合能源系统优化调度与运行策略分析,MATLAB代码:基于多目标粒子群算法冷热电联供综合能源系统运行

    基于多目标粒子群算法的冷热电联供综合能源系统优化调度与运行策略分析,基于多目标粒子群算法的冷热电联供综合能源系统优化调度与运行策略分析,MATLAB代码:基于多目标粒子群算法冷热电联供综合能源系统运行优化 关键词:综合能源 冷热电三联供 粒子群算法 多目标优化 参考文档:《基于多目标算法的冷热电联供型综合能源系统运行优化》 仿真平台:MATLAB 平台采用粒子群实现求解 优势:代码注释详实,适合参考学习,非目前烂大街的版本,程序非常精品,请仔细辨识 主要内容:代码构建了含冷、热、电负荷的冷热电联供型综合能源系统优化调度模型,考虑了燃气轮机、电制冷机、锅炉以及风光机组等资源,并且考虑与上级电网的购电交易,综合考虑了用户购电购热冷量的成本、CCHP收益以及成本等各种因素,从而实现CCHP系统的经济运行,求解采用的是MOPSO算法(多目标粒子群算法),求解效果极佳,具体可以看图 ,核心关键词: 综合能源系统; 冷热电三联供; 粒子群算法; 多目标优化; MOPSO算法; 优化调度模型; 燃气轮机; 电制冷机; 锅炉; 风光机组; 上级电网购售电交易。,基于多目标粒子群算法的CCHP综合

    DSP28379D串口升级方案:单核双核升级与Boot优化,C#上位机开发串口通信方案,DSP28379D串口升级方案:单核双核升级与Boot优化,C#上位机开发实现串口通信,DSP28379D串口升

    DSP28379D串口升级方案:单核双核升级与Boot优化,C#上位机开发串口通信方案,DSP28379D串口升级方案:单核双核升级与Boot优化,C#上位机开发实现串口通信,DSP28379D串口升级方案 单核双核升级,boot升级,串口方案。 上位机用c#开发。 ,DSP28379D; 串口升级方案; 单核双核升级; boot升级; 上位机C#开发,DSP28379D串口双核升级方案:Boot串口升级技术使用C#上位机开发

    基于ASP.NET MVC+三层架构和EntityFramework的微博门户网站项目.zip(毕设&课设&实训&大作业&竞赛&项目)

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    基于PLC的双层自动门控制:光电传感触发,有序开关与延时功能实现,附程序、画面及参考文档 ,基于PLC的双层自动门控制系统:精准控制,保障无尘环境;门间联动,智能安防新体验 ,基于plc的双层自动门控

    基于PLC的双层自动门控制:光电传感触发,有序开关与延时功能实现,附程序、画面及参考文档。,基于PLC的双层自动门控制系统:精准控制,保障无尘环境;门间联动,智能安防新体验。,基于plc的双层自动门控制系统,全部采用博途仿真完成,提供程序,画面,参考文档,详情见图。 实现功能(详见上方演示视频): ① 某房间要求尽可能地保持无尘,在通道上设置了两道电动门,门1和门2,可通过光电传感器自动完成门的打开和关闭。 门1和门2 不能同时打开。 ② 第 1 道门(根据出入方向不同,可能是门 1 或门 2),是由在通道外的开门者通过按开门按钮打开的,而第 2 道门(根据出入方向不同,可能是门 1 或门 2 )则是在打开的第 1 道门关闭后自动地打开的(也可以由通道内的人按开门按钮来打开第2 道门)。 这两道门都是在门开后,经过 3s 的延时而自动关闭的。 ③ 在门关闭期间,如果对应的光电传感器的信号被遮断,则门立即自动打开。 如果在门外或者在门内的开门者按对应的开门按钮时,立即打开。 ④ 出于安全方面的考虑,如果在通道内的某个人经过光电传感器时,对应的门已经打开,则通道外的开门者可以不按开门按钮。

    黑马程序员Java品达通用权限项目,基于SpringCloud SpringBoot 的微服务框架的权限管理解决方案.zip

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    DeepSeek+DeepResearch-让科研像聊天一样简单

    DeepSeek+DeepResearch——让科研像聊天一样简单 (1)DeepSeek如何做数据分析? (2)DeepSeek如何分析文件内容? (3)DeepSeek如何进行数据挖掘? (4)DeepSeek如何进行科学研究? (5)DeepSeek如何写综述? (6)DeepSeek如何进行数据可视化? (7)DeepSeek如何写作润色? (8)DeepSeek如何中英文互译? (9)DeepSeek如何做降重? (10)DeepSeek论文参考文献指令 (11)DeepSeek基础知识。

    基于springboot+uniapp实现的蛋糕商城小程序.zip(毕设&课设&实训&大作业&竞赛&项目)

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    jdepend-demo-2.9.1-10.el7.x64-86.rpm.tar.gz

    1、文件内容:jdepend-demo-2.9.1-10.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/jdepend-demo-2.9.1-10.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、更多资源/技术支持:公众号禅静编程坊

    关爱儿童公益网站 web 项目.zip

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行;功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

    MATLAB实现WOA-LSTM鲸鱼算法优化长短期记忆网络数据分类预测(含模型描述及示例代码)

    内容概要:本文档详细介绍了如何利用 MATLAB 实现鲸鱼优化算法 (WOA) 和长短期记忆网络 (LSTM) 相结合的技术——WOA-LSTM,在数据分类和预测领域的应用。文章首先概述了LSTM在网络训练中超参数依赖的问题以及WOA作为一种新颖的全局优化算法的优势。接着阐述了该项目的研究背景、目的及其重要意义,并深入讨论了项目面临的六大主要挑战,从模型优化到超参数空间管理。文档特别强调WOA-LSTM融合所带来的性能提升、降低计算复杂度的能力及其实现自动化的超参数优化流程。除此之外,文中展示了模型的应用广泛性,覆盖了从金融市场的股票预测到智能制造业的各种实际场景,并提供了具体的模型架构细节和代码实例,以帮助理解模型的工作原理和技术要点。 适合人群:具有一定编程技能的研究人员、工程师和科学家们,尤其是对深度学习技术和机器学习感兴趣的专业人士。 使用场景及目标:该文档的目标是向用户传授使用MATLAB实现WOA-LSTM进行复杂数据分类和预测的方法论,旨在指导读者理解和掌握如何利用WOA进行超参数寻优,从而改善LSTM网络性能。 其他说明:通过阅读这份文档,使用者不仅能够获得有关WOA-LSTM技术的具体实现方式的知识,而且还可以获取关于项目规划和实际部署过程中的宝贵经验。

    tomcat安装及配置教程.md

    tomcat安装及配置教程.md

Global site tag (gtag.js) - Google Analytics