`
文章列表
1、新建一个java的工程,导入spring需要的jar包与开发切面需要的jar包。 dist\spring.jar lib\jakarta-commons\commons-logging.jar 如果使用了切面编程(AOP),还需要下列jar文件 lib/aspectj/aspectjweaver.jar和aspectjrt.jar lib/cglib/cglib-nodep-2.1_3.jar 如果使用了JSR-250中的注解,如@Resource/@PostConstruct/@PreDestroy,还需要下列jar文件 lib\j2ee\common-annotations.jar ...
在上片文章里说了如何用jdk自带的类Proxy来实现代理,但是在使用Proxy时要注意:目录类必须实现接口,如果目标类没有实现接口的话,可以用cglib.jar类实现代理。 1、首先从网上找到cglib进行下载,我这里用的是cglib-nodep-2.1_3.jar 2、新建java项目 CGLIBAop 2、在项目中创建程的Person.java package cn.ehoo.bean; /** * @author whp * @Email whp@ehoo.cn * @Jan 4, 2011 * */ public class Person { priva ...
save、update、insert方法,只有在用户登录后才能对这些方法进行访问,如果没有登录则不允许对用户进行访问。 对于这个问题,我们不能在每个方法里对user进行判断,这样做不但增加程序重复代码的数量,还影响代码的美观 所以我们可以使用jdk为我们提供的Proyx来实现目录类,这样就会产生一个动态代理,在这个动态代理类里对user进行判断,如果user不为空,就把方法的调用接给目标类进行执行。 1、用户建一个java项目AOP。 2、在项目中创建程的Person.java package cn.ehoo.bean; /** * @author whp * @Email ...
主要看使用了多少服务.使用的服务越多.对于spring容器来说,不能单说是轻量的还是重量的.要看我们使用的spring容器服务的数量.如果我们只使用了spring核心服务则spring就是轻量级的.如果我们使用了spring的所有的功能,那么它就是重量级的.ejb是一个重量级的框架.它要使用ejb里的所有的服务.所以我们不能用软件的容量来按划分轻量级与重量级的概念.
a. 降低组件之间的耦合度,实现软件各层之间的解耦。如我们的PersonServiceBean类是一个服务层的类,我们就不应在里面有代码new PersonDao()类似的代码,因为PersonDao是一个业务层的代码.我们用了Spring后代码就不会出现new PersonDao()这样的代码了. b. 不用再手工的控制事务.只要我们可以保证connection是同一个connection.那么它们一定是同一个事务.如果不使用spring对事务的操作会很麻烦,如果用spring进行管理我们可以在它的注解中加上一个注解,就可以保证两个方法在同一个事务中.:@Transactional(prop ...
在spring中bean一共有5个作用域。 1、singleton作用域 在每个Spring IoC容器中一个bean定义只有一个对象实例。默认情况下会在容器启动时初始化bean,但我们可以指定Bean节点的lazy-init=“true”来延迟初始化bean,这时候,只有第一次获取bean会才初始化bean。如: <bean id="xxx" class="cn.ehoo.PersonServiceBean" lazy-init="true"/> 如果想对所有bean都应用延迟初始化,可以在根节点beans设置defa ...
1、新建一个Web程序    在程序中引入Spring所需要的jar包,我以前有弄好的包,包含了以下几个jar包 2、在src下新建Person.java的实例bean. package cn.ehoo.bean; /** *@author whp *@Email whp@ehoo.cn *@Dec 30, 2010 * */ public class Person { private Long id; private String userName; public Long getId() { return id; } public void ...
1、新建一个Web程序    在程序中引入Spring所需要的jar包,我以前有弄好的包,包含了以下几个jar包 2、在src下新建Person.java的实例bean. package cn.ehoo.bean; /** *@author whp *@Email whp@ehoo.cn *@Dec 30, 2010 * */ public class Person { private Long id; private String userName; public Long getId() { return id; } public void ...
在启动tomcat时经常会因为各种问题造成tocmat一闪而过。这时我们可以在cmd把startup.bat托入里面进行启动,这时可以找到startup.bat,用记事本打开startup.bat,在文件里面找到 call "%EXECUTABLE%" start %CMD_LINE_ARGS% 然后把这段命令改成 call "%EXECUTABLE%" run %CMD_LINE_ARGS% 这样就可以保证startup.bat启动后不会在一个新窗口中打开.
Global site tag (gtag.js) - Google Analytics