- 浏览: 212856 次
- 性别:
- 来自: 北京
-
文章分类
最新评论
-
zjlhonest:
不需要那个tables.add也能成功啊,悲催
JAVA 获取数据库中表的结构 -
zjlhonest:
那个tables.add(table),tables是那个类的 ...
JAVA 获取数据库中表的结构 -
yangrenjun:
一定要注意起的类名要一直。否则编译通不过去
这里是MyEcli ...
生成 MyEclipse 注册码 -
chokee:
不错比较清楚
Oracle数据库-建库、建表空间,建用户 -
vcxiaohei:
谢谢,很好用!!!
验证子网掩码的合法性
官网地址:http://www.baby666.cn/hunter/index.html
在官网能够下载到zTree的源码、实例和API,其中作者pdf的API写得非常详细(中文的哦)
【部分函数和属性介绍】
这个函数接受一个JSON格式的数据对象setting和一个JSON格式的数据对象zTreeNodes,从而建立 Tree。
zTree 的参数配置都在这里完成,简单的说:树的样式、事件、访问路径等都在这里配置
setting 举例:
var setting = { showLine: true, checkable: true };
因为参数太多,具体参数详见zTreeAPI
zTree 的全部节点数据集合,采用由JSON对象组成的数据结构,简单的说:这里使用Json格式保存了树的所有信息
zTreeNodes的格式分为两种:利用Json格式嵌套体现父子关系和Array简单格式
①带有父子关系的标准 zTreeNodes 举例:
- var zTreeNodes = [
- {"id":1, "name":"test1", "nodes":[
- {"id":11, "name":"test11", "nodes":[
- {"id":111, "name":"test111"}
- ]},
- {"id":12, "name":"test12"}
- ]},
- ......
- ];
var zTreeNodes = [ {"id":1, "name":"test1", "nodes":[ {"id":11, "name":"test11", "nodes":[ {"id":111, "name":"test111"} ]}, {"id":12, "name":"test12"} ]}, ...... ];
②带有父子关系的简单 Array 格式(isSimpleData)的 zTreeNodes 举例:
- var treeNodes = [
- {"id":1, "pId":0, "name":"test1"},
- {"id":11, "pId":1, "name":"test11"},
- {"id":12, "pId":1, "name":"test12"},
- {"id":111, "pId":11, "name":"test111"},
- ......
- ];
var treeNodes = [ {"id":1, "pId":0, "name":"test1"}, {"id":11, "pId":1, "name":"test11"}, {"id":12, "pId":1, "name":"test12"}, {"id":111, "pId":11, "name":"test111"}, ...... ];
【实例一】(Java代码)
①在页面引用zTree的js和css:
- <!-- ZTree树形插件 -->
- <link rel="stylesheet" href="<%=root%>/Web/common/css/zTreeStyle/zTreeStyle.css" type="text/css">
- <!-- <link rel="stylesheet" href="<%=root%>/Web/common/css/zTreeStyle/zTreeIcons.css" type="text/css"> -->
- <script type="text/javascript" src="<%=root%>/Web/common/js/jquery-ztree-2.5.min.js"></script>
<!-- ZTree树形插件 --> <link rel="stylesheet" href="<%=root%>/Web/common/css/zTreeStyle/zTreeStyle.css" type="text/css"> <!-- <link rel="stylesheet" href="<%=root%>/Web/common/css/zTreeStyle/zTreeIcons.css" type="text/css"> --> <script type="text/javascript" src="<%=root%>/Web/common/js/jquery-ztree-2.5.min.js"></script>
②在script脚本中定义setting和zTreeNodes
- var setting = {
- isSimpleData : true, //数据是否采用简单 Array 格式,默认false
- treeNodeKey : "id", //在isSimpleData格式下,当前节点id属性
- treeNodeParentKey : "pId", //在isSimpleData格式下,当前节点的父节点id属性
- showLine : true, //是否显示节点间的连线
- checkable : true //每个节点上是否显示 CheckBox
- };
- var treeNodes = [
- {"id":1, "pId":0, "name":"test1"},
- {"id":11, "pId":1, "name":"test11"},
- {"id":12, "pId":1, "name":"test12"},
- {"id":111, "pId":11, "name":"test111"},
- ];
var setting = { isSimpleData : true, //数据是否采用简单 Array 格式,默认false treeNodeKey : "id", //在isSimpleData格式下,当前节点id属性 treeNodeParentKey : "pId", //在isSimpleData格式下,当前节点的父节点id属性 showLine : true, //是否显示节点间的连线 checkable : true //每个节点上是否显示 CheckBox }; var treeNodes = [ {"id":1, "pId":0, "name":"test1"}, {"id":11, "pId":1, "name":"test11"}, {"id":12, "pId":1, "name":"test12"}, {"id":111, "pId":11, "name":"test111"}, ];
③在进入页面时生成树结构:
var zTree;
$(function() { zTree = $("#tree").zTree(setting, treeNodes); });
④最后查看效果:
【实例二】(从后台获取简单格式Json数据)
①后台代码封装简单格式Json数据:
- public void doGetPrivilegeTree() throws IOException{
- String s1 = "{id:1, pId:0, name:\"test1\" , open:true}";
- String s2 = "{id:2, pId:1, name:\"test2\" , open:true}";
- String s3 = "{id:3, pId:1, name:\"test3\" , open:true}";
- String s4 = "{id:4, pId:2, name:\"test4\" , open:true}";
- List<String> lstTree = new ArrayList<String>();
- lstTree.add(s1);
- lstTree.add(s2);
- lstTree.add(s3);
- lstTree.add(s4);
- //利用Json插件将Array转换成Json格式
- response.getWriter().print(JSONArray.fromObject(lstTree).toString());
- }
public void doGetPrivilegeTree() throws IOException{ String s1 = "{id:1, pId:0, name:\"test1\" , open:true}"; String s2 = "{id:2, pId:1, name:\"test2\" , open:true}"; String s3 = "{id:3, pId:1, name:\"test3\" , open:true}"; String s4 = "{id:4, pId:2, name:\"test4\" , open:true}"; List<String> lstTree = new ArrayList<String>(); lstTree.add(s1); lstTree.add(s2); lstTree.add(s3); lstTree.add(s4); //利用Json插件将Array转换成Json格式 response.getWriter().print(JSONArray.fromObject(lstTree).toString()); }
②页面使用Ajax获取zTreeNodes数据再生成树
- var setting = {
- isSimpleData : true, //数据是否采用简单 Array 格式,默认false
- treeNodeKey : "id", //在isSimpleData格式下,当前节点id属性
- treeNodeParentKey : "pId", //在isSimpleData格式下,当前节点的父节点id属性
- showLine : true, //是否显示节点间的连线
- checkable : true //每个节点上是否显示 CheckBox
- };
- var zTree;
- var treeNodes;
- $(function(){
- $.ajax({
- async : false,
- cache:false,
- type: 'POST',
- dataType : "json",
- url: root+"/ospm/loginInfo/doGetPrivilegeTree.action",//请求的action路径
- error: function () {//请求失败处理函数
- alert('请求失败');
- },
- success:function(data){ //请求成功后处理函数。
- alert(data);
- treeNodes = data; //把后台封装好的简单Json格式赋给treeNodes
- }
- });
- zTree = $("#tree").zTree(setting, treeNodes);
- });
var setting = { isSimpleData : true, //数据是否采用简单 Array 格式,默认false treeNodeKey : "id", //在isSimpleData格式下,当前节点id属性 treeNodeParentKey : "pId", //在isSimpleData格式下,当前节点的父节点id属性 showLine : true, //是否显示节点间的连线 checkable : true //每个节点上是否显示 CheckBox }; var zTree; var treeNodes; $(function(){ $.ajax({ async : false, cache:false, type: 'POST', dataType : "json", url: root+"/ospm/loginInfo/doGetPrivilegeTree.action",//请求的action路径 error: function () {//请求失败处理函数 alert('请求失败'); }, success:function(data){ //请求成功后处理函数。 alert(data); treeNodes = data; //把后台封装好的简单Json格式赋给treeNodes } }); zTree = $("#tree").zTree(setting, treeNodes); });
③最后显示效果
【实例三】从后台动态获取数据,树节点提供右键菜单功能
①配置setting:
- var url = "/ospm/loginInfo/doGetPrivilegeTree.action";
- //zTree基本设置
- var setting = {
- async : true, //需要采用异步方式获取子节点数据,默认false
- asyncUrl : root + url, //当 async = true 时,设置异步获取节点的 URL 地址 ,允许接收 function 的引用
- asyncParam : ["id"], //提交的与节点数据相关的必需参数
- isSimpleData : true, //数据是否采用简单 Array 格式,默认false
- treeNodeKey : "id", //在isSimpleData格式下,当前节点id属性
- treeNodeParentKey : "parentId", //在isSimpleData格式下,当前节点的父节点id属性
- nameCol : "privName", //在isSimpleData格式下,当前节点名称
- expandSpeed : "fast", //设置 zTree节点展开、折叠时的动画速度或取消动画(三种默认定义:"slow", "normal", "fast")或 表示动画时长的毫秒数值(如:1000)
- showLine : true, //是否显示节点间的连线
- callback : { //回调函数
- rightClick : zTreeOnRightClick //右键事件
- }
- };
var url = "/ospm/loginInfo/doGetPrivilegeTree.action"; //zTree基本设置 var setting = { async : true, //需要采用异步方式获取子节点数据,默认false asyncUrl : root + url, //当 async = true 时,设置异步获取节点的 URL 地址 ,允许接收 function 的引用 asyncParam : ["id"], //提交的与节点数据相关的必需参数 isSimpleData : true, //数据是否采用简单 Array 格式,默认false treeNodeKey : "id", //在isSimpleData格式下,当前节点id属性 treeNodeParentKey : "parentId", //在isSimpleData格式下,当前节点的父节点id属性 nameCol : "privName", //在isSimpleData格式下,当前节点名称 expandSpeed : "fast", //设置 zTree节点展开、折叠时的动画速度或取消动画(三种默认定义:"slow", "normal", "fast")或 表示动画时长的毫秒数值(如:1000) showLine : true, //是否显示节点间的连线 callback : { //回调函数 rightClick : zTreeOnRightClick //右键事件 } };
②配置鼠标右键事件,显示右键菜单的代码
- //显示右键菜单
- function showRMenu(type, x, y) {
- $("#rMenu ul").show();
- if (type=="root") {
- $("#m_del").hide();
- $("#m_check").hide();
- $("#m_unCheck").hide();
- }
- $("#rMenu").css({"top":y+"px", "left":x+"px", "display":"block"});
- }
- //隐藏右键菜单
- function hideRMenu() {
- $("#rMenu").hide();
- }
- //鼠标右键事件-创建右键菜单
- function zTreeOnRightClick(event, treeId, treeNode) {
- if (!treeNode) {
- zTree.cancelSelectedNode();
- showRMenu("root", event.clientX, event.clientY);
- } else if (treeNode && !treeNode.noR) { //noR属性为true表示禁止右键菜单
- if (treeNode.newrole && event.target.tagName != "a" && $(event.target).parents("a").length == 0) {
- zTree.cancelSelectedNode();
- showRMenu("root", event.clientX, event.clientY);
- } else {
- zTree.selectNode(treeNode);
- showRMenu("node", event.clientX, event.clientY);
- }
- }
- }
//显示右键菜单 function showRMenu(type, x, y) { $("#rMenu ul").show(); if (type=="root") { $("#m_del").hide(); $("#m_check").hide(); $("#m_unCheck").hide(); } $("#rMenu").css({"top":y+"px", "left":x+"px", "display":"block"}); } //隐藏右键菜单 function hideRMenu() { $("#rMenu").hide(); } //鼠标右键事件-创建右键菜单 function zTreeOnRightClick(event, treeId, treeNode) { if (!treeNode) { zTree.cancelSelectedNode(); showRMenu("root", event.clientX, event.clientY); } else if (treeNode && !treeNode.noR) { //noR属性为true表示禁止右键菜单 if (treeNode.newrole && event.target.tagName != "a" && $(event.target).parents("a").length == 0) { zTree.cancelSelectedNode(); showRMenu("root", event.clientX, event.clientY); } else { zTree.selectNode(treeNode); showRMenu("node", event.clientX, event.clientY); } } }
- <P><SPAN style="BACKGROUND-COLOR: #fafafa"><!-- 右键菜单div -->
- <div id="rMenu" style="position:absolute; display:none;">
- <li>
- <ul id="m_add" onclick="addPrivilege();"><li>增加</li></ul>
- <ul id="m_del" onclick="delPrivilege();"><li>删除</li></ul>
- <ul id="m_del" onclick="editPrivilege();"><li>编辑</li></ul>
- <ul id="m_del" onclick="queryPrivilege();"><li>查看</li></ul>
- </li>
- </div></SPAN></P>
<!-- 右键菜单div --> <div id="rMenu" style="position:absolute; display:none;"> <li> <ul id="m_add" onclick="addPrivilege();"><li>增加</li></ul> <ul id="m_del" onclick="delPrivilege();"><li>删除</li></ul> <ul id="m_del" onclick="editPrivilege();"><li>编辑</li></ul> <ul id="m_del" onclick="queryPrivilege();"><li>查看</li></ul> </li> </div>
③页面加载时生成树并且监听鼠标点击事件,及时隐藏右键菜单
- function reloadTree() {
- hideRMenu();
- zTree = $("#tree").zTree(setting, treeNodes);
- }
- var zTree;
- var treeNodes = [];
- $(function() {
- reloadTree();
- $("body").bind(//鼠标点击事件不在节点上时隐藏右键菜单
- "mousedown",
- function(event) {
- if (!(event.target.id == "rMenu" || $(event.target)
- .parents("#rMenu").length > 0)) {
- $("#rMenu").hide();
- }
- });
- });
function reloadTree() { hideRMenu(); zTree = $("#tree").zTree(setting, treeNodes); } var zTree; var treeNodes = []; $(function() { reloadTree(); $("body").bind(//鼠标点击事件不在节点上时隐藏右键菜单 "mousedown", function(event) { if (!(event.target.id == "rMenu" || $(event.target) .parents("#rMenu").length > 0)) { $("#rMenu").hide(); } }); });
④后台代码根据id获取树节点信息
-----------------------Action层-----------------------
- public void doGetPrivilegeTree() throws IOException{
- String sId = request.getParameter("id");
- int treeId = 0;
- if(sId!=null&&!"".equals(sId)){
- treeId = Integer.parseInt(sId);
- }
- List<Privilege> lstPriv = privilegeService.findPrivilegeTreeById(treeId);
- response.setCharacterEncoding("UTF-8");
- response.getWriter().print(JSONArray.fromObject(lstPriv).toString());
- }
public void doGetPrivilegeTree() throws IOException{ String sId = request.getParameter("id"); int treeId = 0; if(sId!=null&&!"".equals(sId)){ treeId = Integer.parseInt(sId); } List<Privilege> lstPriv = privilegeService.findPrivilegeTreeById(treeId); response.setCharacterEncoding("UTF-8"); response.getWriter().print(JSONArray.fromObject(lstPriv).toString()); }
-----------------------Service层-----------------------
- /**
- * 根据节点id,查询其下级节点的数据
- */
- @SuppressWarnings("unchecked")
- @Override
- public List<Privilege> findPrivilegeTreeById(int treeId) {
- StringBuffer sbTree= new StringBuffer();
- sbTree.append("SELECT NEW Privilege(p.id,p.privName,p.description,p.status,p.isLeaf,p.parentId) FROM Privilege p ");
- sbTree.append("WHERE p.parentId=:treeId ");
- sbTree.append("AND p.status!=:del ");
- Map<String,Object> mapTree = new HashMap<String, Object>();
- mapTree.put("treeId", treeId);
- mapTree.put("del", Privilege.PRIV_STATUS_DELETE);
- return (List<Privilege>) privilegeDao.findByHql(sbTree.toString(), mapTree);
- }
/** * 根据节点id,查询其下级节点的数据 */ @SuppressWarnings("unchecked") @Override public List<Privilege> findPrivilegeTreeById(int treeId) { StringBuffer sbTree= new StringBuffer(); sbTree.append("SELECT NEW Privilege(p.id,p.privName,p.description,p.status,p.isLeaf,p.parentId) FROM Privilege p "); sbTree.append("WHERE p.parentId=:treeId "); sbTree.append("AND p.status!=:del "); Map<String,Object> mapTree = new HashMap<String, Object>(); mapTree.put("treeId", treeId); mapTree.put("del", Privilege.PRIV_STATUS_DELETE); return (List<Privilege>) privilegeDao.findByHql(sbTree.toString(), mapTree); }
⑤最后查看效果:
发表评论
-
开发经验总结(1)
2012-09-11 20:00 923[/align][align=left]经验1 : ... -
接口 与 抽象类 区别
2012-08-10 15:40 893/** * 抽像类和接口 区别 : * * 首先抽象 ... -
throws和throw
2012-08-10 15:41 758throws和throw 系统自动抛出的异常 ... -
windows批处理
2012-06-07 15:06 932批处理文件,在MS-DOS中,.bat文件是可执行文件,有一系 ... -
static代码块 正确理解
2012-05-02 17:29 917.static代码块 static代码块也叫静态代码块, ... -
ireport 部署到 linux系统字体问题
2012-03-01 17:50 1465今天使用ireport导出pdf,在windows下,一切好好 ... -
json-llib Java 与 json 之间互换
2012-02-21 13:51 1265package com.mai.json; import s ... -
HttpClient简介
2012-02-21 10:37 1158HttpClient简介 一、HttpCli ... -
同一台Windows/Linux下安装多个Tomcat服务
2012-02-10 17:37 1813本文以apache-tomcat-6.0.18为例 1、下载软 ... -
常用JS验证(一)
2012-02-01 13:26 7301. js(文本框只允许输入数字) <form& ... -
iframe 高度自适应性
2012-01-31 17:51 1074iframe 自动高 通常做后台的时候,都喜欢 ... -
常见的异常--java
2012-01-13 11:30 830常见一: already in use: JVM_Bind错 ... -
文件下载
2012-01-09 00:33 826支持多种不同文件格式下载: logger.inf ... -
运用Jconsole监控JVM内存连接到远程linux与windows服务器
2011-08-16 10:03 1652运用Jconsole监控JVM内存连接到远程linux与win ... -
生成 MyEclipse 注册码
2011-06-13 09:36 942import java.io.BufferedReader;i ... -
window.showModalDialog()方法用来创建一个显示HTML内容的模态对话框。
2011-05-24 10:53 2077利用JS中window.showModalDialog()详 ... -
js 屏蔽右键
2011-05-23 10:25 771<SCRIPT> function rf() ... -
XML
2011-05-14 12:35 611java 提供第三方架包 dom4j 读写 XML文件 ... -
MyEclipse6.5安装SVN插件的三种方法
2011-01-21 13:00 1177MyEclipse6.5安装SVN插件的 ... -
spring2.5 容器注解的理解
2011-01-21 10:08 1052Spring中使用annotation注入 我们使用Sp ...
相关推荐
基于QT的车载多媒体系统,这是经过打包之后的,电脑直接下载运行exe就行,不再依赖QT环境
FlowPortal 以流程驱动的应用(2014扬州CIO沙龙).pdf
数据来源: 将该数据集划分成:训练集701张图和测试集176张图。 按照PaddleDetection的VOC数据格式整理,数据解压后文件组织结构: >>tree ├── annotations │ ├── xxx1.xml │ ├── xxx2.xml │ ├── xxx3.xml │ | ... ├── images │ ├── xxx1.png │ ├── xxx2.png │ ├── xxx3.png │ | ... ├── label_list.txt ├── train.txt └── valid.txt # label_list.txt 是类别名称列表 # train.txt 是训练图像列表
内容概要:本文详细介绍了欧姆龙NJ/NX PLC在锂电新能源行业的全ST程序案例。首先,文章阐述了锂电新能源行业发展背景下,对数据传输和控制可靠性的高要求。接着,重点分析了欧姆龙NJ/NX PLC的公司级框架及其无加密程序的特点,强调了其灵活、可扩展、稳定可靠的特性。文中提到该PLC系统支持锂电新能源行业FB库文件,能够高效准确地处理和存储数据。此外,文章还探讨了NJ Socket功能作为服务器和客户端的作用,以及它在设备状态机控制、设备PPM控制、运行时间和报警时间监控等方面的具体应用。最后,总结了该PLC系统的技术特点和应用优势,指出其在未来更多领域的潜在应用和发展前景。 适合人群:从事自动化控制、工业互联网、智能制造等相关领域的工程师和技术人员。 使用场景及目标:适用于需要深入了解PLC在锂电新能源行业具体应用场景的专业人士,旨在帮助他们掌握欧姆龙NJ/NX PLC的技术细节和实际操作方法,提升工作效率和质量。 其他说明:本文不仅展示了欧姆龙NJ/NX PLC的强大功能,还提供了丰富的技术细节和实际案例,有助于读者更好地理解和应用相关技术。
GE Proficy烟草行业解决方案介绍二.pdf
内容概要:本文详细介绍了基于FPGA的永磁同步伺服电机控制系统的实现,涵盖了坐标变换(如Clarke变换)、电流环、速度环、位置环以及SVPWM调制等关键技术。作者通过Verilog代码展示了各个模块的具体实现细节,包括硬件电流环的PI调节器、SVPWM的状态机调制、位置环的正交解码器等。文中特别强调了FPGA相比传统DSP方案在高精度电流环控制方面的优势,如更低的延迟和更高的响应速度。此外,还讨论了一些常见的调试问题及其解决方案,如电机启动时的抖振问题。 适合人群:对嵌入式系统、FPGA开发和电机控制感兴趣的工程师和技术爱好者。 使用场景及目标:适用于需要高性能、低延迟电机控制的应用场景,如工业自动化、机器人等领域。目标是帮助读者理解如何利用FPGA实现高效的伺服电机控制系统。 其他说明:文章不仅提供了理论背景,还给出了具体的Verilog代码实现,便于读者进行实践和调试。
内容概要:本文档详细介绍了Android高级控件的使用方法及其应用场景。首先讲解了下拉列表Spinner,包括其两种表现形式(下拉列表形式和对话框形式),并介绍了适配器Adapter的基础概念及其三种主要类型:数组适配器ArrayAdapter、简单适配器SimpleAdapter和基本适配器BaseAdapter,重点阐述了它们各自的特点和使用步骤。接着,文档对列表视图ListView进行了深入探讨,涉及分隔线样式、按压背景等属性的设置方式。随后,描述了网格视图GridView,详细解释了其拉伸模式的效果及取值。对于翻页视图ViewPager,不仅介绍了基本概念,还展示了翻页标签栏PagerTabStrip的具体应用,特别是用于创建启动引导页。最后,文档介绍了碎片Fragment的概念,强调了其在大屏设备上的优势,以及与ViewPager结合使用的实战案例——记账本应用。 适合人群:有一定Android开发基础,希望深入了解并掌握高级控件使用的开发者。 使用场景及目标:①掌握下拉列表、列表视图、网格视图、翻页视图等高级控件的实现细节;②理解适配器的作用及其不同类型的使用场景;③学会使用Fragment优化应用界面布局,提高用户体验;④通过具体案例(如记账本),将所学控件应用于实际开发中。 阅读建议:本文档内容详实,涵盖多种高级控件的理论知识与实践技巧。建议读者在学习过程中结合官方文档或相关资料进行对比研究,同时动手实践,以便更好地理解和掌握这些控件的应用。
内容概要:本文档是2015年全国大学生电子设计竞赛关于数字频率计(F题)的试题说明。竞赛对参赛队伍有严格规定,包括竞赛时间、队伍人数、身份验证等。数字频率计的任务是设计并制作一台闸门时间为1秒的数字频率计。基本要求包括频率和周期测量、时间间隔测量,以及数据刷新时间和显示单位。发挥部分则扩展了频率测量范围、降低了最小有效值电压,并增加了脉冲信号占空比测量功能。评分标准详细列出,涵盖设计报告、基本要求和发挥部分,总分为120分。; 适合人群:参加全国大学生电子设计竞赛的学生团队,特别是选择本科组题目的参赛者。; 使用场景及目标:①帮助参赛学生明确数字频率计的设计与制作要求;②为参赛者提供详细的评分标准,以便他们有针对性地准备竞赛;③确保参赛者了解竞赛规则,避免违规行为。; 其他说明:文档还强调了竞赛纪律,如不得中途更换队员、不得与他人交流等,并明确了提交设计报告、实物及《登记表》的时间和方式。
内容概要:本文系统解析了四六级准考证号的重要性、组成规则以及找回准考证号的方法。首先介绍了准考证号作为唯一身份标识、查分必备信息及补办证明依据的作用,并解析了15位准考证号的具体构成。接着详细阐述了通过官方客服推算准考证号的流程,包括不同客服渠道的选择、联系前的准备工作及特殊案例处理方法。然后提供了四种自主推算准考证号的技巧:考场规律推算法、报名信息回溯法、文档搜索法和代码组合法。此外,提出了预防准考证丢失的三大策略,包括多重备份、智能提醒设置和学校协作机制。最后强调了安全注意事项,针对常见问题进行了权威解答,并给出了紧急情况处理方案。; 适合人群:即将参加或已经参加四六级考试的考生,尤其是那些可能面临准考证号丢失问题的学生。; 使用场景及目标:①帮助考生在成绩公布时快速有效地找回准考证号;②指导考生如何预防准考证号丢失并养成良好的备份习惯;③提高考生对准考证号重要性的认识,避免因准考证号问题影响成绩查询。; 阅读建议:本文内容详实,建议考生仔细阅读并按照文中提供的方法进行实践操作,同时关注官方渠道和服务,确保在需要时能够顺利找回准考证号。
毕业论文-zero_art_cms_v1.0.1-整站商业源码.zip
毕业论文-深蓝AI智能名片小程序1.7.1-整站商业源码.zip
交换机实验 - ENSP.doc
内容概要:本文介绍了电机控制器谐波电流注入技术在汽车NVH(噪声、振动与声振粗糙度)优化中的应用。谐波电流注入技术通过向电机注入特定谐波电流,抵消转矩谐波,使电机运行更加稳定和平滑,从而显著降低汽车运行时的噪声。文中还提供了一个简化的伪代码示例,解释了谐波电流注入的基本原理和技术细节。最后,文章提到该技术已在吉利的一个项目中成功应用,有效提升了车辆的NVH性能,改善了驾乘体验。 适合人群:汽车工程技术人员、NVH研究专家以及对汽车电气系统感兴趣的读者。 使用场景及目标:适用于希望深入了解电机控制器谐波电流注入技术的工作原理及其在汽车NVH优化中的应用的人群。目标是掌握该技术的具体实施方法,并了解其在实际项目中的效果。 其他说明:随着汽车行业对NVH性能的要求日益提高,谐波电流注入技术将在未来更多的汽车项目中得到广泛应用,为用户提供更安静舒适的驾驶环境。
灭火器识别数据集,识别率99.5%,分别率640x640,127张训练图,支持darknet格式的标注框
# 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
汽车轮胎识别数据集,837张训练图 识别率99.5%,支持yolov7格式的标注
毕业论文-奇鹿一物一码返红包V1.0.5 安装更新一体版-整站商业源码.zip
EasyAi-仅UI.......
基于STM32蓝牙小车的源码+文档说明(毕业设计),个人经导师指导并认可通过的高分设计项目,评审分99分,代码完整确保可以运行,小白也可以亲自搞定,主要针对计算机相关专业的正在做毕业设计的学生和需要项目实战练习的学习者,可作为毕业设计、课程设计、期末大作业,代码资料完整,下载可用。 基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32蓝牙小车的源码+文档说明(毕业设计)基于STM32
# 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;