功能描述:类似于日程表,列出一周内某个时间段的日程。如:本人9:00到10:00有课,那么在课表中9:00-10:00这个时间段呈现蓝色格子(td),当鼠标移到蓝色格子上方时呈现具体事件。如图:
代码实现(MVC3.0):
后台Action:
View Code
1 public ActionResult TeacherSchedule()
2 {
3 DateTime dt = DateTime.Now;
4
5 var customer = _workContext.CurrentCustomer;
6 int id = customer.Id;
7 var TeacherId = from t1 in WTDB.WT_Teacher
8 where t1.CustomerID == id
9 select t1.TeacherID;
10 if (TeacherId.Count() > 0 )
11 {
12 var UserSchedule = from varSchedule in WTDB.View_Schedule
13 where varSchedule.TeacherID == TeacherId.First() && Convert.ToDateTime(varSchedule.StartTime).Date >= DateTime.Now.Date
14 select varSchedule;// 个人课表信息
15 foreach (var TimeList in UserSchedule)
16 {
17 for (int n = 0 ; n <= 7 ; n++)
18 {
19 if (DateTime.Now.AddDays(n).Date == ((DateTime)TimeList.StartTime).Date)
20 {
21 for (int i = 0 ; i <= 23 ; i++)
22 {
23 if (((DateTime)TimeList.StartTime).Hour == i)
24 {
25 Random ra = new Random();
26
27 ViewData[n.ToString() + i.ToString()] = n.ToString() + i.ToString();// 坐标
28 ViewData[" start " + n.ToString() + i.ToString()] = Convert.ToDouble(((DateTime)TimeList.StartTime).Minute) / Convert.ToDouble(60 );// 起始点
29 ViewData[" end " + n.ToString() + i.ToString()] = Convert.ToDouble(((DateTime)TimeList.StartTime).AddMinutes((double )TimeList.TimeLength).Minute / Convert.ToDouble(60 ));// 结束点
30 ViewData[" jg " + n.ToString() + i.ToString()] = (int )TimeList.TimeLength / 60 ;// 跨时间
31
32
33
34
35
36 }
37
38
39 }
40 }
41 }
42 }
43
44
45 return View(UserSchedule);
46 }
47 else
48 {
49 return View();
50
51 }
52 }
以上代码只作查询处理,数据库字段StartTime表示日程的起始时间(datetime),TimeLength:时长(课程上多久/分钟)
1 ViewData[n.ToString() + i.ToString()] = n.ToString() + i.ToString();// 坐标
2 ViewData[" start " + n.ToString() + i.ToString()] = Convert.ToDouble(((DateTime)TimeList.StartTime).Minute) / Convert.ToDouble(60 );// 起始点
3 ViewData[" end " + n.ToString() + i.ToString()] = Convert.ToDouble(((DateTime)TimeList.StartTime).AddMinutes((double )TimeList.TimeLength).Minute / Convert.ToDouble(60 ));// 结束点
4 iewData[" jg " + n.ToString() + i.ToString()] = (int )TimeList.TimeLength / 60 ;// 跨时间
第一行记录开始坐标,第二行记录开始的具体的段,第三行记录结束的段,第四行记录跨的实践段。
下面是主要的前台代码:
首先循环将后台数据添加,添加方法以各自情况来定,本人用的是MVC3.0,就不在这列出来了,总之有多少组数据就得执行下面的PageLoad()方法多少次。
1 function PageLoad(Coordinate, Start, End, TimeLength) {// Coordinate起点, Start起点的具体位置, End终点的具体位置, TimeLength跨越的单元格
2
3 if (Start != 0) {
4 TimeLength++;
5
6 }
7
8
9 var CoordinateStr = "td" + Coordinate; // 坐标ID
10
11
12
13 var vartd = document.getElementById(CoordinateStr);// 取td
14 vartd.style.verticalAlign = "bottom"; // 设置从下开始
15
16 var StratStrId = "#"+CoordinateStr + " span";
17 $(StratStrId).css("background-color", "blue"); // 修改颜色
18
19 if (Start != 0) {
20 var StartHeight = 30 * Start;
21 $(StratStrId).css("height", StartHeight.toString()); // 修改高度
22 }
23
24 for (var i = 0; i < TimeLength; i++) {
25 var frist = Coordinate.substring(0, 1);
26 var last = Coordinate.substring(1, Coordinate.length);
27 var CoordinateStrEND = "td" + frist + (last * 1 + i).toString();
28
29 var EndStrId = "#" + CoordinateStrEND + " span";
30 $(EndStrId).css("background-color", "blue"); // 修改颜色
31
32 if ((i + 1) == TimeLength) {
33 document.getElementById(CoordinateStrEND).style.verticalAlign = "top";
34
35 var StartHeight = 30;
36 if (End != 0) {
37 StartHeight = 30 * End;
38
39
40 } $(EndStrId).css("height", StartHeight.toString()); // 修改高度
41
42 }
43
44 }
45
46
47 }
表格设计如下:
View Code
< tr >
< td > 01:00td >
< td id ="td01" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td11" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td21" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td31" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td41" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td51" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td61" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
tr >
< tr >
< td > 02:00td >
< td id ="td02" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td12" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td22" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td32" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td42" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td52" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
< td id ="td62" class ="tip" >< span style ="background-color:White" > span >< a href ="#" >< h1 class ="box_ts" > h1 > a > td >
tr >
关键在于每一个的ID比如说“td01”代表的就是今天的1点那个时间段。0表示今天,1表示hour。“td110”表示的就是第二天的10点,以此类推“td301”表示的就是第四天的一点。我是根据查到的时间做处理来找到相应的,并将相应的 下的背景颜色设置为blue。
上面所注释的修改高度所指的就是具体的开始时间和结束时间所占这个时间段的百分比来确定的高度,已达到显示具体颜色块的效果。
能够显示时间块以后,接下来要做就的就是当鼠标移动到
上时AJAX显示当前时间段的日程。
前台代码:
1 // 异步查询课程名字 老师名字
2 $(document).ready(function () {
3 $(".tip").mouseover(function () {
4 var Id = "#" + this .id + " span";
5 var cl = $(Id).css("background-color");
6 if (cl != "white") {//判断当前时间块是否有日程
7
8 var DisplayID = "#" + this .id.toString() + " a h1";
9 $.get("http://www.cnblogs.com/Schedule/GetCourseName", { TdId: this .id, time: new Date().getTime() }, function (data) {
10 if (data != "") {
11
12 $(DisplayID).html(data);
13 $(DisplayID).fadeIn('slow');
14
15
16 }
17
18 });
19 }
后台Action
1 public string GetCourseName(string TdId)
2 {
3 var customer = _workContext.CurrentCustomer;
4 int id = Tchid();
5 string strdate = TdId.Substring(2 , 1 );// 日期
6 string strhour = TdId.Substring(3 );// 小时
7 string MessInfo = "" ;
8 try
9 {
10 int date = Convert.ToInt32(strdate);
11 int hour = Convert.ToInt32(strhour);
12 var TeachTime = from s1 in WTDB.View_Schedule
13 where s1.TeacherID == id && (Convert.ToDateTime(s1.StartTime).Hour <= hour && hour <= Convert.ToDateTime(s1.StartTime).AddMinutes((double )s1.TimeLength).Hour) && Convert.ToDateTime(s1.StartTime).Date == DateTime.Now.AddDays(date).Date// 如果日期相等且小时相等
14 select new { s1.TeacherID, s1.StartTime, s1.Name };
15 if (TeachTime.Count() > 0 )
16 {
17 var TeacherName = from s2 in WTDB.WT_Teacher
18 where s2.TeacherID == TeachTime.First().TeacherID
19 select s2.CustomerID;
20 if (TeacherName.Count() > 0 )
21 {
22 var Name = from s3 in WTDB.Customer
23 where s3.Id == TeacherName.First()
24 select s3.Username;
25 string CourseName = TeachTime.First().Name;
26 if (TeachTime.First().Name.Length > 5 )
27 {
28 CourseName = TeachTime.First().Name.Substring(0 , 5 ) + " ... " ;
29 }
30 MessInfo =CourseName;
31 }
32 }
33
34
35
36 }
37 catch
38 {
39 ;
40
41 }
42 return MessInfo;
43
44
45 }
后台判断当前
的ID,做字符串处理提取日期和小时,然后根据时间在数据库查询出日程,最后返回到前台。
有问题可以给我留言,欢迎指教。 谢谢
转载于:https://www.cnblogs.com/lvrocky/archive/2012/11/26/2789325.html
你可能感兴趣的:(脚本实现课表展示)
JavaScript语言基础教程笔记
fanxbl957
各类语言和技术总结笔记 javascript 笔记 开发语言
JavaScript语言基础教程笔记下面是一个全面的JavaScript教程,适合初学者和有一定编程经验的人士。JavaScript是一种广泛用于网页开发的脚本语言,支持事件驱动、函数式以及基于原型的编程风格。要想深入了解请参考:javascript脚本语言教程。JavaScript入门教程1.简介定义:JavaScript(简称JS)是一种高级编程语言,主要用于网页浏览器中实现复杂的交互功能。用
Vue3+Echarts 绘制省会地图
OPQ迷路的羔羊
echarts 前端 javascript vue.js
Vue3+Echarts绘制省会地图需求:绘制XX省会地图(背景颜色,边框颜色都可自定义,有相应代码注释)鼠标点击XX市区,区域变红色,再次点击,恢复默认蓝色鼠标移入XX市区,区域变橘色,鼠标移开,恢复默认蓝色效果图如下:在这里插入图片描述实现:1.前往https://datav.aliyun.com/portal/school/atlas/area_selector2.输入具体省份,然后复制JS
JavaScript系列(31)--装饰器详解
陳沉辰陈
JavaScript javascript 开发语言 ecmascript
JavaScript装饰器详解今天,让我们深入探讨JavaScript的装饰器(Decorators)。装饰器是一种用于修改类和类成员的强大语言特性,它让我们能够以声明式的方式增强类的功能。装饰器基础概念小知识:装饰器是一种特殊的声明,可以被附加到类声明、方法、访问器、属性或参数上。装饰器使用@expression的形式,其中expression必须是一个函数,它会在运行时被调用。基本装饰器实现/
vue3 + echarts5.4.3 实现3D省份地图【动态icon】
和生活比个Y
3d
vue3+echarts5.4.3实现3D省份地图【动态icon】vue3项目+echarts5.4.3实现效果:1.下载echarts插件2.按需引入echarts插件3.复制省份json文件1.[查找省份/全国的json文件的地址:](https://datav.aliyun.com/portal/school/atlas/area_selector)2.当前页面中引入刚才复制的json文件4
【Cursor】揭秘Cursor:如何免费无限使用这款AI编程神器?
ChatGPT-千鑫
人工智能 AI编程
在当今科技飞速发展的时代,人工智能编程工具层出不穷,其中Cursor凭借其卓越的功能和用户友好的体验,迅速在国际市场上引发了广泛关注。最近,该公司成功获得了OpenAI的6000万美元投资,进一步验证了其潜力和市场价值。那么,Cursor究竟具备怎样的强大能力?又该如何实现免费无限制使用呢?本文将为您揭开Cursor的神秘面纱,并提供详细的使用指南,助您轻松上手!Cursor的强大功能Cursor
【人工智能】人工智能的10大算法详解(优缺点+实际案例)
ChatGPT-千鑫
人工智能 人工智能 算法 gpt-3 AI编程 gpt codemoss能用AI
人工智能(AI)是现代科技的重要领域,其中的算法是实现智能的核心。本文将介绍10种常见的人工智能算法,包括它们的原理、训练方法、优缺点及适用场景。1.线性回归(LinearRegression)模型原理线性回归用于建立自变量(特征)与因变量(目标)之间的线性关系。其目标是寻找最佳拟合直线,使得预测值与实际值之间的误差最小化。模型训练通过最小二乘法来最小化预测值与真实值之间的误差,得到线性回归方程的
基于物联网的智能垃圾桶系统设计与实现-设计说明书
黄油味椭圆
基础版资料 物联网
设计摘要:本设计是基于物联网的智能垃圾桶,旨在有效解决垃圾分类与垃圾清理的问题。该智能垃圾桶采用了多种传感器模块,如压力传感器模块、GPS定位模块、人体红外模块以及超声波测距模块等,以实现对垃圾桶内垃圾重量、位置、高度以及人体通过情况的实时监测和数据采集。同时,该智能垃圾桶还配备了电机模块,可以模拟垃圾桶的开盖和关闭,当垃圾桶装满时不会自动打开,而是当有人靠近时才会自动开启,并通过语音播报告知人们
如何利用OpenCV和yolo实现人脸检测
音视频牛哥
大牛直播SDK opencv 人工智能 计算机视觉 yolo11 人脸检测 opencv人脸检测 yolo人脸检测
在之前的blog里面,我们有介绍OpenCV和yolo的区别,本文就人脸检测为例,分别介绍下OpenCV和yolo的实现方式。OpenCV实现人脸检测一、安装OpenCV首先确保你已经安装了OpenCV库。可以通过以下方式安装:使用包管理工具安装:在Python环境中,可以使用pip安装:pipinstallopencv-python。二、加载预训练的人脸检测模型OpenCV提供了基于Haar特征
mermaid
Bananices
markdown markdown javascript 流程图
使用Mermaid在博客中添加流程图什么是Mermaid?Mermaid是一个基于Javascript的图表绘制工具,通过解析类Markdown的文本语法来实现图表的创建和动态修改。Mermaid诞生的主要目的是让文档的更新能够及时跟上开发进度。流程图在mermaid中可以使用graph和flowchart来绘制流程图,但使用flowchart绘制流程图时候性能更高,详情FlowchartsSyn
matlab代码实现了一个关节型六轴机械臂的仿真
max500600
MATLAB 算法 开发语言 matlab 算法 人工智能
%%基于MATLAB的关节型六轴机械臂仿真%%参数定义clear;closeall;clc;%角度转换angle=pi/180;%转化为角度制%D-H参数表theta1=0;D1=0.4;A1=0.025;alpha1=pi/2;offset1=0;theta2=pi/2;D2=0;A2=0.56;alpha2=0;offset2=0;theta3=0;D3=0;A3=0.035;alpha3=p
python 代码实现了一个条件生成对抗网络(Conditional Generative Adversarial Network,CGAN),用于生成与给定的理化值相关的光谱数据
max500600
算法 开发语言 python 生成对抗网络 开发语言
importtensorflowastfimportnumpyasnpimportpandasaspdimportosimportmatplotlib.pyplotaspltfromsklearn.model_selectionimporttrain_test_splitfromtensorflow.keras.layersimportAdd,BatchNormalizationos.enviro
C语言进阶——通讯录模拟实现
_麦麦_
C语言进阶 c语言 算法 开发语言
个人主页:_麦麦_今日名言:只有走在路上,才能摆脱局限,摆脱执着,让所有的选择,探寻,猜测,想象都生机勃勃。——余秋雨《文化苦旅》目录一、前言二、正文1.大体框架2.界面显示3.创建通讯录4.初始化通讯录5.增加联系人6.显示联系人7.删除联系人8.查找联系人9.修改联系人10.排序联系人三、结语一、前言在上一章的结构体的学习中,相信小伙伴们或多或少都有所收获,但是有的小伙伴可能会问,结构体到底能
单片机实物成品-012 酒精监测
学个单片机
单片机实物成品 单片机 嵌入式硬件 课程设计
项目介绍本项目以软硬件结合的方式,选择C语言作为程序硬件编码语言,以STM32单片机作为核心控制板,在数据传输节点上连接酒精传感器对酒精浓度进行实时检测,且对高浓度酒精采取强制干预和紧急预警,并将数据通过蓝牙无线通信技术传输至上位机,实现酒精浓度的24h远程监控,达到全自动的智能化管理目标。经过不断调试与验证,该系统成功通过测试,可以减少人工干预,提高准确性,有效保障环境安全,优化产品质量,推动科
Java实现简易的学生管理系统
杰仔正在努力
Java java idea
Java实现简易的学生管理系统文章目录Java实现简易的学生管理系统前言一、如何实现二、实现的方法(示意图)三、开始实现3.1定义类3.2定义主界面3.3实现添加功能3.4实现查询功能3.5实现删除功能3.6实现修改功能四、完整代码五、总结前言该项目主要是作为新手快速上手实操,围绕面向对象所学知识实现学生管理系统的增删改查功能,所使用的知识点主要是面向对象的三大特征使用的方法、判断语句、构造方法等
基于YOLOv8深度学习的人脸年龄检测识别系统
2025年数学建模美赛
YOLO 深度学习 人工智能 ui 数据挖掘 分类
引言随着人工智能和计算机视觉的飞速发展,人脸分析技术在年龄检测领域取得了显著进展。人脸年龄检测系统在安全监控、广告推荐、健康监测等领域有广泛应用。本文将基于YOLOv8目标检测模型和UI界面,开发一个完整的人脸年龄检测识别系统。我们将详细介绍项目的技术实现、数据集构建、模型训练以及UI设计,并附上完整代码。目录引言系统架构设计数据准备公开人脸年龄数据集数据标注格式数据目录结构模型训练YOLOv8环
基于深度学习的人脸表情识别系统(YOLOv10+UI界面+数据集)
2025年数学建模美赛
深度学习 YOLO ui 计算机视觉 人工智能 目标跟踪
在本篇博客中,我们将详细介绍如何构建一个基于深度学习的人脸表情识别系统。该系统主要由三部分组成:YOLOv10(深度学习模型)进行表情识别、UI界面展示识别结果以及数据集的准备和训练过程。我们将从系统架构、数据准备、模型训练、UI设计等多个方面进行全面讲解,最终实现一个能够实时识别并展示人脸表情的系统。目录1.系统架构2.数据集准备2.1FER2013数据集2.2数据预处理3.YOLOv10模型概
基于深度学习的人脸表情识别系统:YOLOv8 + UI界面 + 数据集完整实现
2025年数学建模美赛
深度学习 YOLO ui 人工智能 代码
1.引言近年来,人脸表情识别在情感计算、智能人机交互、心理学研究等领域有着广泛的应用。深度学习的快速发展,使得高效、准确的人脸表情识别成为可能。通过利用卷积神经网络(CNN)和目标检测技术,可以实现实时、精准的人脸表情识别。本文将基于YOLOv8构建一个完整的人脸表情识别系统。系统集成了数据集准备、YOLOv8模型训练、实时推理以及基于PyQt5的图形用户界面(UI)。通过本文,你将学习如何实现一
分频器code
一条九漏鱼
verilog开发实战指南 fpga开发
理论学习数字电路中时钟占有非常重要的地位。时间的计算都依靠时钟信号作为基本单元。一般而言,一块板子只有一个晶振,即只有一种频率的时钟,但是数字系统中,经常需要对基准时钟进行不同倍数的分频,进而得到各模块所需的频率。若想得到比系统时钟更慢的时钟,可以将基准时钟进行分频。若想得到比系统时钟更快的时钟,可以将基准时钟进行倍频。不管是分频还是倍频,都通过PLL实现或者用verilog描述实现。我们用ver
VSLAM技术实现机器人在不同场景下的精准导航、避障
向阳而生|X
自主导航 python 计算机视觉
链接:https://developer.orbbec.com.cn/forum_plate_module_details.html?id=998
智能裂变引流系统:通过用户验证与分享激励获取目标手机号
威哥说编程
c#
在现代数字营销中,快速增长用户并引导其主动分享,已经成为许多企业提高转化率和扩大市场份额的核心策略。尤其是在一些特定行业,如医疗、金融、电子商务等领域,精准获取用户信息(尤其是手机号)至关重要。这些信息是后续营销、数据分析、精准推送等活动的基础。而通过裂变营销,我们可以利用现有用户的社交网络,快速获取更多高质量的目标用户。本文将介绍如何设计和实现一个智能裂变引流系统,通过用户信息验证、手机号查询、
使用spring boot写一个学生管理系统
db_hkq_2039
spring boot 后端 java
目录前言二、博客地址三、实现步骤3.1创建SpringBoot项目3.2连接数据库3.3代码层级3.3.1model层3.3.2Repository层3.3.3service层3.3.4控制层controller3.3.5视图层3.3.6BootStrap4.1登录4.2增4.3删4.4查4.5改4.6分页总结前言学生管理系统是一种常见的应用程序,它可以用于管理学生、学院、班级等信息,是许多企业和
【Astro】如何在Astro上借助Cloudflare D1和Drizzle ORM打造全栈应用?一文带你搞定!
eclipsercp
毕业设计 开发环境搭建 开发语言 全栈
如何在Astro上借助CloudflareD1和DrizzleORM打造全栈应用?一文带你搞定!文章目录如何在Astro上借助CloudflareD1和DrizzleORM打造全栈应用?一文带你搞定!前言一、Astro简介与优势二、CloudflareD1简介三、DrizzleORM简介四、在Astro上实现全栈开发的步骤1.安装Astro2.添加Cloudflare适配器3.部署到Cloudfl
2025.1.17—misc—一、黑客帝国 压缩包加密|图片文件格式问题
然然阿然然
“破晓”计划第一阶段训练 安全 网络安全 misc
题目来源:buuctf黑客帝国目录一、解题思路step1:下载文件,查看情况step2:利用脚本转换数据step3:利用ARCHPR破解压缩包密码step4:解压后查看新文件一、解题思路step1:下载文件,查看情况下载附件,发现一堆数据有字母有数字,很像十六进制数据,利用python脚本将这些十六进制数据转换为二进制写入文件。step2:利用脚本转换数据importbinasciihex_dat
搭建设计一个校园交友系统源码的过程,售后一对一+圈子全开源码教程+全面搭建指南
前端小程序php
搭建设计一个校园交友系统源码是一个复杂但有趣的过程,以下是一个全面指南,旨在帮助你从头开始搭建一个功能齐全、安全可靠的校园交友系统。一、明确目标与需求目标用户:明确你的目标用户群体,如大学生、研究生等,了解他们的交友需求和偏好。功能需求:根据目标用户,列出所需功能,如用户注册与登录、个人资料展示、匹配推荐、聊天功能、动态发布等。二、技术选型后端技术:可以选择PHP等成熟的后端开发语言。PHP结合T
通义灵码 2.0 全新升级,阿里云正式推出繁星计划
云原生
通义灵码AI程序员的出现,正在颠覆软件工程师的工作方式,从AI辅助编程走向人与AI协同编程。不仅能让工程师专注于更具创新的研发任务,更将实现以前无法想象的创新落地。在今天上午通义灵码2.0发布会上,阿里云云原生应用平台负责人丁宇宣布,通义灵码2.0全新升级,AI程序员重磅发布。通义灵码AI程序员引入了多文件代码修改能力,能对工程内多个代码文件同时进行修改,开发者可以清楚地看到多个文件的生成过程及状
《鸿蒙Next旅游应用:人工智能赋能个性化与智能导览新体验》
人工智能深度学习
随着鸿蒙Next的推出,旅游应用迎来了全新的发展机遇,借助人工智能技术能为用户带来更出色的个性化推荐和智能导览服务。鸿蒙Next与人工智能融合优势鸿蒙Next拥有强大的分布式能力和原生智能体验。其能打破设备界限,实现多设备协同,让用户在手机、平板、智能手表等设备上无缝使用旅游应用。同时,依托华为强大的AI技术和自研的“盘古”大模型,为旅游应用提供了强大的智能支持。个性化推荐实现方式用户数据收集与分
基于单片机的分布式智能输液系统设计
01单片机设计
单片机 单片机 嵌入式硬件
**单片机设计介绍,基于单片机的分布式智能输液系统设计文章目录一概要二、功能设计设计思路三、软件设计原理图五、程序六、文章目录一概要 基于单片机的分布式智能输液系统设计概要如下:一、系统概述基于单片机的分布式智能输液系统是一种集成化、智能化的医疗设备,旨在实现对多个输液过程的实时监测、控制和管理。该系统通过单片机作为核心控制单元,结合传感器技术、无线通信技术和人机交互界面,实现输液数据的采集、处
shell脚本练习
肥咩咩的大兔子
linux 服务器 运维
1、shell脚本写出检测/tmp/size.log文件如果存在显示它的内容,不存在则创建一个文件将创建时间写入。 if[-f/tmp/size.log];then cat/tmp/size.log else statexist.sh|awk-F:"NR==5">/tmp/size.log fi 2、写一个shel1脚本,实现批量添加20个用户,用户名为user01-20,密码为user后面跟5
《解锁鸿蒙系统AI与第三方应用集成的无限可能》
人工智能深度学习
在当今科技飞速发展的时代,鸿蒙系统与人工智能技术的深度融合为应用开发带来了前所未有的机遇和挑战。如何让鸿蒙系统中的人工智能服务与第三方应用实现更好的集成,成为了开发者们关注的焦点。利用鸿蒙系统内置的人工智能服务鸿蒙系统提供了丰富的人工智能服务,如语音助手、视觉识别、自然语言处理等。开发者可以直接调用这些服务,无需从头开始研发。例如,在开发一款阅读类应用时,可以调用自然语言处理服务实现智能朗读功能,
Ubuntu服务器提示:检测到存在恶意文件,补救思路
笑醉踏歌行
系统运维 ubuntu linux 运维
1.确定文件类型可以使用file命令来检查该文件的类型,这有助于判断它是否真的是一个恶意文件file/path/to/the/file2.检查文件内容使用strings命令查看文件内容,看是否有可疑的命令或脚本:strings/path/to/the/file3.扫描系统使用ClamAV这样的开源杀毒软件,来扫描可疑目录,来清除是否还有剩余的木马或病毒文件sudoaptupdatesudoapti
java观察者模式
3213213333332132
java 设计模式 游戏 观察者模式
观察者模式——顾名思义,就是一个对象观察另一个对象,当被观察的对象发生变化时,观察者也会跟着变化。
在日常中,我们配java环境变量时,设置一个JAVAHOME变量,这就是被观察者,使用了JAVAHOME变量的对象都是观察者,一旦JAVAHOME的路径改动,其他的也会跟着改动。
这样的例子很多,我想用小时候玩的老鹰捉小鸡游戏来简单的描绘观察者模式。
老鹰会变成观察者,母鸡和小鸡是
TFS RESTful API 模拟上传测试
ronin47
TFS RESTful API 模拟上传测试。
细节参看这里:https://github.com/alibaba/nginx-tfs/blob/master/TFS_RESTful_API.markdown
模拟POST上传一个图片:
curl --data-binary @/opt/tfs.png http
PHP常用设计模式单例, 工厂, 观察者, 责任链, 装饰, 策略,适配,桥接模式
dcj3sjt126com
设计模式 PHP
// 多态, 在JAVA中是这样用的, 其实在PHP当中可以自然消除, 因为参数是动态的, 你传什么过来都可以, 不限制类型, 直接调用类的方法
abstract class Tiger {
public abstract function climb();
}
class XTiger extends Tiger {
public function climb()
hibernate
171815164
Hibernate
main,save
Configuration conf =new Configuration().configure();
SessionFactory sf=conf.buildSessionFactory();
Session sess=sf.openSession();
Transaction tx=sess.beginTransaction();
News a=new
Ant实例分析
g21121
ant
下面是一个Ant构建文件的实例,通过这个实例我们可以很清楚的理顺构建一个项目的顺序及依赖关系,从而编写出更加合理的构建文件。
下面是build.xml的代码:
<?xml version="1
[简单]工作记录_接口返回405原因
53873039oycg
工作
最近调接口时候一直报错,错误信息是:
responseCode:405
responseMsg:Method Not Allowed
接口请求方式Post.
关于java.lang.ClassNotFoundException 和 java.lang.NoClassDefFoundError 的区别
程序员是怎么炼成的
真正完成类的加载工作是通过调用 defineClass来实现的;
而启动类的加载过程是通过调用 loadClass来实现的;
就是类加载器分为加载和定义
protected Class<?> findClass(String name) throws ClassNotFoundExcept
JDBC学习笔记-JDBC详细的操作流程
aijuans
jdbc
所有的JDBC应用程序都具有下面的基本流程: 1、加载数据库驱动并建立到数据库的连接。 2、执行SQL语句。 3、处理结果。 4、从数据库断开连接释放资源。
下面我们就来仔细看一看每一个步骤:
其实按照上面所说每个阶段都可得单独拿出来写成一个独立的类方法文件。共别的应用来调用。
1、加载数据库驱动并建立到数据库的连接:
Html代码
St
rome创建rss
antonyup_2006
tomcat cms xml struts Opera
引用
1.RSS标准
RSS标准比较混乱,主要有以下3个系列
RSS 0.9x / 2.0 : RSS技术诞生于1999年的网景公司(Netscape),其发布了一个0.9版本的规范。2001年,RSS技术标准的发展工作被Userland Software公司的戴夫 温那(Dave Winer)所接手。陆续发布了0.9x的系列版本。当W3C小组发布RSS 1.0后,Dave W
html表格和表单基础
百合不是茶
html 表格 表单 meta 锚点
第一次用html来写东西,感觉压力山大,每次看见别人发的都是比较牛逼的 再看看自己什么都还不会,
html是一种标记语言,其实很简单都是固定的格式
_----------------------------------------表格和表单
表格是html的重要组成部分,表格用在body里面的
主要用法如下;
<table>
&
ibatis如何传入完整的sql语句
bijian1013
java sql ibatis
ibatis如何传入完整的sql语句?进一步说,String str ="select * from test_table",我想把str传入ibatis中执行,是传递整条sql语句。
解决办法:
<
精通Oracle10编程SQL(14)开发动态SQL
bijian1013
oracle 数据库 plsql
/*
*开发动态SQL
*/
--使用EXECUTE IMMEDIATE处理DDL操作
CREATE OR REPLACE PROCEDURE drop_table(table_name varchar2)
is
sql_statement varchar2(100);
begin
sql_statement:='DROP TABLE '||table_name;
【Linux命令】Linux工作中常用命令
bit1129
linux命令
不断的总结工作中常用的Linux命令
1.查看端口被哪个进程占用
通过这个命令可以得到占用8085端口的进程号,然后通过ps -ef|grep 进程号得到进程的详细信息
netstat -anp | grep 8085
察看进程ID对应的进程占用的端口号
netstat -anp | grep 进程ID
&
优秀网站和文档收集
白糖_
网站
集成 Flex, Spring, Hibernate 构建应用程序
性能测试工具-JMeter
Hmtl5-IOCN网站
Oracle精简版教程网站
鸟哥的linux私房菜
Jetty中文文档
50个jquery必备代码片段
swfobject.js检测flash版本号工具
angular.extend
boyitech
AngularJS angular.extend AngularJS API
angular.extend 复制src对象中的属性去dst对象中. 支持多个src对象. 如果你不想改变一个对象,你可以把dst设为空对象{}: var object = angular.extend({}, object1, object2). 注意: angular.extend不支持递归复制. 使用方法: angular.extend(dst, src); 参数:
java-谷歌面试题-设计方便提取中数的数据结构
bylijinnan
java
网上找了一下这道题的解答,但都是提供思路,没有提供具体实现。其中使用大小堆这个思路看似简单,但实现起来要考虑很多。
以下分别用排序数组和大小堆来实现。
使用大小堆:
import java.util.Arrays;
public class MedianInHeap {
/**
* 题目:设计方便提取中数的数据结构
* 设计一个数据结构,其中包含两个函数,1.插
ajaxFileUpload 针对 ie jquery 1.7+不能使用问题修复版本
Chen.H
ajaxFileUpload ie6 ie7 ie8 ie9
jQuery.extend({
handleError: function( s, xhr, status, e ) {
// If a local callback was specified, fire it
if ( s.error ) {
s.error.call( s.context || s, xhr, status, e );
}
[机器人制造原则]机器人的电池和存储器必须可以替换
comsci
制造
机器人的身体随时随地可能被外来力量所破坏,但是如果机器人的存储器和电池可以更换,那么这个机器人的思维和记忆力就可以保存下来,即使身体受到伤害,在把存储器取下来安装到一个新的身体上之后,原有的性格和能力都可以继续维持.....
另外,如果一
Oracle Multitable INSERT 的用法
daizj
oracle
转载Oracle笔记-Multitable INSERT 的用法
http://blog.chinaunix.net/uid-8504518-id-3310531.html
一、Insert基础用法
语法:
Insert Into 表名 (字段1,字段2,字段3...)
Values (值1,
专访黑客历史学家George Dyson
datamachine
on
20世纪最具威力的两项发明——核弹和计算机出自同一时代、同一群年青人。可是,与大名鼎鼎的曼哈顿计划(第二次世界大战中美国原子弹研究计划)相 比,计算机的起源显得默默无闻。出身计算机世家的历史学家George Dyson在其新书《图灵大教堂》(Turing’s Cathedral)中讲述了阿兰·图灵、约翰·冯·诺依曼等一帮子天才小子创造计算机及预见计算机未来
小学6年级英语单词背诵第一课
dcj3sjt126com
english word
always 总是
rice 水稻,米饭
before 在...之前
live 生活,居住
usual 通常的
early 早的
begin 开始
month 月份
year 年
last 最后的
east 东方的
high 高的
far 远的
window 窗户
world 世界
than 比...更
在线IT教育和在线IT高端教育
dcj3sjt126com
教育
codecademy
http://www.codecademy.com codeschool
https://www.codeschool.com teamtreehouse
http://teamtreehouse.com lynda
http://www.lynda.com/ Coursera
https://www.coursera.
Struts2 xml校验框架所定义的校验文件
蕃薯耀
Struts2 xml校验 Struts2 xml校验框架 Struts2校验
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2015年7月11日 15:54:59 星期六
http://fa
mac下安装rar和unrar命令
hanqunfeng
mac
1.下载:http://www.rarlab.com/download.htm 选择
RAR 5.21 for Mac OS X 2.解压下载后的文件 tar -zxvf rarosx-5.2.1.tar 3.cd rar sudo install -c -o $USER unrar /bin #输入当前用户登录密码 sudo install -c -o $USER rar
三种将list转换为map的方法
jackyrong
list
在本文中,介绍三种将list转换为map的方法:
1) 传统方法
假设有某个类如下
class Movie {
private Integer rank;
private String description;
public Movie(Integer rank, String des
年轻程序员需要学习的5大经验
lampcy
工作 PHP 程序员
在过去的7年半时间里,我带过的软件实习生超过一打,也看到过数以百计的学生和毕业生的档案。我发现很多事情他们都需要学习。或许你会说,我说的不就是某种特定的技术、算法、数学,或者其他特定形式的知识吗?没错,这的确是需要学习的,但却并不是最重要的事情。他们需要学习的最重要的东西是“自我规范”。这些规范就是:尽可能地写出最简洁的代码;如果代码后期会因为改动而变得凌乱不堪就得重构;尽量删除没用的代码,并添加
评“女孩遭野蛮引产致终身不育 60万赔偿款1分未得”医腐深入骨髓
nannan408
先来看南方网的一则报道:
再正常不过的结婚、生子,对于29岁的郑畅来说,却是一个永远也无法实现的梦想。从2010年到2015年,从24岁到29岁,一张张新旧不一的诊断书记录了她病情的同时,也清晰地记下了她人生的悲哀。
粗暴手术让人发寒
2010年7月,在酒店做服务员的郑畅发现自己怀孕了,可男朋友却联系不上。在没有和家人商量的情况下,她决定堕胎。
12月5日,
使用jQuery为input输入框绑定回车键事件 VS 为a标签绑定click事件
Everyday都不同
jsp input 回车键绑定 click enter
假设如题所示的事件为同一个,必须先把该js函数抽离出来,该函数定义了监听的处理:
function search() {
//监听函数略......
}
为input框绑定回车事件,当用户在文本框中输入搜索关键字时,按回车键,即可触发search():
//回车绑定
$(".search").keydown(fun
EXT学习记录
tntxia
ext
1. 准备
(1) 官网:http://www.sencha.com/
里面有源代码和API文档下载。
EXT的域名已经从www.extjs.com改成了www.sencha.com ,但extjs这个域名会自动转到sencha上。
(2)帮助文档:
想要查看EXT的官方文档的话,可以去这里h
mybatis3的mapper文件报Referenced file contains errors
xingguangsixian
mybatis
最近使用mybatis.3.1.0时无意中碰到一个问题:
The errors below were detected when validating the file "mybatis-3-mapper.dtd" via the file "account-mapper.xml". In most cases these errors can be d