绪论:写作既是个人情感的抒发,也是对学术真理的探索,欢迎阅读由发表云整理的11篇ui设计论文范文,希望它们能为您的写作提供参考和启发。
0 引言
在断路器可靠性试验设备中,试验电源的稳定、精确是保证测试可靠的基础。否则,无论是在断路器出厂试验还是型式试验,都会因为测试电源的波动使校验后的产品存在着合格品被判为不合格,而不合格品被判为合格的可能,严重影响产品的质量。传统恒流源制作是利用二极管、三极管、集成稳压源的特性制作的参数稳流器、串联反馈调整型稳流电源、开关稳流源等等,但往往存在着输出电流范围小、稳流精度不高、效率较低、可靠性较差、输出纹波大等缺点。本文设计了一种基于AT89C51的恒流源控制系统,能实现快速、高精度、灵活、多功能的控制要求,在断路器可靠性试验中提供了稳定、精确的试验电源。
1主电路的组成
主电路是由电压电流调节电路,升流变压器,电流检测反馈电路,输入控制和显示等几部分电路构成的检测,以上各个模块都是由AT89C51来控制的。其总体构架如图1:
图1系统结构框图
1.1 电压电流调节电路
电压调节模块主要由变压器和DS1267数字电位器构成,单个DS1267可调精度最大可达16位,可知单次最小变化量为1/512,对于220V电压来说基本可以认为是线性关系,符合恒流源的电压调节精度。电流调节模块主要由TDA2030芯片和大功率晶体管2SA1302、2SC3281组成的。其中2SA1302与2SC3281组成推挽功率放大结构,为了增加输出电流,采用了两路相同结构的并联电路,其电路图如下:
图2推挽功率放大电路
图2中,当输入电压信号时,由于IN4001两个二极管的动态电阻很小,且R2的阻值较小,可以认为2SA1302管基极电位的变化与2SC3281管基极电位的变化近似相等,两个基极的电位随输入电压uin产生相同的变化。当处于输入信号的正半周,且uin逐渐增大时,2SA1302管基极电流随之增大,发射极电流也必然增大,负载电阻(即升流变压器)RL上得到正方向的电流;当uin减小并减小到一定数值时2SC3281管截止。因此输入信号的正半周主要是2SA1302管发射极驱动负载。同样道理,负半周期主要是2SC3281管发射极驱动负载免费论文下载。
1.2升流变压器
本试验要求产生0~100A的大电流,考虑到本电流源用于断路器在线检测,断路器触点接触电阻是15mΩ,这样在负载上消耗的功率应该为:P =I2R=1002×0.015=150W。负载消耗功率150W,考虑变压器效率及功率裕度,我们选用升流变压器的额定容量为500VA。
铁芯面积S与升流变压器功率P满足下面经验公式:ln(S)=0.498×ln(P)+0.22。带入功率P=500VA,可算出铁心截面积S=53.144Cm2。根据计算结果检测,取S=54Cm2选用硅钢片中间舌尺寸a=60,叠厚尺寸b=90。
根据铁心截面积S和铁心的磁通密度B,初级线圈的每伏圈数N可由下式确定:
ln(N)=―0.494×ln(P)-0.317×ln(B)+6.439采用质量优良的硅钢片,铁心B值取11000高斯,计算得到每伏匝数N=0.831。初级电压取220V,初级匝数N1=220×0.831=183。次级电压取7V,次级匝数N2=7×0.831=6。
初、次级匝数以及次级最大电流100A,次级电流:I1=I2×N2/N1=3.4A。根据经验,每安培电流分配0.3mm2导线截面积。这样初级导线截面积为:1.02mm2,初级导线可选用15×32mm2扁铜线。次级导线截面积为:30mm2,次级导线可选用60×22mm2扁铜板。
1.3电流检测反馈电路控制显示模块
电流检测反馈模块由电流互感器、精密绝对值电路、有源低通滤波器以及A/D转换芯片构成。根据输出电流,我们选择DHKYZ-500型号电流互感器作为电流采样传感器,该传感器满量程电流为500A,满量程次极输出电流为100mA,为了满足A/D转换器输入量程(0~5V)的要求。A/D转换需要直流信号,因此需对交流信号进行调理,本设计所用的精密整流电路如图3所示,该电路主要由两个双运算放大器TL062和相关元器件组成。电路的输入电压Ui为电流互感器感应输出的电流。
图3精密整流电路
如图3,当ui>0时,Dl导通,D2反向阻断,可以算出u11=-ui/2,u12=-u11=ui/2>0;当ui<0时,Dl反向阻断检测,D2导通,对于第一个运算放大器TL062,可得u11=-ui/3。从而可以算得u12=-ui/2>0。即可得,u21=-2u12,最后可得uo=-u21=2 u12,所以输出全波整流波形。
由于精密整流电路输出的信号是脉动直流信号,不能直接作为AD采样的输入信号,因此还必须先经过低通滤波器,滤除交流分量,取出直流分量,再给A/D转换器输入。
1.4控制显示模块
目前工业控制中的LED显示驱动电路普遍采用一种定时或中断控制方式,这种方式要占据CPU一部分时间,而且动态显示往往具有亮度不够,闪烁等特点,而静态显示又有硬件电路复杂等缺陷。本系统的键盘显示采用OD-DM12864液晶显示,其可直接与微机串行口相连,完全解决了LED显示的诸多不足免费论文下载。用户只需对位和控制寄存器编程,就可选择译码方式、显示亮度、关闭等功能。
2控制算法及程序设计思路
2.1 控制算法选择
恒流源元件检测过程是一个多参数相互耦合的时变非线性系统,影响电流检测的精度因素很多,并有很大的随机性、很难用精确的数学模型来描述,即使通过一些手段简化系统后建立了对象的简单数学模型,控制效果也不是很好。另外,由于电流随元件参数的变化而变化,要求控制算法的实时性高检测,控制过程较为复杂。因此,权衡各种控制方法的优缺点,我们采用PID实现实时控制。
2.2 程序设计思路
根据系统需要在此采用了模块化程序设计方法,按照硬件功能模块将程序分解成模块,然后定义各个模块的功能和对接口定义。主程序程序流程图如图4所示
图4主程序程序流程图
3 实验调试
本实验输入交流220V,输出端为直流15V左右的直流电压。实验记录了以下电流测试值,如表1。
表1恒流源电流测试值(单位:A)
电流设置
电流互感器
钳表测量
误差
10.0
20.0
30.0
40.0
50.0
60.0
70.0
80.0
90.0
10.0
20.2
30.1
40.3
50.3
60.0
70.2
80.4
90.3
10.2
20.1
30.7
40.2
50.8
60.2
70.4
80.6
90.4
0.0/10.0=0%
0.2/20.0=1%
0.1/30.0=0.33%
0.3/40.0=0.75%
0.3/50.0=0.6%
0.0/60.0=0%
中图分类号:TN915.05 文献标识码:A
0引言
随着小米智能路由器的推出,这个“不坏就想不起来他”的家用电器成为了目前较为新潮的家用电器。智能路由器的地位提升,最主要的原因是家用电脑的逐渐淘汰,以往家用电脑提升的大容量存储、持续下载、资源管理等家庭局域网功能,需要由一个新的,更适应这一需求的硬件进行实现。智能路由器应运而生。
1需求分析
1.1 网关功能
首先,家庭局域网规模虽小,但网关要求复杂,基本的家用中心路由器,应该具备将高速以太网或者吉比特以太网转化为WIFI网络以及高速以太网和吉比特以太网的自身交换功能。而事实上,智能路由器要求连接更多的网段,比如家庭的视频监控系统,家庭的综合探头系统,家庭的互动电视系统等,同时要求ADSL或者光纤网络的直接接入。
1.2 安全功能
家用路由器应该带有基本的防火墙功能,防火墙功能应该是可以通过互联网直接获取最新规则的可配置防火墙。这个防火墙可以不使用硬件实现,但是应该编写专用的应用进行管理。同时,因为智能路由器采用的是安卓的开源操作系统,应该有专门的应用对操作系统进行保护。
1.3 存储功能
智能路由器如果要替代家用电脑的功能,首先应该能够满足大部分家用电器(摄像头、DV、相机、手机等)的数据存储和下载影片的存储。所以其存储容量应该是可扩展的,至少应该在1TB以上。
1.4应用扩展
基于安卓操作系统的家用智能路由器,应该支持安卓应用的扩展,保证其功能和固件可以得到最大程度的升级。
2功能实现
2.1主机选型
因为家用智能路由器的终端零售价不应该超过1500元,而其硬件成本不应该超过500元,所以,我们应该选用目前相对普及的ARM系列SCM作为其主机。而综合考虑大容量存储和高速数据桥接传输的需求,应该选用较为高端的ARM设备。综合分析下,基于A7架构的Cubieboard2 双核A20升级版可以基本满足系统需求。改板拥有1GB的RAM,双核处理器,以及较大容量的辅存管理能力。
2.2 接口设计
(1)电源接口
需提供5VAC2A稳定可靠的电源输入。
(2)WAN
提供一个WAN口,同步提供光纤SC接口和10/100/1000Mbps自适应RJ45口的镜像。
(3)LAN
提供一组4个10/100/1000Mbps自适应的RJ45接口作为LAN口。提供一个300MWIFI模块作为LAN口。
2.3 UI设计
传统家用路由器是一个被动设备,其本身使用的UI界面较少,基于LAN口WEB的IIS系统,可以几乎完善的完成其主要的交互和配置功能。但是,智能路由器是一个主动设备,我们需要对其进行较为复杂的操作以适应日常生活对于网络功能的需要,这就使得智能路由器的UI设计格外重要。
鉴于安卓系统本身的部分UI功能,我们通过合理开发联动应用的方式,可以较容易的实现智能路由器与电视机、手机、平板等家用互联网终端设备的UI交互。路由器UI界面的主要作用是使得家庭智能家居系统的相关数据可以与这些UI设备进行可靠的连接。
概括来说,智能路由器的交互方式主要有两种:
(1)基于LAN口通讯(含WIFI)的应用
基于LAN口通讯的应用的主要作用是实现智能路由器的通讯功能和存储功能,以及基于这些功能及其核心处理能力实现的下载、暂存、共享等功能。另外,家用照片打印机、电子相框等软件也可以实现与智能路由器相关软件的交互。同时,我们可以在平板电脑、智能手机、智能电视等产品上通过一定的应用对智能路由器进行相关的配置,这些配置与传统路由器的WEB配置类似。
(2)基于3G/4G网络的应用
另外,因为智能路由器是介入互联网的,我们可以使用手机等移动设备的3G/4G功能对其实现配置和远程操作。这些操作比如启动空调、启动储水式热水器、查看流量、启动下载以及对各种智能家电的控制。同时,远程查看家庭摄像头、冰箱探头、病人护理探头、婴儿探头的相关数据的功能,也是在智能路由器UI系统中较为实用的功能。
2.4 AP扩展及4G桥接
因为目前大城市高层建筑群中的城市家居往往具有两个特点:
(1)房间较小,墙体结构复杂,WIFI功率需求较高。
(2)移动通讯信号发射功率无法满足高密度通讯需要,移动通讯信号较弱,容易断线。
所以,智能家用路由器应该保证宽带接入的同时,应该有较强的基于AP桥接技术的自扩展和自适应技术。同时也应该根据其热点功能与移动通讯业务的信号进行互助加强,使得房间内的4G信号可以得到放大后供给区域内使用。这些功能都可以在智能家用路由器的固件基础上通过应用扩展的方式来实现。
3结束语
随着家庭移动设备和家庭智能化设备的逐渐普及以及SCM在家庭智能家居系统中的应用逐渐成熟,智能路由器设备会在市场上表现越来越活跃。通过智能路由器产品,智能家居的各种产品可以形成一个有机的整体,这是推进智能家居发展的必由之路。
参考文献
2毕业设计过程中使学生的创新能力得到培养
在毕业设计选题、内容、结构以及答辩方法上,要鼓励优秀学生进行创新,对创新部分还要加上适当的分数。对具有创新能力和突出成就的毕业设计予以加分的方式鼓励学生发挥最大能力去提高设计水平。学生的毕业设计(论文)成果如果有创新点、新发现或者获得专利;学生的设计报告或相应的论文在正规刊物上正式发表或采用等情况,在总成绩中都可单独进行加分。此外,对指导老师在指导方法、成绩考评等方面的创新也要多加鼓励,还要为他们提供相应的软硬件措施。把毕业设计(论文)与老师相关的科研结合起来,使学生追求新知识,提高自身专业能力及创新能力的要求得打满足。
3建立毕业设计创新能力评价指标体系
应结合科学性和可行性、定性与定量,以及基本指标与提高性、创新性指标来建立毕业设计指标体系。指导教师评价、评阅教师评价和答辩教师是整个指标体系中的3个一级评价指标,同时在一级评价指标下设了12个二级评价指标,其中就包括创新性指标,详见表1。也就是说,整个指标体系将评价指标分成了二级,其优点在于总的评价结果不仅可以从最终评价结论中获得,还能对各一级指标的具体评价结果有很清晰的了解,在不失完备性的同时确保了各指标之间的相互独立性。与此同时,这也是二级评估模型建立的前提。
中图分类号:TN912.3 文献标识码:A 文章编号:1007-9416(2013)07-0142-01
1 引言
SIP是一种应用层协议,可以用UDP或TCP作为其传输协议。与H.323不同的是:SIP是一种基于文本的协议,用SIP规则资源定位语言描述,这样易于实现和调试,更重要的是灵活性和扩展性好。由于SIP仅作于初始化呼叫,而不是传输媒体数据,因而造成的附加传输代价也不大。SIP的URL甚至可以嵌入到web页或其他超文本链路中,用户只需要用鼠标一点即可发送出一个呼叫。与H.323相比,SIP还有建立呼叫快,支持传送电话号码的特点。本文基于SIP,面向医疗语音应用环境,设计实现了一套VOIP应用系统。
2 SIP协议简述
基于SIP的网络主要包括以下几个部分:用户客户(User Agent Client)、用户服务器(User Agent Server)、服务器(Proxy Server)、重定向服务器(Redirect Server)、注册服务器(Register Server)、定位服务器(Location Server)等,其网络构架如图所示。
3 系统总体设计
医院SIP系统主要针对用户进行设计,可以划分为以下三个模块:(1)主控模块。主控模块是本终端的核心模块,也是本终端设计中唯一能同SIP协议栈进行交互的模块。主控模块便是由一个主线程和SIP协议栈所提供的各种API组成,通过和协议栈进行交互,负责处理几乎全部的事务。该模块使得SIP协议栈的操作和其他模块很好地隔离开来,极大地降低了各模块之间的耦合度。(2)主UI模块。主UI模块是本设计的主界面,负责初始化用户界面并报告和显示当前用户状态。该模块初始化主线程和查询线程,并随时按要求传送和接收各种状态参数,将用户当前的状态展示在主界面上,呈现给用户。(3)注册模块。注册模块由两个小模块组成:注册UI模块和查询模块。其中注册UI模块由注册界面组成,负责获取用户填入的信息,并将这些信息发送给主UI模块;查询模块由一个查询线程组成,其实现的功能为每隔一秒钟向主控模块发起一次询问,使得主控模块可以了解当前用户所处的状态,并根据相应状态机判断应该执行的下一步操作,最终将当前状态反馈到主UI模块,呈现给用户。
4 系统运行描述
系统客户端运行过程中,首先遵循以下工作步骤:首先终端启动并进行初始化操作,初始化操作完成后根据是否登录成功进行判断;登录成功则可以选择是否进行通话,若登录不成功则保持在初始化状态,不能进行通话,等待用户注册;若登录成功则可选择是否进行通话,若要通话则创建对等实体的语音传输,通话结束后可选择退出,所有线程结束。对于主控模块来说,其利用有限状态机(FSM)进行运作,其状态转换图如图2-3所示。
通话功能的实现:通话功能只有在用户登陆成功后才能进行,在未登陆状态时,发起的通话状态会被主线程根据状态机进行判断并屏蔽掉。点击“通话”按钮,主界面将界面上的电话号码作为参数,向PJLOOP主线程发起msg_call消息,主线程根据on_call_state的消息绑定调用PJSIP协议栈的通话发起函数,此时PJSIP内置的通话线程开始运作,当收到消息后,协议栈会根据自身的状态机判断并返回给主界面对应的状态参数,由主界面进行处理并显示在主界面的左下角,呈现给用户。通话过程消息调用流程如图4所示。
参考文献
现阶段,数字化媒体如雨后春笋般不断涌现出来,艺术设计也处于不断创新发展的模式中,二维视觉传达设计逐渐演变成网络、移动通信以及LED等多维设计,UI界面在智能手机与平板电脑中拥有较大的应用频率。《电商视觉设计》课程教学也应该积极迎合新时期下市场发展需要,改善教学方法以及优化人才培养模式。本文以电商视觉设计课程的人才培养为论点,展开相关论述。
一、《电商视觉设计》课程人才培养实况
一是对经济市场需要认识方面存在片面性。在4G智能手机与平板电脑所向披靡的局势中,UI界面设计人才长期处于短缺的状态中。但是国内众多学校对这一人才需求态势认识上体现出薄弱性,与UI界面设计、电子书规划理论以及软件教学相关的课程屈指可数。二是课程体系在编制上缺乏完善性。基础课程、专业课程以及设计实践这三大模块与UI界面设计的数字艺术之间关联性微弱,专业课程特质性薄弱化,也没有将现代社会发展形式与科学技术创新情况融入其中,课程体系完善性的缺乏,使具备界面设计特长的人才培养目标实现上存在较大难度。
目前电商视觉设计课程的教学设计和教学过程都还仅停留在软件功能的教学上,而针对创新创业教学的很少。近几年来国内各高校大都把创新创业课程融入到电子商务课程中,而很少有融入电商视觉设计课程之中的。创新创业教学融入到针对景德镇特色陶瓷饰品的电商视觉课程建设与实践的目前国内尚没有。所以,如何加强创新创业教育并将其融入高职电商视觉设计课程的过程中,培养出满足社会市场需求的专业人才,适应社会发展的需要,是我们高职院校目前亟待解决的一个题。
二、互联网时代中《电商视觉设计》课程人才培养的教学方法
(一)优化课程教学内容
1.教学内容择选凭据
参照工作岗位知识、技能、素养标准确定《电商视觉设计》课程教学范畴是基础,这一目标的实现需要有行业教育专家、企业技术专家、历届从事本专业毕业生以及在校教师的全力合作,借助市场调研等途径掌握企业对职位知识与技能提出的标准。依照视觉设计行业标准、设计理念与新兴技术确定课程内容[1]。也可以依照职位工作运转的实际程序编制课程教学内容,这需要对企业代表性工作项目进行深度剖析,在多次研究中将电商视觉设计工作程序提取出来,旨在强化学生的职业技能。此外在对《电商视觉设计》课程教学内容设置之时,应该将商业价值元素与艺术人文素养整合其中,旨在强化学生的职业素质与人文素养。
2.《电商视觉设计》课程教学内容编制工作
上述工作运行始终应该遵照培养学生职业技能这一规则,将实际工作任务以及其设计流程为凭据,强化教学内容的整体性与规范性,使布置的教学任务体现出学习性特征。把每一个学习情景视为一个完整性设计过程的依托。此外在教学过程中始终坚持虚拟化学习场景与现实工作环境一致性原则,以网站界面规划为起点,在原有规划程序与商务规划理念的导向下科学的规划商贸平台界面,在项目独立规划与完备性规划制作程序的辅助下落实企业网站界面的设计工作,在FLASH网站界面设计任务完成的情况下,构建WEB系统界面设计的课程教学模式。在教学进程中,教师应该积极践行情景化教学模式,应用项目教学方法,以实践为依托强化课程教学内容的特质性,使理论与实践知识始终处于“连体”状态中。
(二)创新教学模式对其科学应用
1.教学模式的革新
一是以创作为主体,项目可以被视为媒介体是协助专业学生对企业为实战项目创造流程有整体性了解;二是将学生的主体地位凸显出来,在多维度、开放式教学气氛中使学生的思维融入进创作进程中;三是采用示范教学模式,将学生创作成绩与行业作品施以对照评价,旨在强化专业学生创作的标准性。
2.多样化教学方法的应用
一是应用分层教学方法。将文本知识视为核心,学生为教学的主体,教师发挥导向作用,教与学处于同一等级上,融入因材施教这一现代化教学理念,对不同时期中不同学习能力的学生布置不同任务[2]。例如在第一阶段依照学情,使学优生与学困生组队,使他们在协助中强化网站设计技能;在第二阶段在对电商企业和景德镇特色陶瓷饰品等企业充分进行调研的基础上,将电商视觉设计主要工作过程进行细分与整合,确定若干个必修工作过程和选修工作过程。对学生采用传统的教学方法和新的课程体系方案进行分组教学,课程结束后对学生的学习成效进行对比,同时组织院内、外专家对两组进行能力的综合评价。
二是应用感性迁移教学方法。实质上就是将微课、视频等多样化素材整合进《电商视觉设计》课程教学中,并整合启发式教学理念,使学生对设计理念有全面性认识,树立创新精神,在思考中收获更多灵感,达到迁移创作理念与设计形式的目标。
三是创新创业理念,并将其整合进课程教学体系中。学生在学习本课程知识的同时可以同步创建和设计自己的电商网站。同时教师积极组织学生对与《电商视觉设计》课程相关的具有代表型项目进行欣赏、点评与分析、对结构或内容残缺的案例成因进行深度解析。这一新兴教学方法在《电商视觉设计》课程教学进程中的应用,在强化是对知识、技能学习兴趣,协助他们明确学习目标等方面发挥的作用是极为显著的,为《电商视觉设计》课程的人才培养目标的实现注入能量。
三、结语
其实,《电商视觉设计》人才培养目标的实现可以采用的教学方法是多样化的,本文受篇幅的限制只是浅浅而谈。情景体验教学方法的应用,使多媒体成为课程知识呈现的载体,使学生有身临其境之感。专业教师在实际教学中应该积极应用互联网技术,以多样化媒介为依托达到培养学生创意表达能力的教学目标。同时有选择性的借鉴国际最新教学理念与方法,在Web项目创作实践方法的协助下,充实学生建设商务网站的知识与技能,落实复合型应用人才培养目标。此论文将作为“创新创业导向下的高职电商视觉设计课程体系建设与实践”省级课题的研究成果。
中图分类号:TP315文献标识码:A文章编号:1009-3044(2012)23-5625-04
Design and Implementation of Scientific Research Management System Based on the ThinkPHP + DWZ Architecture
ZHU Ya-xing, LU Shu-ping, LI Hao-yi
(Guangdong Vocational Institute of Science and Technology, Zhuhai 519010, China)
Abstract: This paper presents the Design and Implementation of Scientific Research Management system based on the ThinkPHP + DWZ architecture. The system is user-friendly, reducing the complexity of research management, enhancing the real-time and interactive scientific information, improving the query accuracy of the analysis.
Key words: scientific research management; PHP; ThinkPHP; DWZ architecture
随着我国高等教育的快速发展,高校在提高办学规模和办学质量的同时,科研意识逐步加强,高校的科研工作不论在数量还是质量上都得到了较大提高。[1]然而我校过去依赖的传统的工或者借助Excel,E-mail等办公软件所进行的科研管理模式已经不能满足科研管理工作的需要。随着互联网技术的不断发展与普及,利用学校已经建立的与Internet相连接的较为完善的校园网络和计算机资源,[4]结合我校科研工作的具体情况,利用现代信息技术和优秀的软件开发工具,提高科研管理效率和水平,使科研管理更规范化、科学化,更好地服务于本校广大教职科研工作人员,提出了建立本校的科研管理系统的需求。
1系统需求分析
1.1系统需求分析
根据科研处提供的需求,分析得出科研信息管理系统的需求主要分为3个方面:
1)科研成果管理:科研处人员通过本系统来进行成果、论文、著作、专利等信息管理,记录科研人员出版的著作、刊物论文、专利申请与专利授权情况、科研项目鉴定成果。
2)科研经费管理:科研处人员通过本系统进行经费管理。科研处人员通过本系统进行科研数据的查询统计并生成各种报表。3)科研项目管理:提供对包括纵向项目与横向项目在内的网上申报、评审及项目状态查询等主要功能。
1.2系统功能模块结构
科研管理系统采用模块化结构,系统包括四大模块:审核管理、机构管理、成果管理和系统维护。系统功能模块结构如图1所示。
2开发工具简介
2.1 ThinkPHP概述
ThinkPHP是一个开源的PHP框架,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议。早期的思想架构来源于Struts,后来经过不断改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的Action和Dao思想和JSP的TagLib(标签库)、RoR的ORM映射和ActiveRecord模式,封装了CURD和一些常用操作,单一入口模式等,在模版引擎、缓存机制、认证机制和扩展性方面均有独特的表现。
2.2 DWZ框架
DWZ富客户端框架(jQuery RIA framework),是中国人自己开发的基于jQuery实现的Ajax RIA开源框架。DWZ富客户端框架设计目标是简单实用、扩展方便、快速开发、RIA思路、轻量级。使用DWZ框架可以自动邦定JavaScript效果,不需要开发人员去关心JavaScript怎么写,只要写标准HTML就可以了。DWZ简单扩展了HTML标准,给HTML定义了一些特别的class和attribute。DWZ框架会找到当前请求结果中的那些特别的class和attribute,并自动关联上相应的js处理事件和效果。DWZ基于jQuery,可以非常方便的定制特定需求的UI组件,并以jQuery插件的形式出来,如有需要也可做定制化开发。
3系统设计与实现
系统采用ThinkPHP + DWZ架构进行开发,较好地提高了开发效率。与本项目类似的系统开发一般来讲需要写大量的javas? cript才能达到满意的效果。程序员对javascript的熟悉程度直接影响开发速度。使用DWZ框架能够自动邦定javascript效果,不需要去关心javascript怎么写,只要写标准html就可以了。DWZ简单扩展了html标准,给HTML定义了一些特别的class和attribute。DWZ框架会找到当前请求结果中的那些特别的class和attribute,并自动关联上相应的js处理事件和效果。同时CSS和js代码彻底分离,修改样式方便,仍然保留了html的页面布局方式,完全开源,源码没有做任何混淆处理,方便扩展,支持HTML扩展方式调用UI组件,提高了系统的通用性和界面的一致性。以图2的简单对话框为了说明。
图2确认删除对话框
其主要代码为:
删除
或者删除
系统功能采用ThinkPHP+DWZ方案开发,服务器端采用ThinkPHP实现,客户端利用DWZ框架实现,运用DWZ框架能够快速实现Ajax应用,充分发挥了DWZ框架的资源优势,提高了系统的通用性和界面的一致性。
3.1系统审核模块
审核模块如图3所示:分为院级管理员审核、院长审核、科研处审核三级审核,不同的角色拥有不同的审核权限,所有的成果项目都需经过三级审核之后才能入库进并行统计。
其核心代码如下:
function edit(){
//人员的一些关联表数据
$type=new Model(’department’);
$tlist=$typefield(’d_id,d_name’)select();
。。。
$data=$_REQUEST[’data’];
$name=$_REQUEST[’action’];
。。。
$thisdisplay($data);
3.2系统成果管理模块
成果管理模块如图4所示。包括科研项目、专利成果、论文、论著、成果奖励、成果鉴定和成果检索等基本信息管理。科研人员通过自己的账号登录系统可随时输入、查询其科研成果,在审核人员确认之前还可进行编辑。系统还能依据要管理的科研成果类别进行管理,按年度、摘录的论文名称、作者等显示出结果,并且统计导出结果视图。其核心代码如下:
function _search() {
//生成查询条件
$name=$_POST[’q_year’];
$_SESSION[’year’] = $_POST[’q_year’];
。。。
$elist=$awardwhere(’a_year=’.$name.’ and p_id =’.$id.’ and a_audit =3’)select();
$thisassign(’vo4’,$elist);
}
图4成果管理页面
3.3机构管理模块
由管理员对学院和部门进行管理,可以增加、删除和修改机构名称,对机构人员实现增加、删除和修改功能。
其核心代码如下:
function insert() {
$name=$thisgetActionName();
。。。
if (false === $modelcreate ()) {
$thiserror ( $modelgetError () );
} //保存当前数据对象
$list=$modeladd ();
if ($list!==false) { //保存成功
$thisassign ( ’jumpUrl’, Cookie::get ( ’_currentUrl_’ ) );
$thissuccess (’新增成功!’);
} else { //失败提示
$thiserror ($modelgetDbError());
}
}
通过$name=$thisgetActionName()获取对应控制器名字,实现例化对应表,从而对表进行增删改查,因此可以统一封装了对表的增删改查,所有的控制器只需要继承Commom,各个模块就能进行增删改查,无需再对每个模块写代码,使得系统的通用性大大提高,减少了大量重复的代码,提高了系统的执行效率。
3.4系统数据维护模块
主要对各个代码表进行维护以及对数据库进行备份与还原,rbac等操作,如图5所示。其核心代码如下:
public function module()
{
$groupId = $_GET[’groupId’];
。。。
//读取系统组列表
$list=$groupfield(’id,name’)findAll();
。。。
//读取系统组的授权项目列表
。。。
//读取当前项目的模块列表
。。。}
//获取当前项目的授权模块信息
。。。}
4结束语
本项目是面向高校的科研管理系统,充分利用现代信息技术、网络资源和优秀开发工具实现科研管理的实时性与互动性、提高科研管理工作的效率和水平;便于管理人员及时掌握科研动态,实现科研审核管理、项目、成果管理、科研结构管理与系统维护管理等。系统采用了目前比较先进和流行的ThinkPHP+DWZ技术,提高了开发效率,同时系统具有较强的跨系统性、扩展性,给后期系统的扩展、升级带来方便。
参考文献:
[1]台德艺,王昆仑,郭昌键.高校科研信息管理系统的设计与实现[J].计算机工程与设计,2009,30(9):2339-2342.
1 引言
图书馆自习室座位紧张问题是每个高校都存在的问题,其原因一般有以下几点:一是高校出于资源以及使用效率的考虑,无法做到每人一个座位,二是部分学生没有合理地使用座位,存在占座现象,致使原本有限的座位资源被浪费,进一步加剧了座位使用的紧张。
通过对部分高校图书馆的调查,对于座位使用的解决方案目前有限制学生使用时间,入馆收费,以及在图书馆大厅使用终端机预定座位等解决方案,但是经过细致调查研究,以上方案确实可以在一定程度上解决座位的使用紧张情况,但也存在着不足,例如限制时间,会使需要长时间学习的学生无法获得需要的学习时间,而终端机预定的方案,在使用高峰期的情况下,无法解决大量学生排队等候的情况,对学生宝贵的学习时间造成浪费,因此以上已经应用的方案存在着改进空间。
近几年,智能手机不断普及,在学生中更是成为了生活必备品,根据2014年第二季度的全球智能手机操作系统分布情况来看,Android操作系统的全球市场份额已达到84.6%。可以说在使用智能手机的人群中,Android手机占有相当大的比例。因此,Android手机平台具有很强的广泛性和代表性,因此在Android平台上开发一款供学生使用的座位预定APP十分具有发展前景,更由于Android手机的普及,使得每一部安装了APP的Android手机都可以成为一个预定终端,学生可以随时随地预定座位,这样便解决了排队问题,加上服务端对订单的管理限制,可以比较合理地解决图书馆座位紧张的问题。
2 系统界面的设计思想
2.1 Android客户端的设计理念
一款好的软件,其设计不应令人眼花缭乱,而是应该简洁易用,过渡特效自然而不累赘,所有的UI控件的安排都应该围绕着功能的使用来进行,尽可能地简洁,明了,这也是Android 4.0版本之后,三大智能手机操作系统的UI设计皆趋于扁平化的原因。
在此思想的指导下,我们的应用的设计,也围绕着简洁二字进行:既要显得美观,也要减少操作的复杂程度,使每次查询座位情况,预定座位,对自己座位的管理变得简单而轻松。
2.2 座位预定界面的设计
在使用12306预订火车票时,相信每个人都被其繁琐的下单程序困扰过,而对于一个表单来讲,提升速度,效率才是其真正的设计目标,因此,在设计预定界面时,我们采取简化录入信息的方式进行设计,如图1,学生的学号在登录时就已经从服务端获取,在预定座位时,简单的填写自己需要使用座位的时间段以及需要哪个座位就可以轻松预定到座位,采取自动获取学号的方式,也避免了替代下单,一号码多个订单的情况出现,保证了一个账号只对应一个订单,以此限制一人占多座的情况出现。
在代码的实现上,我们采取多层嵌套的方式,使用LinearLayout以及Relativelayout进行嵌套,实现各UI控件的排布,同时减少图片的使用,采取绘制的方式,加快应用反应速度。
2.3 订单详情界面的设计
由于移动设备的屏幕较小,没有足够的物理空间,如果像PC那样显示大量的信息就会显得十分臃肿,因此在设计订单详情上,我们采取只显示重要信息的原则,只将学生能用到的重要信息显示给学生,如图2,一方面作为座位使用的凭证,另一方面也为提醒学生使用座位的有效时间,倒计时的设计使学生更为清晰地了解自己的所剩时间,当时间不足时,可到管理员处申请延时,以获得更多的学习时间。
由于订单的信息是从服务端获取的,因此我们采用JSON作为数据传输的格式,由于JSON具有传输速度快,冗余信息少,节省带宽,可实现面向对象的数据交换等特点,所以十分适合移动设备使用。当我们获取到服务端的订单信息时,就会将其解析为对象数据,并显示到控件上。
2.4 座位情况界面设计
在座位情况界面上,我们同样采取了只显示最重要的信息的原则,通过选择不同的阅览室,来查看阅览室座位的情况,通过座位颜色直观地显示座位是否被占用,如图3。
在实现上,采取LinearLayout,Relative layout以及Grid View嵌套使用的方式,实现座位的排布。
3 结论
一个良好的软件离不开好的设计,良好的用户体验是一款成功的软件必不可少的因素。我们在这款软件的界面上的设计理念与思想,均以用户体验为中心。系统以Android为开发平台,注重人性化设计,用户免费下载APP,安装后即可方便使用,解决了高校图书馆终端机造价高,维护费用高,使用的局限性等问题。
参考文献
[1]李刚.疯狂Android讲义 (第二版)[M].北京.电子工业出版社,2013.
[2]Theresa Neil 移动应用UI设计模式[M].北京.人民邮电出版社,2013.
[3]纳德尔曼 (Greg Nudelman).Android应用UI设计模式[M].北京.人民邮电出版社,2013.
作者简介
叶松涛(1992-),男,大学本科学历。现供职于哈尔滨理工大学荣成学院。
中图分类号:G644 文献标志码:A 文章编号:1674-9324(2015)06-0025-02
1 引言
随着我国职业教育的快速发展,以培养高技能人才为目标的高职院校,在不断提高教师的科研能力,使之与高职教育协调发展相适应。科研是高职院校发展的内在动力,是学校办学层次和学术水平的重要表现。加强职业院校科研工作的管理,走科研强校之路,是学校发展的必然选择。科研工作量化与评价管理是科研管理工作的重要组成部分,是科研资源配置的指挥棒,寻找适合高职院校的科研量化与评价方法是有效促进高职院校科研工作健康发展的关键。
2 高职院校科研工作量化与评价管理的现状及存在的主要问题
高职院校科研量化与评价管理工作的主要内容是对科研项目、科研成果等的量化管理。虽然目前各高校有量化评价指标体系,但多数高职院校的科研工作量化与评价方法还不完善,科研量化与评价管理工作在评价手段、评价方法及评价结果的分析等方面存在诸多问题。例如:对科研成果的评议存在许多主观因素,评价指标体系不够全面,往往缺乏针对教师专业特点的指标,导致评价结果不能反映教师综合素质[1]。这些问题会影响科研工作量化与评价管理的有效性和客观性。因此,建立科学合理的量化评价指标体系是促进高职院校科研工作健康和可持续发展的保障。
3 高职院校科研工作量化与评价方法
3.1确定科研工作的权重值W。在确定科研工作的权重值时,需要根据学校的办学目标,确定优先资助的学科范围,结合同类院校量化指标的设置情况,最终确定科研工作的权重值。[2]具体计算办法是先由校外专家组对某项科研工作给出权重值:S1、S2、……Sn,然后再由校内专家组对某项科研工作给出权重值:T1、T2、……Tn,通过公式(1)计算该项科研工作的加权平均值W:
W=■ (1)
3.2确定科研工作的难度系数D(a,c)。通常情况下,科研项目级别越高,获批立项的难度就越大,学术期刊级别越高,在该期刊上的难度就越大。因此,在对科研工作进行量化评价时,根据完成该项科研工作的难易程度,确定其难度系数,再根据其难度系数来对各类科研工作进行量化折算。设在某种科研活动K(a)中,第一完成人F(b)的某类科研成果R(c)数量为N(a,b,c),那么该类科研成果的难度系数D(a,c)的量化模型如公式(2)所示[3]:
D(a,c)=1-■ (2)
公式(2)中,m,n分别为校内科研工作总人数和某种科研活动中某级别科研成果的类别总数,难度系数越大说明该类科研成果的难度越高,反之就越低,公式使用全校统一数据计算难度系数,在较大程度上保证了学术量化评价的客观性。
3.3确定个人科研工作量权重系数R。科研项目通常是团队协作完成,科研工作量化积分主要体现科研工作人员在项目中完成的科研工作量,因此需要做到既鼓励团队有效合作,又要体现个人差异,杜绝挂靠现象,科研项目、专利、科研奖励的参与人科研工作量权重系数R通常由项目负责人分配确定。
4 高职院校科研工作量指标体系及计算方法
4.1科研项目量化与评价指标。高职院校的科研项目主要包括:纵向、横向和院级项目,各类型项目根据项目周期分为立项和结题两个阶段。按照项目的来源、类别、金额进行指标设置,部分科研项目量化与评价指标见表1所示。
4.2科研成果量化与评价指标。科研成果包括公开发表的学术论文、公开出版的专著、发明专利等科研成果。学术论文量化与评价指标可结合期刊的级别和影响因子设置。部分科研成果量化与评价指标见表2所示。
4.3科研工作量的计算方法。确定了科研工作量化与评价指标之后,可计算科研工作量。目前学校科研工作量计算主要分个人科研工作量和二级学院人均科研工作量两类:个人科研工作量计算公式为:X=∑(Ui×Wi),U为科研工作量系数(Ui=Di×Ri),W为科研工作权重值,i为第i个科研工作量评价指标;二级学院人均科研工作量计算公式为:Y=■,Z为二级学院在编教师总人数。
5 结语
高职院校科研量化与评价管理是一项关系复杂的系统工程,建立一套科学、合理、公正、实用且可操作的量化与评价指标体系具有重要意义。陕西工业职业技术学院在2011年制定了《教科研工作量积分办法》,经过三年的实施学院各项科研工作有了新的进展,项目、论文、专利等各项成果在数量和质量上有了明显提高。学院科研处就办法执行过程中遇到的新问题和办法的不足之处进行了修改和补充,并在2014年修订了量化积分管理办法,使学院量化积分管理制度更加客观、更加科学。本文运用多学科视角探索科研量化与评价工作在不同阶段采用经典的数据统计分析方法,对科研量化与评价指标体系进行优化,并提出具体的操作方法。该方法简单易行,较好地解决了以往科研量化与评价存在不科学、不公正等问题,为高职院校科研管理工作逐渐科学化、规范化提供了参考依据。
参考文献:
自SUN公司J2ME无线开发平台以来,基于J2ME的无线应用得到了很大的发展。作为Java 2平台的一部分,J2ME与J2SE、J2EE一起,为无线应用客户端和服务器建立了完整的开发和部署环境。但是由于受到无限移动设备内存、CPU、输入/输出设备等资源的限制,使得无线应用开发与桌面或企业应用开发有很大的不同。
本设计采用面向对象的方法,采用开源的Eclipse平台和Sun公司的J2ME无线工具包(WTK Wireless Tool Kit)。设计了Java手机模拟器的设计思想和电话机的每个模块。包括拨号功能、收发短信、存储功能、多媒体、以及动画等,其中用到了J2ME中最主要的技术有人机交互设计、多线程、多媒体技术、Socket 技术、Message技术等。毕业论文,手机模拟。本设计的应用程序是在WINDOWS操作系统下在Java平台上开发和测试运行的,系统的界面是用J2MEWTK制作的,采用小程序嵌入手机界面或者是手机仿真器中。
一、主菜单实现的原理和过程
1.准备一张PNG图片,上面绘制9个表示各个功能的小图标。
2.用Image.createImage(28,28) 创建9个小图片,再转换坐标绘制九个小图片。
3.定位九个图片具置:手机菜单要适合不同的手机屏幕,所以表示功能的小图片要设计得大小适宜。定位算法:
手机X轴定位:单元格宽*(i%3)+(单元格宽-小图片宽)/2
手机Y轴定位:单元格高*(i/3)+(单元格高-小图片高)/2
4.当用户用上下键有左右键时,可以选择菜单功能,主要是产生0到8这九个数字。
二、各功能界面的设计
用户可以从主菜单点确定进入任何一个功能界面,且每一个显示界面值可以完成一个单一的简单的功能。应用程序中的大部分事件处理都是由两个动作发出的:下一步(或提交)和返回(或取消)。下一步是指完成了当前的任务,需要进入下一个界面。返回是指返回到当前界面的前一个界面。在UI的构造器中将前面或后面的界面传递到当前对象,用这个方法来解决前进或后退的问题虽然可行,但这样做会导致界面之间的耦合度大大提高,如果需求发生变化,重构的工作量较大,程序不易维护,所以在这里用到了回调的模式,加强程序的封装性,提高了程序的独立性。具体功能描述如下:
1.拨打电话功能的设计
类实现如下:
(1)From类(系统自定义类)。From类是Screen的子类,其对象是Item组件的容器,可以直接设置在屏幕上。Item组件不可以直接设置在屏幕上,需要放置在一个From对象上才可以显示在屏幕上。
(2)CommandListener接口。毕业论文,手机模拟。CommandListener接口主要是为显示对象添加命令按钮的监听器,这样用户在按下命令按钮式,才会触发命令按钮的处理代码。其定义了一个CommandAction()方法。
(3)CallDemo类。主要实现打电话界面,其获取输入的电话号码并进行拨打。
2.收发短息功能的设计
本功能的设计用到无线消息API2.0(JSR205规范定义的可选包),设计了发送短息功能和接收短信功能。发送短信为用户提供文本消息编辑器,并把编辑后的文本消息发送到指定的地址;接收短信,当应用程序运行时,可以接收文本消息,当短消息到来时提示用户查看。
(1)SMSMIDlet类:该类是本功能的主类,实现了CommandListener接口,可处理“返回”、“选择”等用户界面。
(2)SenderFrom类:该类提供了编辑短消息的界面和发送短信的功能。发送无线消息是在一个线程中完成的,每当用户发送一条消息时,该类都会创建一个新的消息发送线程,这可以避免阻塞用户界面。
(3)Receiver类:该类提供了打开短信连接及接收短信的功能。当打开消息连接时,该类将创建并启动一个接收消息的线程。如果没有消息到达,那么该线程处于等待状态;当有消息到达时,可以调用handlMessage()方法通知线程接收信息,线程把消息存储到收件箱中,通知用户查看。
(4)Inbox类:该类描述了收件箱,提供了查看接收的短信的功能。该类提供了添加信息、显示信息、浏览信息等功能。该收件箱只能接收文本类型的消息。
3.电话薄功能的设计
Javax.microedition.rms包提供了操作这个数据库的类和接口。实现联系人和电话号码的存储、对电话记录的添加以及删除和显示全部电话记录。
(1)WelcomeCanvas类:电话薄主界面类,该类实现电话薄的主界面,并实现CommandListener接口,处理返回、退出等按钮。毕业论文,手机模拟。
(2)PhoneText类:实现显示电话簿的所有记录。毕业论文,手机模拟。毕业论文,手机模拟。
(3)PhoneList类:实现对电话记录的录入、删除操作。
(4)AddFrom类:实现添加电话记录界面以及添加电话方法。
(5)RMSOpe类:该类实现对RMS记录集的打开、关闭,以及为其添加和删除记录。
4.多媒体功能的设计
本模块设计目标是当用户选择“打开视频文件”选项时,在屏幕上显示文件对话框。在文件对话框中列出当前目录下所有的子目录或和MPEG格式的视频文件。用户可以选择打开一个视频文件,也可以选择进入子目录或者返回上一级目录。文件对话框第一次显示时,将列出移动设备中所有文件系统的根目录。当用户打开一个视频文件是,将启动播放器,在屏幕上播放选择的视频文件。在播放过程中,用户可以通过屏幕上的命令暂停播放和继续播放视频。毕业论文,手机模拟。用户还可以通过下方的方向键改变音量,向上和向右表示增大音量,向下和向左表示减小音量。用户可以停止播放视频,返回播放器主菜单,再次打开文件对话框,打开视频文件。
中图分类号:G642.0 文献标志码:A 文章编号:1674-9324(2016)29-0015-02
目前,我校的本科生毕业论文(设计)仍采用手工方式管理,毕业论文(设计)管理中的许多环节,例如选题、开题、过程管理、审阅评议、结果统计分析等工作还没有被纳入校园信息管理系统中。
每年我校的本科毕业生有6000余人,由于整个毕业论文(设计)的工作过程持续时间长、涉及人数多(包括学生、指导教师和教学管理人员),传统的以手工为主的管理方式存在很多缺点和不足:学生在选导师、选题目等方面缺乏较好的公开性、公平性;师生之间信息交流不畅;论文(设计)工作进度难以及时了解并进行控制;在成绩评定方面存在较大的片面性和随意性;文档收集整理、成绩统计分析等方面重复劳动量大、工作效率低下等等[1]。
在这样的背景下,如何加强毕业论文的管理工作,实现无纸化和网络化办公,是一个极具应用价值的研究课题。研发毕业论文(设计)系统可以大大减少工作量,节约打印纸张等办公经费,提高教务人员的工作效率和管理水平,还可以方便学生上传下载和师生间共享论文资源。
为此,我们申请了大学生创新创业训练计划项目,根据数学与统计学院(简称“数统学院”)的实际情况,开发出了适用于数统学院的毕业论文管理系统[2]。
一、毕业论文过程化管理系统的功能设计
毕业论文管理系统的主要功能有:教师出题、学生选题、学生自命题、教学管理员审核、学生上传相关文档、数据汇总、系统设置。其中,系统分三个模块,分别是教师模块、学生模块和管理员模块[3]。
1.管理系统的基本操作流程如下:
①教师登录系统,输入自己想要指导的课题,并申报;②教务管理员登录系统审核课题;③学生登录系统选择课题或者自命题;④学生登录系统查看自己的课题状况,并根据课题要求完成毕业论文教学进程的各项任务,按时上传相应的文档。同时,教师可以在登录系统查看自己指导的学生的信息,下载学生上传的文档。⑤待学生在规定时间全部完成和上传文档后,教务管理员可对整个教务进程进行总结和整理,完成整个毕业论文线上办公的过程。
以下时序图1阐述了系统的基本流程:
2.管理系统开发所需要的技术条件:
①Visual Studio 2013 IDE工具作为系统开发环境;② MVC4 (C#)作为开发语言和开发框架;③FTP工具上传部署代码;④Git版本管理工具进行版本管理;⑤Windows Server 2008 RC2作为服务器系统;⑥IIS服务器作为运行服务器;⑦SQL Server 2008作为数据库服务器。
目前项目系统的开发工作已经顺利完成,并且已经过教务管理人员和学生的测试,根据他们的建议对系统功能进行完善,可以正式投入使用。
二、毕业论文过程化管理系统的常见问题和解决方案
1.多个学生选同一个课题多并发问题。在学生选择课题的时候,由于某个课题比较受欢迎,可能会有比较多得学生优先考虑,但课题只有一个。这时候,如果有多个学生同时选的话,很可能会出现冲突问题,导致系统出错。图2展示了Topic(论题的表)的结构。
其中Student_UserId为学生的用户唯一标识,当学生选择某个课题的时候,属于这个课题的一行记录中的这个字段就会填上学生的标识。在多并发的问题中,如果多个学生请求选择这个课题,就会同时更新这个字段。那么,在更新的一瞬间,根据服务器处理的先后顺序,往往是最后被处理的被写上这个字段。这是因为服务器接收到多个选题请求后,会同时地执行逻辑处理。首先将相关的这一行的资源从数据库里面取出来,在逻辑处理的过程中,服务器会根据这个资源在内存中生成对应的对象或者数组,而修改数据就通过修改这个对象或者数组来实现。而最后保存操作就把这个对象或者数组再生成SQL语句更新数据库。那么根据这图2 Topic结构个流程,各个请求都生成了属于自己的SQL语句,当然是最后执行SQL的那个请求会被最终保留在字段里了,这样就是“后者先得”,不符合实际的要求,同时也会造成后续逻辑的错误。
解决方案:
通过为Topic表加上一个16进制的字段RowVersion(见图2箭头所指)和乐观锁的方法。相应的处理逻辑改为:读取某一行的时候,也顺便把RowVersion的值读出来作为这一行的版本判断,当更新行的时候,首先判断数据库中的这一行的这个字段是否还是原来的值,如果是的话表示期间没有被修改过,那么就将RowVersion的值加1,再存进数据库;如果不等于原来的值,就表示已经被修改过,不能再执行更新,而要做出相应的处理。乐观锁保证了对某行记录进行更新操作时,会对这一行加锁,若有另外的进程需要操作同一行,必须等前面的进程操作完成。这就保证了数据不会有冲突,解决“后者先得”的这个问题[4]。
2.师生用户体验优化问题。系统对用户体验做出了比较多的优化,总结为如下几点:①采用当前较为新的HTML5 UI作为界面元素,无论是界面风格、字体还是图标设计看上去都令人舒服。②系统的大部分操作都使用Ajax(Asynchronous Javascript And XML)异步处理的技术,通过弹出层来进行各种操作,不需要刷新页面就能看到修改后的效果,让用户感觉方便和友好[5]。
3.桌上电脑和移动端同时兼容的问题。为了同时兼容桌上个人电脑端和移动端,能让教师或者学生出门在外或者不在电脑旁都能登录系统完成自己需要的操作,本系统实现了PC和移动端的兼容。系统的页面可以根据屏幕的宽度来调节相应的样式。本文只讨论了项目软件开发过程中遇到的几个问题和解决方案,借此与专家或有相关经验的开发者分享,项目中其他功能的具体实现过程不再一一列出,敬请批评和指正。
三、总结
毕业论文管理是学院教学管理与评价的一个重要组成部分。从在校大学生的角度看,只有认真对待论文写作,才能顺利完成学业,取得学士学位;从教育管理的角度看,毕业论文工作不仅能提高学生的专业知识水平,更能言传身教给学生科学研究的严谨态度和扎实的研究作风,并且可以使学生走向工作岗位后,能够掌握分析解决问题的基本原则,培养学生持之以恒、继续学习的良好思维品质。这才是大学教育中毕业论文工作的真正内涵。
参考文献:
[1]李海燕,俞金梅,等.高校本科毕业论文(设计)中存在的问题及解决途径[J].实验技术与管理,2012,29(12):141-144.
[2]李景荩呙文承等.基于MVC框架的系统重构方法研究与实践[J].电脑知识与技术,2015,11(22):63-66.
1引言
当今世界,信息化在各行业之间可以说随处可见了,一般信息化包括硬件和软件两大块,与硬件技术发展的快速和成熟相比,软件的开发技术和流程还远远不够完善,虽然软件各方面的技术已经比以前有很大改善,但现在软件技术和功能还不能很好满足当今软件的规模和要求。最近几年时间毕业论文ppt,软件技术不断推陈出新,尤其是Web方面的技术。本文接下来要讲述的FreeMarker和Struts2就是Web表现层的技术,结合这两个技术开发一个页面信息提示的插件,可以通过标签引入形式复用到任何需要的页面上,从而简化页面开发难度和提高程序复用性以及可维护性。
2FreeMarker概述
FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写,它被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序,可以通过它获取所需数据并生成页面,FreeMarker更适合作为Model2框架(如Struts2)的视图组件。下面图1显示了FreeMarker模板引擎的工作机,其中Template file 就是FreeMarker的一个模板,Java object是一个为模板提供数据的对象,最后通过FreeMarker引擎输出页面代码站。应该说FreeMarker功能是比较单一毕业论文ppt,就是负责提取底层数据生成文本并输出,不过它的以下一些特性使得它在Web程序中应用比较广泛,具体特性如下:
1)通用数据模型
FreeMarker不是直接反射到Java对象,Java对象通过插件式对象封装,以变量方式在模板中显示,可以使用抽象(接口)方式表示对象,告诉模板开发者使用方法,使其不受技术细节的打扰。
2)强大的模板语言
FreeMarker有自己的指令,使得模板有很强的控制能力,同时还有自己的命名空间避免名字的冲突。
3)简单的Web显示
分离可视化设计和应用程序逻辑,分离页面设计员和程序员。
4)强大的XML处理能力
用于递归遍历XML树,在模板中清楚和直接的访问XML对象模型。
图1 FreeMarker模板引擎工作机
3FreeMarker结合Struts2开发插件的过程
FreeMarker是一个功能很强的模板语言,可以直接通过它获取对象的数据。通过Struts2框架的插件扩展机制可以对模板进行封装制作成一个自己的插件,这样就可以在整个系统中使用。本文将以一个具体的例子来详细解析插件开发的过程及方法毕业论文ppt,同时简单阐述FreeMarker的原理机制和Struts2插件的使用方法,这个例子所要实现的功能是在页面弹出底层发送过来的各种消息,如:验证错误信息、逻辑错误信息、提示信息。整个插件的开发过程将分为模板编写、模板封装、插件配置、插件应用四步来解析说明。
3.1 模板编写
在这里,所有服务器抛出的信息将通过模板输出,FreeMarker具有很强的指令可以获取到业务模型的数据以及控制业务流程,比如<#list>命令可以遍历集合中的所有数据,<#if>是一个条件判断命令。下面我们给出了逻辑错误信息中的一段核心代码进行分析说明,以供理解和参考:
<#if parameters.msgtype == "error"><#t/>//根据参数判断信息类型
<#list actionErrors aserror><#t/>//遍历错误信息
<#assignmsg = "${msg}${error}
${parameters.msgsplit}"><#t/>//信息追加
</#list><#t/>
</#if><#t/>
${msg}//输出错误
以上就是模板编写的格式,编写完成以后保存为ftl后缀文件。FreeMarker包括指令、表达式、运算符、插补四大知识要点,详情可以查看相关资料说明站。
3.2 模板封装
模板写好以后,可以通过Struts2框架的插件机制对模板进行封装,从而使得页面能够以标签形式引用处理。模板封装有两步主要任务要完成,一是通过Struts2组件提供的UIBean接口实现FreeMarker模板所需的数据模型,二是继承AbstractUITag抽象类实现标签属性映射的接口。
实现UIBean核心代码的说明和参考如下:
public class Message extends UIBean {//继承抽象类
private static final String TEMPLATE ="message/error";//指定模板位置
protected String getDefaultTemplate() { returnTEMPLATE;}//复写方法
public void evaluateExtraParams(){addParameter(paraValue,paraName);}//设置参数值
}
实现AbstractUITag核心代码的说明和参考如下:
public class MessageTag extends AbstractUITag {//继承抽象类
public Component getBean()//复写方法指定组件
protected void populateParams() {//复写方法给组件设置参数值
super.populateParams();//调用父类方法
Message msg =(Message) this.component;//获取组件对象
msg.set ParaName(paraValue);//给组件设置参数值}
}
3.3插件配置
前面已经把信息提示插件的主要功能已经完成了毕业论文ppt,现在要做就是把前面各部分的功能元素通过配置文件进行关联起来组成为一个可用标签插件。这里主要有两个配置文件要完成:一是通过struts-plugin.xml登记插件,二是在tld 文件中配置标签属性。详细配置如下:
<beantype="org.apache.struts2.views.TagLibrary" name="message" //登记插件为message
class="org.message.struts2.views.MessageTagLibrary"/>
<tag>
<name>message</name>//指定标签名称
<tag-class>org.message.struts2.views.jsp.ui.MessageTag</tag-class>//指定标签处理类
<attribute>//标签属性配置
<name>paraName</name>//指定属性名称
<required>false</required>//是否一定要
</attribute>
</tag>
3.4插件应用
通过前面插件配置生成了一个message信息提示标签插件,只要把前面相应的mytags.tld标签配置文件引入到页面,就可以使用信息提示标签,具体一个实例应用如下:
<%@ taglib prefix="err" uri="/mytags"%>//通过taglib把信息标签引入到所需页面
<err:message/>//在页面任何一个地方可以使用该标签来显示服务器响应的提示信息
从上面代码可以看到,通过插件的形式显示信息提示,大大简化了代码的复杂度以及提高了代码的可复用性,同时也有利于代码的维护。
4结束语
本文简要的讲述了FreeMarker结合Struts2框架开发标签插件的基本过程,这是软件开发过程中的技巧设计之一,真正的软件开发是一个很复杂的过程,它可能需要很多优秀设计技巧才能开发出一个实用稳定的系统。
参考文献:
[1]李刚.Struts 2 权威指南.北京:电子工业出版社,2007.