本篇文章是接着Spring Boot 入门(五):集成 AOP 进行日志管理写的,主要集成了树形图,在部门列表或者权限列表中,树形图经常被用上。主要是根据相应的 API 凭借 html 字符串
1 < link href ="/plugins/treeTable/themes/default/treeTable.css" rel ="stylesheet" type ="text/css" />
2 < script src ="/plugins/treeTable/jquery.treeTable.min.js" type ="text/javascript" > script >
3 < script type ="text/javascript" >
4 $(document).ready( function () {});
5 script >
6
7 < div class ="row" >
8 < div class ="col-xs-12" >
9 < div class ="box" >
10 < div class ="box-header with-border" >
11 < button type ="button" class ="close" data-dismiss ="modal" aria-label ="Close" >
12 < span aria-hidden ="true" > × span >
13 button >
14 < h3 class ="box-title" > 选择部门h3 >
15 div >
16 < div class ="box-body" >
17 < table id ="tcXzqh_tab" class ="table table-striped table-bordered table-hover" >
18 < thead >
19 < tr >
20 < th > 部门编号th >
21 < th > 部门名称th >
22 < th > 上级部门编号th >
23 < th > 上级部门名称th >
24 tr >
25 thead >
26 < tbody >
27 tbody >
28 table >
29 div >
30 div >
31 div >
32 div >
33
34 < script >
35 var tcXzqh_tab;
36 function loadTcXzqhTable(){
37
38 $.ajax({
39 url: ' /admin/dept/spage ' ,
40 type: ' post ' ,
41 dataType: ' json ' ,
42 success: function (data) {
43 if (data != null ){
44 var html = "" ;
45 for ( var int = 0 ; int < data.resultData.length; int ++ ) {
46 var item = data.resultData[ int ];
47 if (item.hasChild == true ){
48 html +=
49 " " + item.xzqhbm + " : " + item.xzqh + " ')> " ;
50 } else {
51 html +=
52 " " + item.xzqhbm + " : " + item.xzqh + " ')> " ;
53 }
54 html +=
55 " " + item.xzqhbm + " " +
56 " " + item.xzqh + " " +
57 " " + item.pXzqhbm + " " +
58 " " + item.pXzqh + " " +
59 " " ;
60 }
61 $( " #tcXzqh_tab tbody " ).html(html);
62 initTcXzqh_treeTable();
63 }
64 // $("#loading").hide();
65 }
66 });
67 }
68 function initTcXzqh_treeTable(){
69 var option = {
70 /* theme:'vsStyle', *//* 这里的主题和引入的CSS有关 */
71 expandLevel : 2 ,
72 beforeExpand : function ($treeTable, id) {
73 // alert(id);
74 // 判断id是否已经有了孩子节点,如果有了就不再加载,这样就可以起到缓存的作用
75 if ($( ' . ' + id, $treeTable).length) { return ; }
76 // 这里的html可以是ajax请求
77 openHandleLoading();
78 var childHtml = "" ;
79 $.ajax({
80 url: ' /admin/dept/expand?parentId= ' + id,
81 type: ' post ' ,
82 dataType: ' json ' ,
83 success: function (data) {
84 // alert(data);
85 if (data != null ){
86 // var html = "";
87 for ( var int = 0 ; int < data.resultData.length; int ++ ) {
88 var item = data.resultData[ int ];
89
90 if (item.hasChild == true ){
91 childHtml +=
92 " " + item.xzqhbm + " : " + item.xzqh + " ')> " ;
93
94 } else {
95 childHtml +=
96 " " + item.xzqhbm + " : " + item.xzqh + " ')> " ;
97
98 }
99 childHtml +=
100 " " + item.xzqhbm + " " +
101 " " + item.xzqh + " " +
102 " " + item.pXzqhbm + " " +
103 " " + item.pXzqh + " " +
104 " " ;
105 }
106
107 }
108 $treeTable.addChilds(childHtml);
109 closeHandleLoading();
110 }
111 });
112 },
113 onSelect : function ($treeTable, id) {
114 // console.log('onSelect:' + id);
115 }
116
117 };
118
119 $( " #tcXzqh_tab " ).treeTable(option).show();
120 // $("#tcXzqh_tab").treeTable({expandLevel : 2,column:0}).show();
121 }
122 function _callback(chooseValue) {
123 /* alert(chooseValue); */
124 $( " #${inputId!} " ).val(chooseValue);
125 $( " #lgModal2 " ).modal( " hide " );
126 }
127 $( function () {
128 loadTcXzqhTable();
129 });
130
131 script >
首先引入相应的 JS 文件和样式文件
然后初始化列表界面
此部分对应的后台只需要返回一个 List 集合即可,用于初始化界面,其效果如下:
由于需要在展开节点的时候需要动态加载,所以需要实现 expend 方法
在展开节点的时候,需要根据父节点去查找其下级几点的信息,并返回给页面,实现动态加载树形图,其效果如下:
2.ztree
引入 JS 和 CSS 样式
1 < link rel ="stylesheet" href ="/plugins/ztree/css/zTreeStyle/zTreeStyle.css" type ="text/css" >
2 < script type ="text/javascript" src ="/plugins/ztree/js/jquery.ztree.core.js" > script >
3 < script type ="text/javascript" src ="/plugins/ztree/js/jquery.ztree.excheck.js" > script >
编写一个div,用于存放树形图
1 < div class ="form-group clearfix" >
2 < label id ="parentdmLabel" class ="col-sm-2 control-label" style ="text-align:right" > 菜单权限label >
3 < div class ="col-sm-10" >
4 < div id ="treeDemoUpdate" class ="ztree" > div >
5 div >
6 div >
JS部分代码
1 < SCRIPT type ="text/javascript" >
2 var setting = {
3 check: {
4 enable: true
5 },
6 data: {
7 simpleData: {
8 enable: true
9 }
10 },
11 callback: {
12 beforeCheck: true ,
13 onCheck:zTreeOnClick
14 }
15 };
16 var zNodes ;
17 var code;
18 function setCheck() {
19 var zTree = $.fn.zTree.getZTreeObj( " treeDemoUpdate " ),
20 type = { " Y " : " ps " , " N " : " ps " };
21 zTree.setting.check.chkboxType = type;
22 showCode( ' setting.check.chkboxType = { "Y" : " ' + type.Y + ' ", "N" : " ' + type.N + ' " }; ' );
23 }
24 function showCode(str) {
25 if ( ! code) code = $( " #code " );
26 code.empty();
27 code.append( " " + str + " " );
28 }
29 $(document).ready( function () {
30 $.ajax({
31 url: ' /admin/role/roleUpdateTree?roleId= ' + ${tRole.roleId},
32 type: ' post ' ,
33 async: false ,
34 dataType: ' json ' ,
35 success: function (data) {
36 zNodes = data;
37 }
38 });
39 $.fn.zTree.init($( " #treeDemoUpdate " ), setting, zNodes);
40 setCheck();
41 /* $("#py").bind("change", setCheck);
42 $("#sy").bind("change", setCheck);
43 $("#pn").bind("change", setCheck);
44 $("#sn").bind("change", setCheck); */
45 });
46
47 function zTreeOnClick(event, treeId, treeNode) {
48 var treeObj = $.fn.zTree.getZTreeObj( " treeDemoUpdate " );
49 var nodes = treeObj.getCheckedNodes( true );
50 var ids = "" ;
51 for ( var i = 0 ; i < nodes.length; i ++ ) {
52 ids += nodes[i].id + " , " ;
53 }
54 // console.log(ids.substring(0,ids.length-1));
55 $( " #permissionIds " ).val(ids.substring( 0 ,ids.length - 1 ));
56 }
57 SCRIPT >
你可能感兴趣的:(Spring Boot 入门(六):集成 treetable 和 zTree 实现树形图)
并发编程核心技术
我是廖志伟
Java场景面试宝典 Concurrency Java Multithreading
我是廖志伟,一名Java开发工程师、《Java项目实战——深入理解大型互联网企业通用技术》(基础篇)、(进阶篇)、(架构篇)清华大学出版社签约作家、Java领域优质创作者、CSDN博客专家、阿里云专家博主、51CTO专家博主、产品软文专业写手、技术文章评审老师、技术类问卷调查设计师、幕后大佬社区创始人、开源项目贡献者。拥有多年一线研发和团队管理经验,研究过主流框架的底层源码(Spring、Spri
ShardingSphere技术解析
我是廖志伟,一名Java开发工程师、《Java项目实战——深入理解大型互联网企业通用技术》(基础篇)、(进阶篇)、(架构篇)清华大学出版社签约作家、Java领域优质创作者、CSDN博客专家、阿里云专家博主、51CTO专家博主、产品软文专业写手、技术文章评审老师、技术类问卷调查设计师、幕后大佬社区创始人、开源项目贡献者。拥有多年一线研发和团队管理经验,研究过主流框架的底层源码(Spring、Spri
并发编程与MyBatis核心解析
我是廖志伟
Java场景面试宝典 Concurrent Programming Java MyBatis
我是廖志伟,一名Java开发工程师、《Java项目实战——深入理解大型互联网企业通用技术》(基础篇)、(进阶篇)、(架构篇)清华大学出版社签约作家、Java领域优质创作者、CSDN博客专家、阿里云专家博主、51CTO专家博主、产品软文专业写手、技术文章评审老师、技术类问卷调查设计师、幕后大佬社区创始人、开源项目贡献者。拥有多年一线研发和团队管理经验,研究过主流框架的底层源码(Spring、Spri
闪闪发光的日子
网中的水滴
昨天上午结束网课后,陪着嘉嘉一起下楼去进行体育锻炼。刚开始的时候,他的心情很不爽,原因很简单,因为不允许他登录QQ和朋友们聊天。我们的理由也很简单,必须要学会保护眼睛,尤其是上了两个半小时的网课之后,尤其是对于一个视力已经很糟糕的学生来说。貌似这一点他无法反驳,于是,他便提起了另一件极其不爽的事情:他的QQ完全被母亲掌控着,他没有时间和朋友们QQ聊天,甚至朋友们发过来的信息还被母亲代笔回复,为此,
互联网大厂java求职者面试
我是廖志伟
Java场景面试宝典 java 八股文 面试 求职 Java
我是廖志伟,一名Java开发工程师,清华大学出版社签约作家、Java领域优质创作者、CSDN博客专家、阿里云专家博主、51CTO专家博主、产品软文专业写手、技术文章评审老师、技术类问卷调查设计师、幕后大佬社区创始人、开源项目贡献者。拥有多年一线研发和团队管理经验,研究过主流框架的底层源码(Spring、SpringBoot、SpringMVC、SpringCloud、Mybatis、Dubbo、Z
思途html学习 0717
Asu5202
html 学习 前端
1.HTML基础概述HTML定义:超文本标记语言(HyperTextMarkupLanguage),用于创建网页结构。“超文本”指支持嵌入图像、音频、视频和脚本等非文本内容。编辑器推荐:VSCode、HBuilderX或IDEA都很实用。安装VSCode后,添加LiveServer插件(通过Extensions搜索安装),能实现实时预览网页(快捷键:Ctrl+S保存后自动刷新)。核心特性:空白处理
session与cookie的区别
小高Baby@
服务器 计算机网络
Cookie数据保存在客户端(你的设备),而Session数据保存在服务器端。Cookie相对来说不够安全,因为别人可以访问你的设备来获取Cookie信息;而Session数据保存在服务器上,只有服务器能访问。每个域名下的cookie数量和大小都有限制(通常每个cookie不超过4KB,每个域名约20-50个cookie),cookie不适合存储大量数据;session由服务器端存储,理论上没有严
思途JAVA学习0716
Asu5202
java idea
1.环境设置Java开发需要安装JDK(JavaDevelopmentKit),它包含JRE(JavaRuntimeEnvironment)和开发工具。设置环境变量是关键步骤:JAVA_HOME:指向JDK安装目录,例如C:\ProgramFiles\Java\jdk-21。Path:添加%JAVA_HOME%\bin,以便在命令行中直接使用java和javac命令。验证安装:在命令行输入java
国培培训学习心得体会
三元日记
2021年底,我有幸参加了河南师范大学组织的国培计划(党支部书记培训)。因疫情原因,此次培训分线下和线上两个阶段进行。现简要分享一下学习心得。1线下培训因疫情原因,我没能前往新乡参加两天的线下培训,但通过微信群里大家的信息交流,我深刻地感受到了此次培训的组织有序,扎实安排,以及同志们饱满的学习热情。这些都深深地打动着我,故我每天关注学习进度,下载学习培训内容,尽量跟上学习的步伐,以弥补不能亲历现场
李克富 || 培训从“吸吮手指”开始
李克富
昨天上午赶到济南,下午启动仪式后晚上即开启了为武警边防山东总队心理咨询师的培训。这次部队首长明确指示,必须切实解决有关“如何”的问题,比如围绕部队改革中官兵出现的心理波动如何进行心理调试?如何面对改革后可能出现的心理落差?改革后如何制定职业规划?另外,还得通过案例分析和实践演练的方式,教会部队的咨询师们具体的案例处理,诸如婚姻关系问题、亲子关系问题、同事关系问题、突遇家庭变故问题、工作压力大的问题
疫情?末日博士?特朗普?什么决定了70年美元霸权或在2020年终结
朴一吹
【1】2019年8月19日,全美226名著名经济学家接受了NABE(美国全国经济商业协会)的采访,38%的专家认为美国经济将从2020年开始衰退。在美国,经济专家中的“利益相关者”甚多,近4成的看空表态,已经是相当吓人的数据了。上世纪50年代,美国和中东石油大国签署了永久协议,从那以后任何国家想买中东石油,都必须通过美元结算。美元霸权的这70年,就是全世界给美国打工的70年。美元霸权,有另一个直白
小猴子摘桃
5285cd5b6ce6
图片发自App一天早晨,天气晴朗,猴哥哥和猴弟弟到河边玩,清澈见底的小河唱着歌流向远方。他俩发现河对岸是一片桃园,茂盛的桃树上结着又大又红的桃子,馋得他俩垂涎三尺,猴弟弟说:“哥哥,我们去摘几个桃子吧!”猴哥哥说:“河上没有桥,我们得想个办法法过河。”他想了一会儿,拽着弟弟就往家跑,原来是回家搬大木盆当小船,还找来一根竹竿做船桨,这样他们就滑着小船过了河,他们摘了很多又大又红的桃子,高兴极了!
什么是java
IT界小新学姐
Java属于一种计算机语言,计算机语言的种类非常多,总的来说可以分成机器语言、汇编语言、高级语言三大类。Java是一种高级计算机语言。Java是由SunMicrosystems在1995年首先发布的编程语言和计算平台。有许多应用程序和Web站点只有在安装Java后才能正常工作,而且这样的应用程序和Web站点日益增多。Java快速、安全、可靠。从笔记本电脑到数据中心,从游戏控制台到科学超级计算机,从
一波未平 一波又起
空空玥
真的不知道发小找的什么老公,当初啥眼神。不赚钱养家就算了,本事不大脾气不小。去年朋友意外怀孕了双胞胎,因为他们儿子已经四五岁了,然后压力挺大就没要。刚朋友发信息说又怀孕了,因为这个问题和老公吵架了,老公让她滚,昨晚在店里睡了一夜。我真的不知道他哪里来的勇气还敢要二胎,自己啥情况心里没数吗。生老大,我朋友全职三年,少了一屁股债。他自己是一年有半年没上班,五个月找工作一个月工作,发了工资还要补社保。年
无意识现象
dear心理咨询师黄倩雯
我希望能以少语言尽可能明白的解释无异议整数与在精神分析中意义,并且仅限于这精神分析中的意义。一个出现在意识中的概念和任何其他心理因素,过一会儿就可能消失,再过一段时间,这又可能重新出现。因此我们说他在记忆中并没有发生变化,他的再度出现并不是我们感官重新感觉的结果。为这一点,我们习惯于这样解释假定在一定的时间里纪念只存在于心中,却潜伏在意识里。至于他这样做时采取了什么形式,我们都无法猜测。这是在这点
莆田鞋正确拿货方式是什么?推荐十个拿货渠道
美表之家
莆田鞋正确拿货方式是什么?推荐十个拿货渠道莆田鞋是指产自福建省莆田市的高仿名牌运动鞋。由于其外观和质量都与真品相当接近,因此深受不少消费者欢迎。但同时,也存在一定的风险。那么,正确的拿货方式是什么?以下将提供十个推荐的拿货渠道。微信:374111303(下单赠送精美礼品)接下来,推荐十个拿货渠道:1.莆田实体市场:如华侨鞋城、祥鞋城等,这里是莆田鞋的源头,种类齐全,价格合理。2.微商:一些微商也会
html css js网页制作成品——HTML+CSS中国古代物理 - 中华优秀传统文化网页设计(4页)附源码
软件技术NINI
网页源码 html css javascript
目录一、网站题目二、✍️网站描述三、网站介绍四、网站效果五、代码实现HTML
卷积神经网络-数据增强
红米煮粥
cnn 人工智能 神经网络
文章目录一、概述二、数据增强的类别1.裁剪2.翻转和旋转3.随机遮挡4.图像变换5.对transforms的选择操作,使数据增强更灵活三、应用场景四、总结一、概述数据增强(也叫数据扩增)的目的是为了扩充数据和提升模型的泛化能力。有效的数据扩充不仅能扩充训练样本数量,还能增加训练样本的多样性,一方面可避免过拟合,另一方面又会带来模型性能的提升。二、数据增强的类别1.裁剪中心裁剪:transforms
详解Linux(Ubuntu/RedHat/CentOS)及国产服务器统一加域管理方案
本期内容将通过一个实际案例讲清楚数据中心服务器身份认证场景的痛点及宁盾身份域管在其中的作用和价值。很多行业,像金融、运营商,还有那些关系国计民生的服务单位,均会受到监管制度统一要求,对数据中心的服务器执行定期修改口令、统一身份认证和MFA多因素认证。另外,等保、密评同样要求对服务器运维进行安全管控。但一般数据中心服务器规模较大,存在各种管理乱象,如:1.各种Linux,如Ubuntu、Redhat
深度学习模型开发部署全流程:以YOLOv11目标检测任务为例
你喜欢喝可乐吗?
deep learning deploy 深度学习 YOLO 目标检测
深度学习模型开发部署全流程:以YOLOv11目标检测任务为例深度学习模型从开发到部署的完整流程包含需求分析、数据准备、模型训练、模型优化、模型测试和部署运行六大核心环节。YOLOv11作为新一代目标检测模型,不仅延续了YOLO系列的高效实时性能,还在检测精度和泛化能力上取得显著突破,使其成为工业质检、安防监控、自动驾驶等领域的理想选择。本文将详细阐述这一完整流程,并结合YOLOv11的具体实现,提
坚持地努力
旦旦日记
很享受这种在家的感觉。昨天上午出去跑了一圈,下午和晚上都是在家里工作,学习电商。同一件事情,让不同阶段的自己来做,效果是大大的不一样。就像我这次重新拾起淘宝,几乎就等于拾起最后一根稻草的感觉,不管你想不想学好、能不能学好,结果是你都得必须学好。因为一家子就指靠着这个生活呢,我特意在书桌上摆了珺祎的四罐奶粉,一扭头就能看到,就是为了时刻提醒自己挣奶粉钱。虽然说现在浙江业务的收入来源足够保证我们这一大
服务器清理空间--主要是conda环境清理和删除
1.查看空间情况(base)zhouy24@RL-DSlab:~/zhouy24Files$df-hFilesystemSizeUsedAvailUse%Mountedonudev252G0252G0%/devtmpfs51G4.9M51G1%/run/dev/nvme0n1p31.9T1.7T42G98%/tmpfs252G800M252G1%/dev/shmtmpfs5.0M4.0K5.0M1
K8S的Helm包管理器
程序员Rocky
运维 DevOps k8s kubernetes docker 容器 helm helm安装包
一、背景官网:https://helm.sh/我们针对K8S环境中,部署对应的应用,无外乎就是编写一堆yaml资源清单文件.资源清单、依赖性少的时候,可以直接手动维护。但是,随着资源清单越来越复杂,越来越多,不同的环境切换不同的资源清单配置,如果还是手动维护,那将会是一场运维灾难。没有Helm之前的问题:1、手动管理YAML文件:需要手动编写和维护大量YAML文件,容易出错2、缺乏标准化:各团队有
2021-07-19
大步走起来
知世故而不世故,是最成熟的天真。少年不惧岁月长,歌声温柔,内心明亮。愿你永远赤诚、简单,为自己保留一份初心和纯粹。愿你既有大人的成熟,也能有孩子的烂漫。愿你生活不拥挤,笑容不刻意。知世故而不世故,历圆滑而留天真。
ShardingSphere 架构解析
我是廖志伟
Java场景面试宝典 Database Distributed Systems ShardingSphere
我是廖志伟,一名Java开发工程师、《Java项目实战——深入理解大型互联网企业通用技术》(基础篇)、(进阶篇)、(架构篇)清华大学出版社签约作家、Java领域优质创作者、CSDN博客专家、阿里云专家博主、51CTO专家博主、产品软文专业写手、技术文章评审老师、技术类问卷调查设计师、幕后大佬社区创始人、开源项目贡献者。拥有多年一线研发和团队管理经验,研究过主流框架的底层源码(Spring、Spri
肉肉学习记录-想要改变的动力 F6
肉肉的天下
我是肉肉,坚信个人的力量能带给身边的人无穷的能量。励志坚持写作,将肉肉的成长和正向积极的价值人生分享给身边的朋友,赋能朋友圈。这是我的原创文章第6篇。阅读《不吼不叫》这本书中,收获了非常深刻的一句话:让你决定改变的时候,就已经是送给家人和自己最好的礼物了。图片发自App是的,我们曾经一直认为,我们应该维持自己原本的样子,不应该为了谁去改变我们自己,这样不值得,也不应该。所以,当我们试图改变孩子、家
众趣SDK重磅升级:空间物联IOT新视界,赋能实景三维场景深度应用
zhongqu_3dnest
物联网 3d 点云处理 人工智能 计算机视觉 点云扫描
近日,空间数字孪生云服务行业领导者—众趣科技宣布旗下核心产品云服务平台QverseSDK迎来里程碑式升级!本次升级聚焦行业前沿需求,重磅推出IoT设备监控系统、iframe跨平台页面无缝集成、BI数据智能三大解决方案,旨在将三维空间计算能力转化为更强大、更易用的生产力工具,为企业用户和开发者构建下一代空间数字化应用提供坚实底座。一、IoT空间物联,让设备运行尽在掌控痛点解决:告别传统分散的设备管理
预测导管原位癌浸润性复发的深度学习:利用组织病理学图像和临床特征
浪漫的诗人
论文 深度学习 人工智能
文章目录研究内容目的方法数据集模型开发模型训练与评估外部验证统计分析研究结果模型性能风险分层外部验证特征重要性原文链接原文献:Deeplearningforpredictinginvasiverecurrenceofductalcarcinomainsitu:leveraginghistopathologyimagesandclinicalfeatures研究背景【DCIS与IBC的关联】乳腺导管
Python类中魔术方法(Magic Methods)完全指南:从入门到精通
盛夏绽放
python 开发语言
文章目录Python类中魔术方法(MagicMethods)完全指南:从入门到精通一、魔术方法基础1.什么是魔术方法?2.魔术方法的特点二、常用魔术方法分类详解1.对象创建与初始化2.对象表示与字符串转换3.比较运算符重载4.算术运算符重载5.容器类型模拟6.上下文管理器7.可调用对象三、高级魔术方法1.属性访问控制2.描述符协议3.数值类型转换四、魔术方法最佳实践五、综合案例:自定义分数类Pyt
【中项第三版】系统集成项目管理工程师 | 第 7 章 软硬件系统集成
Jackilina_Stone
# 系统集成项目管理工程师 中项 第3版 软考中级
前言第7章对应的内容选择题和案例分析都可能会进行考查,学习要以教材为准。目录7.1系统集成基础7.2基础设施集成7.2.1弱电工程7.2.2网络集成1传输子系统2交换子系统3网管子系统4安全子系统5服务子系统7.2.3数据中心集成7.3软件集成7.3.1基础软件集成7.3.2应用软件集成7.3.3其他软件集成7.4业务应用集成7.5本章练习7.1系统集成基础软硬件系统集成是以信息的集成为目标,功能
linux系统服务器下jsp传参数乱码
3213213333332132
java jsp linux windows xml
在一次解决乱码问题中, 发现jsp在windows下用js原生的方法进行编码没有问题,但是到了linux下就有问题, escape,encodeURI,encodeURIComponent等都解决不了问题
但是我想了下既然原生的方法不行,我用el标签的方式对中文参数进行加密解密总该可以吧。于是用了java的java.net.URLDecoder,结果还是乱码,最后在绝望之际,用了下面的方法解决了
Spring 注解区别以及应用
BlueSkator
spring
1. @Autowired
@Autowired是根据类型进行自动装配的。如果当Spring上下文中存在不止一个UserDao类型的bean,或者不存在UserDao类型的bean,会抛出 BeanCreationException异常,这时可以通过在该属性上再加一个@Qualifier注解来声明唯一的id解决问题。
2. @Qualifier
当spring中存在至少一个匹
printf和sprintf的应用
dcj3sjt126com
PHP sprintf printf
<?php
printf('b: %b <br>c: %c <br>d: %d <bf>f: %f', 80,80, 80, 80);
echo '<br />';
printf('%0.2f <br>%+d <br>%0.2f <br>', 8, 8, 1235.456);
printf('th
config.getInitParameter
171815164
parameter
web.xml
<servlet>
<servlet-name>servlet1</servlet-name>
<jsp-file>/index.jsp</jsp-file>
<init-param>
<param-name>str</param-name>
Ant标签详解--基础操作
g21121
ant
Ant的一些核心概念:
build.xml:构建文件是以XML 文件来描述的,默认构建文件名为build.xml。 project:每个构建文
[简单]代码片段_数据合并
53873039oycg
代码
合并规则:删除家长phone为空的记录,若一个家长对应多个孩子,保留一条家长记录,家长id修改为phone,对应关系也要修改。
代码如下:
java 通信技术
云端月影
Java 远程通信技术
在分布式服务框架中,一个最基础的问题就是远程服务是怎么通讯的,在Java领域中有很多可实现远程通讯的技术,例如:RMI、MINA、ESB、Burlap、Hessian、SOAP、EJB和JMS等,这些名词之间到底是些什么关系呢,它们背后到底是基于什么原理实现的呢,了解这些是实现分布式服务框架的基础知识,而如果在性能上有高的要求的话,那深入了解这些技术背后的机制就是必须的了,在这篇blog中我们将来
string与StringBuilder 性能差距到底有多大
aijuans
之前也看过一些对string与StringBuilder的性能分析,总感觉这个应该对整体性能不会产生多大的影响,所以就一直没有关注这块!
由于学程序初期最先接触的string拼接,所以就一直没改变过自己的习惯!
今天碰到 java.util.ConcurrentModificationException 异常
antonyup_2006
java 多线程 工作 IBM
今天改bug,其中有个实现是要对map进行循环,然后有删除操作,代码如下:
Iterator<ListItem> iter = ItemMap.keySet.iterator();
while(iter.hasNext()){
ListItem it = iter.next();
//...一些逻辑操作
ItemMap.remove(it);
}
结果运行报Con
PL/SQL的类型和JDBC操作数据库
百合不是茶
PL/SQL表 标量类型 游标 PL/SQL记录
PL/SQL的标量类型:
字符,数字,时间,布尔,%type五中类型的
--标量:数据库中预定义类型的变量
--定义一个变长字符串
v_ename varchar2(10);
--定义一个小数,范围 -9999.99~9999.99
v_sal number(6,2);
--定义一个小数并给一个初始值为5.4 :=是pl/sql的赋值号
Mockito:一个强大的用于 Java 开发的模拟测试框架实例
bijian1013
mockito 单元测试
Mockito框架:
Mockito是一个基于MIT协议的开源java测试框架。 Mockito区别于其他模拟框架的地方主要是允许开发者在没有建立“预期”时验证被测系统的行为。对于mock对象的一个评价是测试系统的测
精通Oracle10编程SQL(10)处理例外
bijian1013
oracle 数据库 plsql
/*
*处理例外
*/
--例外简介
--处理例外-传递例外
declare
v_ename emp.ename%TYPE;
begin
SELECT ename INTO v_ename FROM emp
where empno=&no;
dbms_output.put_line('雇员名:'||v_ename);
exceptio
【Java】Java执行远程机器上Linux命令
bit1129
linux命令
Java使用ethz通过ssh2执行远程机器Linux上命令,
封装定义Linux机器的环境信息
package com.tom;
import java.io.File;
public class Env {
private String hostaddr; //Linux机器的IP地址
private Integer po
java通信之Socket通信基础
白糖_
java socket 网络协议
正处于网络环境下的两个程序,它们之间通过一个交互的连接来实现数据通信。每一个连接的通信端叫做一个Socket。一个完整的Socket通信程序应该包含以下几个步骤:
①创建Socket;
②打开连接到Socket的输入输出流;
④按照一定的协议对Socket进行读写操作;
④关闭Socket。
Socket通信分两部分:服务器端和客户端。服务器端必须优先启动,然后等待soc
angular.bind
boyitech
AngularJS angular.bind AngularJS API bind
angular.bind 描述: 上下文,函数以及参数动态绑定,返回值为绑定之后的函数. 其中args是可选的动态参数,self在fn中使用this调用。 使用方法: angular.bind(se
java-13个坏人和13个好人站成一圈,数到7就从圈里面踢出一个来,要求把所有坏人都给踢出来,所有好人都留在圈里。请找出初始时坏人站的位置。
bylijinnan
java
import java.util.ArrayList;
import java.util.List;
public class KickOutBadGuys {
/**
* 题目:13个坏人和13个好人站成一圈,数到7就从圈里面踢出一个来,要求把所有坏人都给踢出来,所有好人都留在圈里。请找出初始时坏人站的位置。
* Maybe you can find out
Redis.conf配置文件及相关项说明(自查备用)
Kai_Ge
redis
Redis.conf配置文件及相关项说明
# Redis configuration file example
# Note on units: when memory size is needed, it is possible to specifiy
# it in the usual form of 1k 5GB 4M and so forth:
#
[强人工智能]实现大规模拓扑分析是实现强人工智能的前奏
comsci
人工智能
真不好意思,各位朋友...博客再次更新...
节点数量太少,网络的分析和处理能力肯定不足,在面对机器人控制的需求方面,显得力不从心....
但是,节点数太多,对拓扑数据处理的要求又很高,设计目标也很高,实现起来难度颇大...
记录一些常用的函数
dai_lm
java
public static String convertInputStreamToString(InputStream is) {
StringBuilder result = new StringBuilder();
if (is != null)
try {
InputStreamReader inputReader = new InputStreamRead
Hadoop中小规模集群的并行计算缺陷
datamachine
mapreduce hadoop 并行计算
注:写这篇文章的初衷是因为Hadoop炒得有点太热,很多用户现有数据规模并不适用于Hadoop,但迫于扩容压力和去IOE(Hadoop的廉价扩展的确非常有吸引力)而尝试。尝试永远是件正确的事儿,但有时候不用太突进,可以调优或调需求,发挥现有系统的最大效用为上策。
-----------------------------------------------------------------
小学4年级英语单词背诵第二课
dcj3sjt126com
english word
egg 蛋
twenty 二十
any 任何
well 健康的,好
twelve 十二
farm 农场
every 每一个
back 向后,回
fast 快速的
whose 谁的
much 许多
flower 花
watch 手表
very 非常,很
sport 运动
Chinese 中国的
自己实践了github的webhooks, linux上面的权限需要注意
dcj3sjt126com
github webhook
环境, 阿里云服务器
1. 本地创建项目, push到github服务器上面
2. 生成www用户的密钥
sudo -u www ssh-keygen -t rsa -C "
[email protected] "
3. 将密钥添加到github帐号的SSH_KEYS里面
3. 用www用户执行克隆, 源使
Java冒泡排序
蕃薯耀
冒泡排序 Java冒泡排序 Java排序
冒泡排序
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2015年6月23日 10:40:14 星期二
http://fanshuyao.iteye.com/
Excle读取数据转换为实体List【基于apache-poi】
hanqunfeng
apache
1.依赖apache-poi
2.支持xls和xlsx
3.支持按属性名称绑定数据值
4.支持从指定行、列开始读取
5.支持同时读取多个sheet
6.具体使用方式参见org.cpframework.utils.excelreader.CP_ExcelReaderUtilTest.java
比如:
Str
3个处于草稿阶段的Javascript API介绍
jackyrong
JavaScript
原文:
http://www.sitepoint.com/3-new-javascript-apis-may-want-follow/?utm_source=html5weekly&utm_medium=email
本文中,介绍3个仍然处于草稿阶段,但应该值得关注的Javascript API.
1) Web Alarm API
&
6个创建Web应用程序的高效PHP框架
lampcy
Web 框架 PHP
以下是创建Web应用程序的PHP框架,有coder bay网站整理推荐:
1. CakePHP
CakePHP是一个PHP快速开发框架,它提供了一个用于开发、维护和部署应用程序的可扩展体系。CakePHP使用了众所周知的设计模式,如MVC和ORM,降低了开发成本,并减少了开发人员写代码的工作量。
2. CodeIgniter
CodeIgniter是一个非常小且功能强大的PHP框架,适合需
评"救市后中国股市新乱象泛起"谣言
nannan408
首先来看百度百家一位易姓作者的新闻:
三个多星期来股市持续暴跌,跌得投资者及上市公司都处于极度的恐慌和焦虑中,都要寻找自保及规避风险的方式。面对股市之危机,政府突然进入市场救市,希望以此来重建市场信心,以此来扭转股市持续暴跌的预期。而政府进入市场后,由于市场运作方式发生了巨大变化,投资者及上市公司为了自保及为了应对这种变化,中国股市新的乱象也自然产生。
首先,中国股市这两天
页面全屏遮罩的实现 方式
Rainbow702
html css 遮罩 mask
之前做了一个页面,在点击了某个按钮之后,要求页面出现一个全屏遮罩,一开始使用了position:absolute来实现的。当时因为画面大小是固定的,不可以resize的,所以,没有发现问题。
最近用了同样的做法做了一个遮罩,但是画面是可以进行resize的,所以就发现了一个问题,当画面被reisze到浏览器出现了滚动条的时候,就发现,用absolute 的做法是有问题的。后来改成fixed定位就
关于angularjs的点滴
tntxia
AngularJS
angular是一个新兴的JS框架,和以往的框架不同的事,Angularjs更注重于js的建模,管理,同时也提供大量的组件帮助用户组建商业化程序,是一种值得研究的JS框架。
Angularjs使我们可以使用MVC的模式来写JS。Angularjs现在由谷歌来维护。
这里我们来简单的探讨一下它的应用。
首先使用Angularjs我
Nutz--->>反复新建ioc容器的后果
xiaoxiao1992428
DAO mvc IOC nutz
问题:
public class DaoZ {
public static Dao dao() { // 每当需要使用dao的时候就取一次
Ioc ioc = new NutIoc(new JsonLoader("dao.js"));
return ioc.get(