Joyen.fu
日中则昃,月盈则食。
摘要: 背景:在做Java开发的时候,常常会出现一些乱码,或者无法正确识别或读取的文件,比如常见的validator验证用的消息资源(properties)文件就需要进行Unicode重新编码。原因是java默认的编码方式为Unicode,而我们的计算机系统编码常常是GBK等编码。需要将系统的编码转换为ja 阅读全文
posted @ 2016-08-10 16:53 Joyen.fu 阅读(359) 评论(0) 推荐(0) 编辑
摘要: 1.简单工程模式: 2.策略模式:它定义了算法家族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化,不会影响到使用算法的客户。 3.单一职责原则:就一个类而言,应该仅有一个引起它变化的原因。 4.开放-封闭原则:是说软件实体(类,模块,函数等等)应该可以扩展,但是不可以修改。即:对扩展开放 阅读全文
posted @ 2016-06-21 16:57 Joyen.fu 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 持久化实体管理EntityManager EntityManager 在Java persistence规范中,EntityManager是为所有持久化操作提供服务的中枢。Persistence context 持久上下文是由一组受托管的实体对象实例所构成的集合,它受EntityManager的管理 阅读全文
posted @ 2016-05-19 14:00 Joyen.fu 阅读(183) 评论(0) 推荐(0) 编辑
摘要: FilterSecurityInterceptor 是比较核心的过滤器,主要负责授权工作。SecurityMetadataSource 需要安全授权的元数据资源 AuthenticationManager 认证管理器,决策访问资源的时候是否需要再次认证。AccessDesisionManager 访 阅读全文
posted @ 2016-05-12 13:01 Joyen.fu 阅读(1283) 评论(0) 推荐(0) 编辑
摘要: web.xml配置: /WEB-INF/springmvc/路径下文件结构: controller配置 servlet-controller.xml servlet-forward.xml URL handler处理配置servlet-handler.xml 拦截器配置servlet-interce 阅读全文
posted @ 2016-04-29 13:23 Joyen.fu 阅读(1331) 评论(0) 推荐(0) 编辑
摘要: 可重入:就是同一个线程可以重复加锁,可以对同一个锁加多次,每次释放的时候会释放一次锁,直到该线程加锁次数为0,这个线程才释放锁。 读写锁: 也就是读锁可以共享,多个线程可以同时拥有读锁,但是写锁却只能只有一个线程拥有,而且获取写锁的时候,其他线程都已经释放了读锁,而且在该线程获取写锁之后,其他线程不 阅读全文
posted @ 2016-04-27 11:12 Joyen.fu 阅读(272) 评论(0) 推荐(0) 编辑
摘要: -Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match. vm参数配置 -Dmaven.multiModulePro 阅读全文
posted @ 2016-04-26 16:59 Joyen.fu 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 在 J2EE 应用中,事务是一个不可或缺的组件模型,它保证了用户操作的 ACID(即原子、一致、隔离、持久)属性。对于只操作单一数据源的应用,可以通过本地资源接口实现事务管理;对于跨数据源(例如多个数据库,或者数据库与 JMS)的大型应用,则必须使用全局事务 JTA (Java Transactio 阅读全文
posted @ 2016-04-21 16:30 Joyen.fu 阅读(317) 评论(0) 推荐(0) 编辑
摘要: JPA全称为Java Persistence API ,Java持久化API是Sun公司 JavaEE 5规范中提出的Java持久化接口。JPA吸取了目前Java持久化技术的优点,旨在规范、简化Java对象的持久化工作。使用JPA持久化对象,并不是依赖于某一个ORM框架。 参考: http://bl 阅读全文
posted @ 2016-04-21 15:49 Joyen.fu 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 有两种常用的方法可用来搜索图:即深度优先搜索和广度优先搜索。它们最终都会到达所有连通的顶点。深度优先搜索通过栈来实现,而广度优先搜索通过队列来实现。 深度优先搜索: 为了实现深度优先搜索,首先选择一个起始顶点并需要遵守三个规则:(1) 如果可能,访问一个邻接的未访问顶点,标记它,并把它放入栈中。(2 阅读全文
posted @ 2016-04-21 11:04 Joyen.fu 阅读(360) 评论(0) 推荐(0) 编辑