- 博客(38)
- 资源 (4)
- 收藏
- 关注
原创 Web开发学习13聊聊java反射
[size=large]很喜欢一本叫《走出软件作坊》的书,其中有一句话让我较为深刻,“架构师,客户和程序员之间走钢丝的人”,一个优秀的程序员过单行线都会左右都看看,更何况一个架构师肯定是需要非常谨慎的。那怎么样才能做到谨慎呢?在我看来对于架构师的谨慎其实就是一句话:不要让程序员写原本不应该是他写的代码,这句话说的好像有点抽象,但其实很好理解,就是尽可能让程序员的代码变的少,这样不但开发起来效率快,...
2016-07-12 18:41:43
136
原创 Web开发学习12 浅谈设计模式
[size=large] 在我刚接触程序的时候我觉得设计模式没啥用,只要能解决问题完成任务找得到工作拿得到工资就行了,后来编码一段时间我又感觉设计模式主要对那些搭建框架的大牛有用,再后来我又感觉其实大部分需要用到设计模式的编码spring已经帮我们完成了,我们在ssh框架中完成自己的业务就行了,设计模式对我还是没那么重要,再后来我发现其实我一直在使用设计模式只是我自己不知道而已,...
2016-07-01 13:33:55
329
原创 Web开发学习11 全局缓存控制
缓存用的好可以减少数据库的压力,在大并发的情况下极大的提升服务器的性能,理论上缓存数据类型是按越接近用户端为最优先的,意思就是如果在web项目中满足业务需求的情况下优先备份html页面->业务处理层->数据获取层,备份html页面很常见,比如新闻中心的新闻详情页会事先根据录入的数据创建静态化页面,从而提高客户端访问速度.这种情况针对页面数据比较单一或者改动比较少的情况是比较好的,但如果改动多的话每...
2015-10-12 14:27:19
177
原创 Web开发学习10 hadoop实战
前一篇说到项目记录了很多埋点日志,当有一天项目需求需要对这些日志做分析时那hadoop就是一把好手了,下面简单介绍下用java调用hadoop分布式计算的例子首先我们需要做hadoop配置[code="java"]public static Configuration getConf(){ Configuration conf = new Configuration();...
2015-10-09 14:02:26
235
原创 Web开发学习(9)全局埋点
[size=large]埋点的作用是把客户端每次访问服务端的操作记录下来,包括请求连接 请求者ip 请求参数 请求结果等等,以便于在出现异常的情况下排查,在用户量庞大的情况下还可以对这些记录做数据分析.这个功能我还是坚持一直以来的原则,一次封装终身受用,使用拦截器的方式全局做埋点记录.首先创建一个注解类,这个注解类的作用是在action方法上标注当前方法的中文信息,记录到日志以后有便于查阅...
2015-07-27 11:10:28
683
原创 Web开发学习8Struts2基类封装
[size=large]一个好的基类可以帮助开发者减少很多开发工作,像我这种爱偷懒的人比较喜欢在这方面较真,项目需求和时间计划出来后工作进度就靠个人效率了,如果不花点时间把重复的劳动工作封装一下,那经常加班加点也怨不得别人.今天分享下我专为ajax访问封装的action基类,依然用的全注解方式,主要使用基于泛型的模板模式实现;先来看下类头吧[/size][code="java"]@Re...
2015-07-24 12:03:08
124
原创 Web开发学习7按钮级别权限控制
[size=large]这个功能的思路是自己原创的,没看过其他例子,其实是在做之前网上搜了很多也没个可以参考的例子.主要技术是后台springsecurity做拦截判断,前台Extjs4做按钮动态渲染.如果你不了解springsecrity,那你可以先看下我的另一篇相关博客[b]创建数据库表(liqiubase方式创建看上一篇)[/b] [/size][code="xml"] ...
2015-07-23 16:21:19
983
原创 Web开发学习6添加liqiubase
[size=large]开发过程中经常碰到数据库更改的情况,在日常环境下如果每位开发人员连接的都是同一个库,那问题不算太大,修改代码上传后仅需修改该公共库即可,但是如果连的是本地个人的库那必须要把修改的sql语句发给其他开发者各自进行修改,这个工作是非常繁琐的;liqiubase帮我们做了这些事情,通过xml配置的方式来增加修改表,添加数据等等操作,下面直接进入配置代码示例首先需引入l...
2015-07-22 14:29:07
461
原创 浅列JavaEnum
[code="java"]enum Province{ ZHEJIANG,SHANGHAI,JIANGSU }[/code]Province是一个最简单枚举类,它内部有三个指向它实例包括江浙沪枚举类的特点就是它的所有实例都是在它内部生长的,并都是由编译器创建生成的Province.values() //返回Province所有实例的数组[ZHEJIANG,SHANGHAI,JI...
2014-01-05 16:42:09
137
原创 maven常用命令
1、创建普通Java项目: mvn archetype:create -DgroupId=[your project's group id] -DartifactId=[your project's artifact id] 2、创建WEB项目: mvn archetype:create -DgroupId=[your project's group id] -Da...
2013-07-08 10:20:51
124
原创 canvas绘制当前时间时钟
[code="html"] html5 clock var clockCanvas = document.getElementById("clock"); var c = clockCanvas.getContext("2d"); function clock(){ var date = new Date(...
2013-03-27 17:27:36
287
原创 canvas绘制科赫雪花
[code="html"] JS var deg = Math.PI/180; function snowflake(c, n, x, y, len) { c.save(); // Save current transformation c.translate(x,y); // T...
2012-12-20 17:24:01
297
原创 html5 audio与video方法属性事件概括
[size=large]play() 继续播放pause() 暂停播放pause 是否暂停currentTime 定点播放seeking 是否正在跳播ended 是否结束volume 音量 0-1之前muted 静音duration 总时长initialTime 定位开始播放时间played 已播放的时间段buffered 已经缓冲的时间段see...
2012-12-20 14:46:22
169
原创 spring 整合mina
首先定义自定义过滤器[code="xml"] [/code]KaiComCodecFactory.java[code="java"]public class KaiComCodecFactory implements ProtocolCodecFactory...
2012-12-20 11:48:17
153
原创 关于IE8开发人员工具透明无法显示的问题
重装了N次,倒腾了一上午总算有所心得,我的是双屏,首先F12工具栏会显示透明的开发人员工具图标,但实际界面没有出来,右键选择最大化,这货就出来了,然后将它取消独立悬浮定位到窗体下部(右上角第二排按钮),然后把窗体移到另一个屏幕,把开发人员工具恢复悬浮,问题解决...
2012-12-12 10:24:10
110
原创 js 贪食蛇-双蛇抢食
最近在看javascript权威指南,真是写的好啊,在没看html5之前先写个小游戏练练手,看完全部以后策划一个html5游戏,这个游戏断断续续写了大概一周时间,采用面向对象的方式开发的,完成以后还是发现有很多之前设计不足的情况,在下个游戏中一定要改进,有兴趣的朋友给提点意见1.0js 贪食蛇初稿,上下左右控制方向 空格暂定 回去继续搞..1.1 面向对象开发的魅力,马上转双蛇抢食...
2012-12-11 17:46:34
125
原创 获取当前浏览器地址参数列表
[code="js"]function urlArgs(){ var args = {}; var query = location.search;//获取参数字符串 query = query.substring(1);//去掉字符? var pairs = query.split("&");//参数分割 //循环解析...
2012-11-22 15:52:31
208
原创 JavaScript继承小例子
[b][size=large]权威指南第九章真心很给力,精彩啊,抽出了这个小例子[/size][/b][code="js"]//对象复制公用方法 function inherit(p){ if(p == null) throw TypeError(); if(Object.create) return Object.create(p);...
2012-11-20 19:27:00
107
原创 闭包实现单例气泡提示
[code="js"]var kcbplugs = kcbplugs || {};kcbplugs.msg = {};// 弹出层封装类kcbplugs.msg.msgManager = function() { var msgStack = []; // 构建div弹出层 var divDom = $("").appendTo(document.body);...
2012-11-15 12:37:53
113
原创 JavaScript数组方法罗列
[size=large]join 连接reverse 反转sort 排序 可传参自定义排序函数concat 连接创建新数组 如果参数为数组 将取数组的元素作为项slice 切割(不影响原有数组)splice 切割并插入(直接修改原有数组)push 从末尾添加pop 从末尾删除unshift 从首位添加shift 从首位删除 并将删除的元素返回toString...
2012-11-05 11:37:42
154
原创 关于springsecurity权限配置的问题
[size=medium]现在我在项目中使用过以下两种配置方式第一种.URl拦截式数据库菜单表 设立一个该菜单Url字段,比如:user_adduser.action,然后可以与一个或多个角色关联,只有拥有其中角色的用户才能访问该Url,当用户登录时获取他的角色集合,这种模式角色就是用户的权限,当用户进行Url访问时,首先会通过该Url去数据库找到这个菜单,然后获取拥有这个菜单访问...
2012-06-16 16:10:49
150
原创 Web开发学习(5)添加springsecurity应用
我学习公司这个架构多半就是为了把springsecurity搞个入门,差不多花了两天时间基本就搞定,我用的版本是3.0.5.RELEASE.因为我也是初学这个玩样只能把我的步骤记录下来,可能很多地方会很不清楚,如果有不对的地方给我发短信一起交流..由于配置的过程相对比较复杂,这里直接想1-5的源代码做详细注释上传,供以后参考...
2011-12-14 15:00:19
83
原创 Web开发学习(4)添加spring应用
印象中似乎没做过不用spring的项目,因为它在web开发中的确属于那种百利而无一害的神奇..首先添加需要的jar包[code="xml"] org.springframework spring-core org.springframework spring-beans org.springframework sprin...
2011-12-14 14:45:16
78
原创 Web开发学习(3)配置struts-tiles插件(附带json插件)
struts的tiles插件是非常实用的,从某些方面可以很好的增加页面的灵活性,记得以前外包到华为开发portalone项目,其自行代码构造了类似tiles的插件并与后台数据库结合,页面的风格和布局完全由数据库控制,当时在里面一直研究他的代码,到最后也看的八九不离十了,主要也就是将页面分为频道->窗口->列的父子关系然后基于struts的标签来完成的,虽然最后也同样实现titles的功能,但是在我...
2011-12-05 15:22:51
184
原创 使用线程删除导出临时文件
项目支持大数据量导出excel,我的方案是使用poi生成excle,然后使用struts的下载将其导出,个人感觉这样操作效率是最快的基本代码:[code="java"] this.setDownLoadFilePath(path); this.setDownLoadFileName("webOperate.xls"); return "down...
2011-12-01 16:33:59
169
原创 jQuery实现表格行点击选中复选框
这个需求是在项目完成后客户提出的要求,看似简单但是还需要一点小手脚[code="js"] $(".list tr").slice(1).each(function(){ var p = this; $(this).children().slice(1).click(function(){ $($(p).children()[0]).children().each(fun...
2011-11-23 12:36:51
510
原创 Web开发学习(2)配置convention插件
注解的方式某些程度上能减少xml的配置量,个人感觉使程序更加清新...ssh框架的话主要是struts和spring的注解,今天先讲struts的convention插件..当项目加入struts应用以后,添加convention插件是非常方便的.第一步:添加引用包[code="xml"] org.apache.struts struts2-tiles-plugin ...
2011-11-04 10:28:24
117
原创 Web开发学习(1)使用eclipse搭建maven项目
首先用eclipse创建工程 new -> project -> maven -> maven project点击next 进入Select an Archetype 界面,选择maven archetype webapp点击next进入Specify Archetype parameters界面,给工程指定 groupId和artifactId点击finish完成工程搭建maven项...
2011-10-20 10:04:45
185
原创 数据库连接泛型基类创建
记录 以便以后参考----基类代码[code="java"]public class GenericDaoImpl extends HibernateDaoSupport implements GenericDao[/code]GenericDaoImpl 声明继承GenericDaoImpl的类必须指定一个对象,并且这个对象必须继承IdEntity extends H...
2011-06-30 11:49:58
108
原创 重写struts2文件上传处理类
1.struts文件配置[code="xml"][/code]2.编写处理类 继承JakartaMultiPartRequest[code="java"]public class PerfMultiPartRequest extends JakartaMultiPartRequest{ //重写parse方法 pu...
2011-06-03 11:04:46
140
多线程例子
碰到这样一道面试题用java1.5,实现如下场景。开心农场有养鸡场、猴山等两个项目,采购部门分批次采购所有动物的饲料,并堆在仓库。现在开发一个信息发布小工具,为各个饲养项目管理小组及时的发布饲料发放讯息。输入为控制台:发布信息1:鸡饲料到货了,请养鸡场管理小组前来取货;发布信息2:猴饲料到货了,请猴山管理小组前来取货;如示例效果。要求:1)养鸡场小组和猴饲养组分别在...
2011-05-20 15:23:49
106
spring BeanFactoryPostProessor接口
[size=medium]当BeanFactory加载Bean定义文件的所有内容,但还没正式产生Bean实例之前,需要对BeanFactory进行处理的话,可以实现BeanFactoryPostProessor接口的postProcessBeanFactory方法来完成,今天记录几个spring提供的几个实现类及其发挥的作用1.[b]PropertyPlaceholderConfigure...
2011-04-29 14:49:30
190
spring Aware相关接口
[size=large]在struts框架中用过ServletRequestAware和ServletResponesAware用来获取对应的实例,现在记录一下spring中有哪些Aware,使用方式和ServletRequestAware是一样的,只要实现相应的接口就可以了1.org.springframework.beans.factory.BeanNameAware2.org.spr...
2011-04-28 15:04:37
111
struts2手动往堆栈中加属性
平时都是直接在action类 中声明一个属性,然后生成getset方法,struts会自定将属性放入堆栈中,页面就可以使用标签调用了,下面记录如何手动往struts2中添加标签[code="java"]ValueStack valueStack = ActionContext.getContext().getValueStack();valueStack.set("name", "张三")...
2011-04-22 17:21:47
96
从jndi获取数据源
目前还不知道这种方式有啥用,但是既看到了就先记下来再说1.spring配置文件中是怎么定义的 java:/comp/env/PortalONEServiceDB 2.tomcat server.xml中定义3.在tomcat\conf\Catalina\localhost下建一个xml ...
2011-04-22 16:31:41
166
用jQuery写的前台字符串切割的统一方法
方法代码:[code="js"]jQuery(document).ready(function(){ //截取长度公用方法 jQuery.each(jQuery("[split^='length_']"),function(i){ //获得截取长度 var toLength = parseInt($(this).attr("split").replace("length...
2011-04-22 14:27:02
303
原创 strtus2实现国际化
网上给的struts2实现国际化的资料都不是很全,在全部实现以后我做个大致的记录[size=large]1.如何使用国际化[/size]在struts配置文件中配置常量,需要注意的是value值message.messages表示配置文件指向message包下的文件名以messages(_语言名.properties)的文件[size=large]2.如何获取配置文件的值?[/...
2011-04-22 14:14:29
116
strtus2自定义标签使用
今天在项目框架中合入的自定义的防重标签,主要分为以下几步1.定义标签类 需要继承TagSupport 重写doEndTag方法这边需要注意的是pageContext.getOut().write()就是在页面输出html语言,其实我只是在页面放了个隐藏域,把随机生成数做为值而已public class TokenTag extends TagSupport{ ...
2011-04-22 13:49:32
189
poi颜色常量对应表
2013-06-17
struts2+springsecurity3.0例子
2011-12-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人