随笔-201  评论-13  文章-4  trackbacks-2
  2012年1月29日
摘要: 1.Freemarker简介 FreeMarker允许Java servlet保持图形设计同应用程序逻辑的分离,这是通过在模板中密封HTML完成的。模板用servlet提供的数据动态地生成 HTML。模板语言是强大的直观的,编译器速度快,输出接近静态HTML页面的速度。 FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写 FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序 虽然FreeMarker具有一些编程的能力,但通常由Java程序准备要显示的数据,由FreeMarker生成页面,通过模板显示准备的数据 F...阅读全文
posted @ 2012-01-29 18:36 唐朝 阅读(11) 评论(0) 编辑
摘要: 使用 @Repository、@Service、@Controller 和 @Component 将类标识为 BeanSpring 自 2.0 版本开始,陆续引入了一些注解用于简化 Spring 的开发。@Repository 注解便属于最先引入的一批,它用于将数据访问层 (DAO 层 ) 的类标识为 Spring Bean。具体只需将该注解标注在 DAO 类上即可。同时,为了让 Spring 能够扫描类路径中的类并识别出 @Repository 注解,需要在 XML 配置文件中启用 Bean 的自动扫描功能,这可以通过 <context:component-scan/> 实现。如阅读全文
posted @ 2012-01-29 18:06 唐朝 阅读(8) 评论(0) 编辑
摘要: 关于Java的web.xml文件中配置认证和授权有大 量 的 文章。本文不再去重新讲解如何配置角色、保护web资源和设置不同类型的认证,让我们来看看web.xml文件中的一些常见的安全错误配置。(1) 自定义的错误页面没有配置默认情况下,Java Web应用在发生错误时会将详细的错误信息展示出来,这将暴露服务器版本和详细的堆栈信息,在有些情况下,甚至会显示Java代码的代码片段。这些信息对为他们的病毒需找更多信息的黑客来说是一种恩惠。幸运的是,通过配置web.xml文件来展示自定义的错误页面是非常容易的。使用如下的配置后无论服务器在任何时候发生HTTP500错误,一个非常好的错误页面就会被显示阅读全文
posted @ 2012-01-29 10:37 唐朝 阅读(7) 评论(0) 编辑
摘要: web.xml中classpath:和classpath*:, 有什么区别?classpath:只会到你的class路径中查找找文件;classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找.XML元素不仅是大小写敏感的,而且定义它们的次序也很重要。例如,web-app元素内所有servlet元素必须位于所有servlet- mapping元素(下一小节介绍)之前,而且还要位于与过滤器或文档相关的元素(如果有的话)之前。类似地,servlet 的servlet-name子元素也必须出现在servlet-class之前。filter------------>阅读全文
posted @ 2012-01-29 10:05 唐朝 阅读(4) 评论(0) 编辑
  2011年7月1日
摘要: 一、该版本引入<fork>和<join>节点的使用!!----可以实现会签需求的功能。这里和同一个任务分配给多个参与者实现的最终功能效果是基本一样!!**作用:到达<fork>节点后,<fork>节点会进行分支,也就是让流程同时流向<fork>指定的一个或几个节点, 注意这里是同时流向,然后等待<fork>的分支节点审批通过后,那么流程会流向<join>节点, 等到<fork>节点所有分支均审批通过后,也就是所有分支流程都到达<join>节点后, 流程才会流向下一个节点。 **实现机制:阅读全文
posted @ 2011-07-01 10:21 唐朝 阅读(107) 评论(0) 编辑
摘要: 一、该版本中使用了Pooled Actor机制,而不是actor-id。**解释:就是说通过Pooled Actor可以将一个任务一次分配给一组(多个)参与者, 注意这和之前不一样,之前是针对同一个任务,然后产生多个任务实例对象, 然后每个实例对象对应一个任务的参与者,其实还是相当于一个任务对应了一个参与者; 现在说的使用Pooled Actor是将一个任务的一个任务实例对象分配给一组参与者。 **运行原理: 当把一个任务的一个任务实例对象分配给一组参与者之后, 那么该组参与者的每个成员登陆系统后,都可以看到该任务列表 (此时调用显示用户代办列表的方法较之前有区别,是带有pooled字符串的方阅读全文
posted @ 2011-07-01 10:19 唐朝 阅读(56) 评论(0) 编辑
摘要: 一、该版本中应用了在start-state节点中加入task元素,之前的项目中则没有用到, 所以之前的项目在创建流程实例是都会调用processInstance.signal()方法来立刻从start-state节点流转到下一个节点, 然后才开始进入正常,本来我们的效果应该是,当申请人提交请假表单之后,就等同于提交了, 不应该在申请的代办列表中再进行一次提交,该项目解决了该问题。 **注意:在start-state节点中使用task节点的化和在<task-node>节点中的使用方法有点区别。 1.start-state节点中的task不能指定assignment的actor-id,阅读全文
posted @ 2011-07-01 10:16 唐朝 阅读(91) 评论(0) 编辑
摘要: 一、因为加入了不同的分支流向,所以当审批不通过要驳回时JBPM应该能够得到当初提交任务的参与者, 而这个工作通过直接用actor-id=#{}来实现并不合适,因为如果有很多这样的指定的话, 可能会乱套,JBPM提供了一个专门能解决该问题的机制。 解决方法:使用泳道,它是定义流程中的多个任务由相同参与者完成的一种机制,这使的泳道正好能够完成任务。 在第一个任务实例为指定泳道创建后,参与者将被流程记住,以被在同一泳道中的后续任务所使用。 泳道有一个分配,因此所有引用泳道的任务不需要再指定分配。 **注意:可以在<start-state>开始节点添加一个任务<task>,用s阅读全文
posted @ 2011-07-01 10:13 唐朝 阅读(67) 评论(0) 编辑
摘要: 1.加入文件上传功能,即上传流程部署文件 - 导入commons-fileupload.jar - 导入commons-io.jar2.加入请假单实体对象及映射文件,将流程实例与请假单对象绑定3.加入动态为任务分配(通过设定流程变量)4.加入登陆界面5.流程定义中加入不同的流向,即可以通过审批或者驳回审批重新填写(多流向),具体见startTask.jsp文件6.因为加入了不同的分支流向,所以当审批不通过要驳回时JBPM应该能够得到当初提交任务的参与者, 而这个工作通过直接用actor-id=#{}来实现并不合适,因为如果有很多这样的指定的话, 可能会乱套,JBPM提供了一个专门能解决该问题的阅读全文
posted @ 2011-07-01 10:11 唐朝 阅读(67) 评论(0) 编辑
摘要: 入门篇 本文章针对有一定JBPM基础的朋友,文章内容将不会讲解太多内容,具体内容可以下载项目,部署后源码中会有清晰的说明,希望对有需要的朋友有所帮助,有关于项目中的错误和不妥当的地方还望大家留言指正!1.到官网下载JBPM开发包,解压后拷贝相关的依赖包到lib目录(虽然JBPM是靠Hibernate支持持久层,但是不需要拷贝Hibernate的其他依赖包,因为JBPM只是借助了Hibernate的功能,然后进一步进行了自己的封装)*导入解压目录中lib下的jar包就可以了2.拷贝配置文件*修改hibernate.cfg.xml文件(拷贝config目录中的hibernate.cfg.xml文件阅读全文
posted @ 2011-07-01 10:06 唐朝 阅读(79) 评论(0) 编辑
昵称:唐朝
园龄:6年5个月
粉丝:1
关注:0
<2012年2月>
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910

搜索

 
 

常用链接

随笔分类

随笔档案

web教学

最新评论

阅读排行榜

评论排行榜

推荐排行榜