随笔分类 -  Java编程

摘要:1、Spring对事务管理的支持 Spring为事务管理提供了一致的编程模板,在高层次建立了统一的事务抽象。也就是说,不管选择Spring JDBC、Hibernate 、JPA 还是iBatis,Spring都让我们可以用统一的编程模型进行事务管理。 在Spring事务管理SPI(Service 阅读全文
posted @ 2016-06-14 10:32 我是一名老菜鸟 阅读(6334) 评论(0) 推荐(1) 编辑
摘要:1、数据库事务基础知识 1)数据库事务有严格的定义,它必须同时满足4个特性:原子性(Atomic)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),简称ACID。 2)数据并发的问题:脏读、不可重复读、幻想读、第一类丢失更新、第二类丢失更新。 3)数据 阅读全文
posted @ 2016-06-14 10:25 我是一名老菜鸟 阅读(756) 评论(0) 推荐(0) 编辑
摘要:4种定义切面的方式: 1)基于@AspectJ注解的方式: 2)基于<aop:aspect>的方式; 3)基于<aop:advisor>的方式; 4)基于Advisor类的方式。 如果项目采用JDK5.0,可以优先考虑使用@AspectJ;如果项目只能使用低版本的JDK,则可以考虑使用<aop:as 阅读全文
posted @ 2016-06-14 10:23 我是一名老菜鸟 阅读(677) 评论(0) 推荐(0) 编辑
摘要:使用基于Schema的切面定义后,切点、增强类型的注解信息从切面类中剥离出来,原来的切面类也就蜕变为真正意义上的POJO了。 1、一个简单切面的配置 基于Schema配置的切面示例: <?xml version="1.0" encoding="UTF-8" ?> <beans xmlns="http 阅读全文
posted @ 2016-06-14 10:21 我是一名老菜鸟 阅读(1285) 评论(0) 推荐(0) 编辑
摘要:@AspectJ可以使用切点函数定义切点,我们还可以使用逻辑运算符对切点进行复核运算得到复合的切点,为了在切面中重用切点,我们还可以对切点进行命名,以便在其他的地方引用定义过的切点。当一个连接点匹配多个切点时,需要考虑织入顺序的问题,此外一个重要的问题是如何再增强中访问连接点上下文的信息。 Wait 阅读全文
posted @ 2016-06-14 09:42 我是一名老菜鸟 阅读(22494) 评论(0) 推荐(1) 编辑
摘要:需要的类包: 1、一个简单的例子 Waiter接口: package com.yyq.annotation; public interface Waiter { void greetTo(String name); void serveTo(String name); } NaiveWaiter业务 阅读全文
posted @ 2016-05-16 10:55 我是一名老菜鸟 阅读(1114) 评论(0) 推荐(0) 编辑
摘要:1、了解注解 对于Java开发人员来说,在编写代码时,除了源程序外,还会使用Javadoc标签对类、方法或成员变量进行注释,一遍使用Javadoc工具生成和源代码配套的Javadoc文件,如@param、@return就是注解标签。我们可以使用Xdoclet快速生成对应程序代码的配置文件。在JDK5 阅读全文
posted @ 2016-05-13 10:07 我是一名老菜鸟 阅读(651) 评论(0) 推荐(0) 编辑
摘要:Spring为我们提供了自动代理机制,让容器为我们自动生成代理,把我们从烦琐的配置工作中解放出来,在内部,Spring 使用BeanPostProcessor自动地完成这项工作。 1、实现类介绍 这些基于BeanPostProcessor的自动代理创建器的实现类,将根据一些规则自动在容器实例化Bea 阅读全文
posted @ 2016-05-09 22:11 我是一名老菜鸟 阅读(6374) 评论(0) 推荐(0) 编辑
摘要:增强被织入到目标类的所有方法中,但是如果需要有选择性的织入到目标类某些特定的方法中时,就需要使用切点进行目标连接点的定位。增强提供了连接点方位信息:如织入到方法前面、后面等,而切点进一步描述织入到哪些类的哪些方法上。Spring通过org.springframework.aop.Pointcut接口 阅读全文
posted @ 2016-05-09 21:44 我是一名老菜鸟 阅读(6346) 评论(0) 推荐(0) 编辑
摘要:AOP联盟为增强定义了org.aopalliance.aop.Advice接口,Spring支持5种类型的增强: 1)前置增强:org.springframework.aop.BeforeAdvice 代表前置增强,因为Spring 只支持方法级的增强,所有MethodBeforeAdvice是目前 阅读全文
posted @ 2016-05-05 22:55 我是一名老菜鸟 阅读(4338) 评论(1) 推荐(0) 编辑
摘要:Spring AOP使用动态代理技术在运行期织入增强的代码,两种代理机制包括:一是基于JDK的动态代理,另一种是基于CGLib的动态代理。之所以需要两种代理机制,很大程度上是因为JDK本身只提供接口的代理,而不支持类的代理。 1、带有横切逻辑的实例 ForumService:包含性能监视横切代码 p 阅读全文
posted @ 2016-05-05 17:58 我是一名老菜鸟 阅读(536) 评论(0) 推荐(0) 编辑
摘要:1、AOP术语 1)连接点(Joinpoint) 程序执行的某个特定位置:如类开始初始化前、类初始化后、类某个方法调用前、调用后、方法抛出异常后。一个类或一段程序代码拥有一些具有边界性质的特定点,这些点中的特定点就称为“连接点”。Spring仅支持方法的连接点,即仅能在方法调用前、方法调用后、方法抛 阅读全文
posted @ 2016-05-05 16:50 我是一名老菜鸟 阅读(11582) 评论(3) 推荐(0) 编辑
摘要:1、创建数据库及其表 create database demo; use demo; create database demo; use demo; CREATE TABLE `user` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `usern 阅读全文
posted @ 2016-04-27 11:32 我是一名老菜鸟 阅读(37942) 评论(6) 推荐(3) 编辑
摘要:1、Struts2的前身是Opensymphony的Webwork2,实际上Strut和Webwork2合并后形成Struts2。 2、一个HelloWord示例 1)创建Web应用,所需要的Jar包为: 2)配置Struts2 在web.xml文件中配置如下: 2)配置Struts2 在web.x 阅读全文
posted @ 2016-04-26 11:24 我是一名老菜鸟 阅读(19960) 评论(3) 推荐(0) 编辑
摘要:1、JSP模型1(JSP+JavaBean) JSP页面负责处理请求,并将响应发送给客户端。JSP页面文件包括:login.html、loginchk.jsp、welcome.jsp。JavaBean文件包括:UserBean.java、UserCheckBean.java。 1)登录页面login 阅读全文
posted @ 2016-04-25 20:45 我是一名老菜鸟 阅读(5553) 评论(0) 推荐(1) 编辑
摘要:JSP 隐式对象是Web容器加载的一组类的实例。它是可以直接在JSP页面使用的对象。分为4个主要类别: · 输入和输出对象:控制页面的输入和输出(request、response、out)。 · 作用域通信对象:检索与JSP页面的Servlet相关的信息(session、application、pa 阅读全文
posted @ 2016-04-25 17:33 我是一名老菜鸟 阅读(4080) 评论(0) 推荐(0) 编辑
摘要:1、JSP的执行过程 虽然JSP感觉上很像一般的HTML网页,但事实上它是以Servlet的形式被运行的。因为JSP文件在第一次运行的时候会先解释成Servlet源文件,然后编译成Servlet类文件,最后才会被Servlet容器运行,JSP的执行过程主要可以分为以下几点: 1)客户端发出请求; 2 阅读全文
posted @ 2016-04-25 11:45 我是一名老菜鸟 阅读(3937) 评论(0) 推荐(0) 编辑
摘要:JSP页面就是带有JSP元素的常规Web页面,它由静态内容和动态内容构成。其中,静态内容指HTML元素,动态内容(JSP元素)包括指令元素、脚本元素、动作元素、注释等内容。 1、指令元素 指令元素主要用于为转换阶段提供JSP页面的相关信息,指令不会产生任何输出到当前的输出流中,它指定了有关页面本身的 阅读全文
posted @ 2016-04-25 11:13 我是一名老菜鸟 阅读(36713) 评论(2) 推荐(4) 编辑
摘要:注意:Servlet3.0的项目一定要使用Tomcat7.0才能看到效果!! 1、新增标注支持 在Servlet3.0的部署描述文件web.xml的顶层标签<web-app>中有一个metadata-complete属性,如果把该属性的值设置为true,则容器在部署时只依赖于web.xml部署文件中 阅读全文
posted @ 2016-04-24 23:36 我是一名老菜鸟 阅读(5949) 评论(0) 推荐(1) 编辑
摘要:监听器可以使你的应用对某些事件作出反应。 · ServletContextListener:应用上下文生命周期监听器。用于监听Web应用的启动和销毁事件。 · ServletContextAttributeListener:应用上下文属性事件监听器。用于监听Web应用上下文中的属性改变的事件。 · 阅读全文
posted @ 2016-04-24 16:03 我是一名老菜鸟 阅读(1866) 评论(0) 推荐(0) 编辑