- 博客(82)
- 资源 (6)
- 收藏
- 关注
原创 Jaas原理及实现
JAAS是对JCE安全框架的重要补充,通过提供认证用户和确定用户授权来增强JAVA解决方案的动态安全性,使得资源能够得到很好得到保护和控制(JAAS使用动态的安全策略来定义权限,而不是将其静态的嵌入到代码中)。JAAS采用的是插件的运行方式,一开始就被设计成可插拔的(Pluggable),根据应用的需要,只要配置一下JAAS的配置文件,这些组件即可包含 在我们的应用程序中。使用JAAS包接
2015-01-30 11:54:28 5167 5
原创 Arrays.asList
import java.util.Arrays;import java.util.List;/** * * 本类演示了Arrays类中的asList方法 * 通过四个段落来演示,体现出了该方法的相关特性. * * (1) 该方法对于基本数据类型的数组支持并不好,当数组是基本数据类型时不建议使用 * (2) 当使用asList()方法时,数组就和列表链接在一起了. *
2014-09-29 23:54:34 2564 6
原创 pd转换name为comment脚本
在【Tools】-【Execute Commands】-【Edit/Run Script】 下。输入下面你要选择的语句即可,也可以保存起来,以便下次使用,后缀为.vbs。
2014-08-25 13:07:12 3959 8
原创 优化后的组合算法
项目中一个算法中涉及到了组合,大概业务是:给定一个值X,从n个数中找出能组合加起来和X相等的集合。如果用通常的组合算法,数量级是2的n的阶乘,如果记录比较多的话,有效率问题。我针对我们的业务,优化写了一个算法。 大概逻辑:先给n个值从小到大排序形成一个队列,组合数从2开始依次递增,每次执行一个剔除操作,假设组合数递增到m,取队列中前面m-1个连续的值,并加上最大的一个值V,如果大于
2014-06-25 18:52:43 4048 15
原创 JavaMelody的使用
JavaMelody 能够监测Java或Java EE应用程序服务器,并以图表的方式显示:Java内存和Java CPU使用情况,用户Session数量,JDBC连接数,和http请求、sql请求、jsp页面与业务接口方法(EJB3、Spring、 Guice)的执行数量,平均执行时间,错误百分比等。图表可以按天,周,月,年或自定义时间段查看。
2014-04-30 21:37:54 11591 16
原创 Jackson解析JSON数据
Jackson 是一个 Java 用来处理 JSON 格式数据的类库,性能非常好。相比Json-lib依赖好几个Jar,jackson是轻量级的,操作也很简单。JSON-lib官网:http://json-lib.sourceforge.net//** * 使用Jackson生成json格式字符串 * * */public class JacksonTest {
2014-03-31 23:23:28 7974 34
原创 项目敏捷(3)--第一个Sprint总结
本次严格按照流程做了一次Sprint,大家一块进行计划会议,一块估计任务工时,但是还是有一些意外的事情,这段时间内额外做了好多时间,因而延迟了结束时间。 关于本次Sprint的一些统计图:项目概述:任务完成的情况:有两个任务挂起,以后再解决,其他的都已经完成。 成员工作量情况:因为加了一些任务,所以每个人的工时都比预先的多。
2014-03-04 19:41:19 5841 20
原创 基础系统逻辑概览
我把基础现在系统的流程以及一些复杂点的逻辑用图画了出来,供大家参考。本次我们开发还有九期的完善,重点在业务逻辑的优化,以及界面的设计人机交互这块,希望能让数据能便利的录入。
2014-02-28 23:26:50 2816 25
原创 项目敏捷(2)--流程
管理流程的理念是尽量按照敏捷Scrum,可以适当修正。我准备用几张图来介绍: 一开始的执行情况是以周为单位,每周进行一个总结。流程如下 每天的晨会和遇到重大问题的流程如下: 执行了一段时间之后,晨会坚持的很好,但是周总结会没有按时开,意义也就不大了。究其原因,是往往没有一个固定的主题,进而变成了一个问题讨论。后来
2014-02-27 19:43:34 3159 31
原创 项目敏捷(1)--背景
之前我们做的教务几个系统,虽然是独立开发的,但是各个系统之间的有数据依赖交互,当时为了省事方便,就把所有的系统看成是一个整的教务,故数据库都放在了一块,共用数据库,只是在命名上有区别,不同系统读写数据库是靠开发人员自己控制。这当然是有局限性。年前我们准备开发一个项目,把之前的教务的.net版的系统用java重构一遍,主要是为了实现分布式。 先前环境的搭建用了一段时间,我们的系统如基础,考试,评教等
2014-02-27 19:06:34 3223 31
原创 ejb的几个概念
一.会话Bean:Session Bean 用于实现业务逻辑,它分为有状态bean 和无状态bean。每当客户端请求时,容器就会选择一个Session Bean 来为客户端服务。Session Bean 可以直接访问数据库,但更多时候,它会通过Entity Bean实现数据访问。1.无状态会话Bean 主要用来实现单次使用的服务,该服务能被启用许多次,但是由于无状态会话Bean 并不保
2014-01-28 11:49:18 2934 22
原创 Scrum简单接触
Scrum:敏捷开发的一种,是敏捷开发中一个重要的主流,是一个迭代性、增量性的过程,适合于任何产品开发和工作管理,每次迭代之后,都会产生一个相应的可交付物。Scrum由三个角色,三种活动,3种交付物组成:三个角色:Product Owner; Scrum Master; Scrum Team三种活动:The Sprint planning meeting; Dail
2014-01-01 09:33:33 3131 26
原创 Maven常用命令
创建普通应用项目: mvn archetype:create -DgroupId=sfs.maven.learn -DartifactId=maven_test 创建WEB项目: mvn archetype:create -DgroupId=sfs.maven.learn -DartifactId=maven_web_test -DarchetypeArtifactId=maven-a
2013-12-30 21:59:42 3025 32
原创 还需要面向实体编程吗
分到了一个项目,开发流程是什么,首先要做什么? 之前很多人也问过我这个问题,我总是根据经验不加思索的说出几个大概步骤:做需求,画原型,设计数据库,定架构分层,编码测试,部署发布。 有这种思路很正常,因为我们一直在严格遵循软件工程的思想,文档很重要,文档驱动。想当年学习写文档的时候,把十几个文档都尝试了一遍,整个写下来足足用了半个月,印象之深可想而知。进而形成了我
2013-12-30 10:02:19 4239 36
原创 Hibernate进阶(2)--关联映射关系总结
一、一对一关联映射1) 单项一对一关联映射一对一关联映射原理:让两个实体的主键一样,这样就不需要加入多余的字段了需要关联的一端(本端的主键根据对端生成): idCard 被关联的一端: 2)双向一对一关联映射和单向比就是在被关联的一端加入标签,需要在IdCard
2013-12-17 17:02:35 2869 27
原创 Hibernate进阶(1)--框架概述
Hibernate的核心组件在基于MVC设计模式的JAVA WEB应用中,Hibernate可以作为模型层/数据访问层。它通过配置文件(hibernate.properties或hibernate.cfg.xml)和映射文件(***.hbm.xml)把JAVA对象或PO(Persistent Object,持久化对象)映射到数据库中的数据库,然后通过操作PO,对数据表中的数据进行增,删,改,查
2013-12-11 20:15:52 3329 31
原创 Struts逐步学习(4)-web.xml配置说明
以《环境搭建》中的web.xml为例加以说明:<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/ja
2013-11-27 21:54:06 2906 38
原创 Struts逐步学习(3)-struts-config.xml文件解析
struts-config.xml是Struts的主要配置文件,在该文件中,可以配置数据源、form-bean、action和plug-in(插件)和资源文件的信息。文件(Struts1.2版本)主要结构如下所示:
2013-11-27 21:10:23 3741 37
原创 Struts逐步学习(2)-工作原理解析
MVC即Model-View-Controller的缩写,是一种常用的设计模式。MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。Struts 是MVC的一种实现, Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。Struts的工作原理,如下图所示: 控制:通过上图大家可以看到有一个XML文件Struts-config
2013-11-27 16:59:43 2390 31
原创 Struts逐步学习(1)-环境搭建
1. 首先要下载struts的jar包,地址http://struts.apache.org/2. 解压Strusts包后,将lib文件夹里的jar包都加入到项目中WEB-INF下的lib文件夹下3. 在解压后的webapps文件夹中解压struts-blank.war,将其中的struts-config.xml拷贝到项目中( 避免手写出错,复制粘贴,做一些配置)<!D
2013-11-27 16:26:25 1424 34
原创 Filter原理及实现批量设置请求编码
一、Filter简介 Servlet API中提供了一个Filter接口,开发web应用时,如果编写的Java类实现了这个接口,则把这个java类称之为过滤器Filter。通过Filter技术,开发人员可以实现用户在访问某个目标资源之前,对访问的请求和响应进行拦截。简单说,就是可以实现web容器对某资源的访问前截获进行相关的处理,还可以在某资源向web容器返回响应前进行截获进行处理。
2013-09-30 11:16:02 3339 17
原创 XML:四种解析器(dom,sax,jdom,dom4j)原理及性能比较
dom是解析xml的底层接口之一(另一种是sax).而jdom和dom4j则是基于底层api的更高级封装。dom是通用的,而jdom和dom4j则是面向java语言的 1、DOM DOM 是用与平台和语言无关的方式表示 XML 文档的官方 W3C 标准。DOM 是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层
2013-09-13 21:04:52 2546 21
原创 存储过程和触发器的取舍问题(优缺点分析)
由于要给同学分享一些关于数据库中存储过程和触发器的知识,我想了想,这是很细节的技术,一般只要用了都会很快掌握其使用方法。经过这么多年,我一般在设计数据库的时候也都会或多或少的使用存储过程和触发器,原因很简单:良好的性能,业务也好实现。可是在做上次的项目的时候,由于业务很复杂,存储过程和触发器的数量均都达到上百之多,这是一件很恐怖的事情,尤其是在出了错调试维护的时候,就会想没有这些东西多好。下面我从
2013-07-24 16:50:22 16015 49
原创 SQL清空以TB开头表中的数据
exec sp_msforeachtable 'alter table ? nocheck CONSTRAINT all' exec sp_msforeachtable 'ALTER TABLE ? DISABLE TRIGGER all' --从系统表中读取TB开头的表名之后逐条删除Declare @name varchar(100)Declare TbNameCur CURSOR
2013-06-04 20:53:07 4007 19
原创 SQL中的一些批量操作技巧
最近在忙基础数据的导入工作,测试的时候经常需要清空数据库,MS做的很友好,集成了很多批量处理的方法,大概说一下常用的:触发器的启用和禁用:--禁用:ALTER TABLE trig_example DISABLE TRIGGER trig1--恢复:ALTER TABLE trig_example ENABLE TRIGGER trig1--禁用某个表上的所有触发器A
2013-06-03 21:19:09 3618 16
原创 SQL Server xtype的介绍
sysobjects 表 在数据库内创建的每个对象(约束、默认值、日志、规则、存储过程等)在表中占一行。只有在 tempdb 内,每个临时对象才在该表中占一行。 列名 数据类型 描述 name sysname 对象名。 Id int 对象标识号。 xtype char(2) 对象类型。可以是下列对象类型中的一种: C = CHECK 约束 D = 默认值或 DEFAUL
2013-06-03 21:04:45 3658 11
原创 使用TransactionScopeOption 管理事务流
可通过调用一个方法来嵌套事务范围,该方法在使用其自己范围的方法中使用 TransactionScope,下面示例中的 RootMethod 方法就是前者这样的方法。void RootMethod(){ using(TransactionScope scope = new TransactionScope()) { SomeMethod();
2013-05-29 14:59:00 9909 4
原创 VS中的虚空格
编程环境下可以选“启用虚空格”,路径为:“工具”==》“选项”==》“文本编辑器”==》“所有语言”==》“设置”(启用虚空格),其效果就是在你写有代码的程序文档中凡是空白的地方都填满了“空格”,当你用键盘上的4个方向键左右上下移动光标时,空白处就像存在实在的字符一样,光标可以实在地移动到任意你想到达的地方,比如向下移动,会一直保持同一列位置,而不会因为某些行该列的空白而改变光标所处的列的位置,以
2013-05-29 09:17:00 10102 4
原创 J2EE的13个规范概述
J2EE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持,下面对J2EE中的13种技术规范进行简单的描述:1.JDBC(Java Database Connectivity):JDBCAPI为访问不同的数据库提供了一种统一的途径,象ODBC一样,JDBC对开发者屏蔽了一些细节问题,另外,JDCB对数据库的访问也具有平台
2013-05-14 11:06:16 3169 4
原创 基础系统开发经验共享
1 项目介绍基础系统主要负责教务系统的基础数据的维护,目的是为了避免各个系统单独开发而出现的业务重复和数据不同步的问题,实现数据的共享。本系统主要就是业务比较复杂,可能用不到比较先进的技术,但是设计理念和对一些业务的处理还有很有借鉴意义的。2 设计理念系统分布设计:参考博客 http://blog.csdn.net/jesse621/article/detai
2013-04-30 00:04:14 3397 3
原创 网页开发中的文件相对路径
一般来说,如果需要引用当前网站外部的文档和素材,我们应该使用绝对路径;而在引用当前网站内部的文档和素材时,我们应该使用相对路径。由于相对路径中不包含网站地址等信息,从而使得网站更容易移植(例如,更换网站域名),因此,虽然也可以使用绝对路径链接同一网站内的文档,但应该尽量使用相对路径。 一般来说,在制作内部链接时,我们应该尽量使用文档相对路径,而不是根相对路径,这样做的原因是在本地预览网站时,浏览器
2013-04-04 10:37:29 10402 5
原创 checklistBox默认选中多个选项
//绑定全部的年级信息 DataTable dtGrade = new GradeBLL().QueryAllActiveGrade(); chblGrade.DataSource = dtGrade; chblGrade.DataTextField = "GradeName"; chblGrade.DataValueField =
2013-03-29 20:11:36 8500 4
原创 .Net各类事务汇总
1、SQL事务优点:执行效率最佳限制:事务上下文仅在数据库中调用,难以实现复杂的业务逻辑。CREATE PROCEDURE Tran1 as begin tran set xact_abort on Insert Into trantest (id,test)values(1,'test') Insert Into trantest (id,test)va
2013-03-20 15:52:26 6579 6
原创 数据库的抽象设计
在设计数据库的时候也可以利用在编写代码的的抽象类概念,尤其是在有很多业务有重复的功能的情况下。以往我们在做教务的时候都是分开做的,像选课,考试,以及评教系统等等,都是各自维护自己的基础数据,而在一个学校内,学生和教职工是一样的,这些数据就可以共享,用一个系统来维护,而其他系统直接拿来用就可以,避免各个系统的数据不一致问题。数据库分布抽象示意图:业务分析:基础数据维护系统:负责所
2013-03-10 11:31:08 5354 5
原创 用户权限管理
用户及权限管理涉及的几个概念用户分类:系统用户、超级用户、管理员用户、DBA用户、领导用户、专家用户、操作员用户、客户用户、……系统权限:即对不同用户使用系统资源(功能菜单项、按钮、输入控件等)的使用或访问权限用户:应用系统的具体操作者,用户可以拥有一定范围的权限角色:为了对许多拥有相似权限的用户进行分类管理,定义了角色的概念,例如系统管理员、管理员、用户、访客等角色组:为了更
2013-02-28 21:27:56 32877 8
原创 数据库完善--历史记录问题解决
之前设计的数据库最大的问题在于不能把过去某个时间的状态信息显示出来,只是记录了单个信息的操作记录。所以这样就会出现一些问题,例如,上个月一个班里面有32个人,前几天有一个人退学了,那么现在查询的这个班级的信息就是31个人,之前的32个人得信息就没有办法显示出来,这是历史,但是我们没有办法显示出来。 方案一:从学生的角度出发,系统中的机构都是为了学生而设置的,相当于是为学生搭起来的
2013-02-22 21:16:09 8757 2
原创 不要让例会成为鸡肋
每到周末是最热闹的时候,会议室,走廊,甚至楼梯口都有一堆堆的人在讨论,我们都习以为常,一封邮件或者一个飞信告知何时何地,就会准时参加。带过很多的小组,也参加过好多会议,我从客观的角度逐步阐述关于会议的一些想法。 刚接触头脑风暴的时候,大家很新鲜,一有什么问题就召集一批人,坐在一块讨论半天,有人负责主持,有人负责记录,也算是一个小会议吧,问题可能最终没有解决,但是大家都有了新的认识
2013-02-02 20:35:55 4324 7
原创 常量中有换行符错误提示解决
在前台用Repeater绑定数据的时候,同样的代码,有的窗体显示正常,有几个窗体一直报错:常量中有换行符。 用了各种方法,调试了两个小时,一个用新建窗体,把代码从新写了一遍解决了,另外的两个按照同样的方法却也不行。网上大部分说是特殊符号(像单双引号)不对应,仔细检查了好几遍,代码完全一样,也没有缺少什么符号。想了想,既然提示有换行符,于是就把代码复制到Word中,利用替换功能把换行
2013-01-25 15:55:12 16213 5
原创 SVN有时Update失败解决方法
做项目用SVN 本地更新时,由于一些操作中断更新,如磁盘空间不够,用户强行取消等等。可能会造成本地文件被锁定的情况,无法再次执行更新。一般出现这种情况的解决方法:1、可以使用SVN clean up来清除锁定。2、如果不是本目录锁定,系统提示上一层目录锁定,需要到上一层或者根目录中清除。3、如果在根目录下都无法clean的话,一般采取的方法是另外找一个目录重新CHECKOUT。
2013-01-21 16:24:33 39047 5
vb6.0 全屏 插件 下载 增强vb开发环境
2011-03-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人