为您找到搜索结果:3349个
Spring+SpringMVC企业快速开发架构搭建
从2014年12月开始,一直在研究Spring的框架;并且在我们新的开发框架中得到应用;这篇文章记录了这段时间的成长记录,仅此先给共同成长的小白。 为了简单,我们选择使用maven来构建项目,通过maven可以控制引入jar的版本,大大简化了jar包的管理工作,废话不多说,创建一个项目一、创建一个新项目1、创建maven项目2、选择maven-archetype-webapp3、填写groupId、artifactId、package项目目录:二、项目创建完成后修改默认的jdk、编译器等默认属性,我的项目选择的是jdk73、引入Spring的jar <properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><spring.version>3.2.12.RELEASE</spring.version><tddl.versio...
hibernate+spring设置MaxResults
<beanid="hibernateTemplate"class="org.springframework.orm.hibernate3.HibernateTemplate"><propertyname="maxResults"value="1000"/><propertyname="sessionFactory"ref="sessionFactory"/></bean><beanid="yourDao"class="com.xxx.yourDao"><propertyname="hibernateTemplate"ref="hibernateTemplate"/></bean> 在这里感谢Readonly 的耐心解答 ...
使用Spring Boot快速构建应用
随着Spring4新版本的发布,SpringBoot这个新的子项目得到了广泛的关注,因为不管是Spring4官方发布的新闻稿还是针对首席架构师AdrianColyer的专访,都对这个子项目所带来的生产率提升赞誉有加。SpringBoot充分利用了JavaConfig的配置模式以及“约定优于配置”的理念,能够极大的简化基于SpringMVC的Web应用和REST服务开发。Spring4倡导微服务的架构,针对这一理念,近来在微博上也有一些有价值的讨论,如这里和这里。微服务架构倡导将功能拆分到离散的服务中,独立地进行部署,SpringBoot能够很方便地将应用打包成独立可运行的JAR包,因此在开发模式上很契合这一理念。目前,SpringBoot依然是0.5.0的里程碑版本,因此相关的文档尚不完善,本文将会以一个简单的样例来介绍基于这个项目的开发过程。要SpringBoot进行功能开发,需要使用Gradle或者Maven作为构建工具。在本例中,我们会使用Eclipse和Maven插件进行开发。要使用SpringBoot,首先创建一个Maven工程,并修改Maven主要的...
Spring发邮件
需要的spring的jar包有:spring.jar,mail.jar,commons-logging.jar,activation.jarJava代码package mail; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.JavaMailSender; public class Main { &nbs...
Spring AOP 之AfterReturningAdvice & MethodBeforeAdv
Spring框架中成功吸引人的一点就是容器事务的管理,提供了一个轻量级的容器事务处理,针对的对象是普通的java类,使用Spring事务管理的话,你可以按照自己的业务把一些相关的方法纳入其事务管理里面,这就避免了程序员在处理事务的过程中繁琐的工作.同时这些也是ejb2.X规范里面吸引人的一点,这在spring里面都很好的提供.虽然在跨容器的事务管理,spring里面并没有提供,但是对于一般的web程序来说,也不需要仅仅为了那些功能而不得不使用ejb.不过,最近jboss的嵌入式的ejb容器也可以做的更小了,也是开源中的选择之一.无论技术是怎样发展的,当前,我们先来研究其中AOP实现的方法. 事实上,Spring中的事务处理是通过AOP思想来实现的,SpringAOP与AspectJ和JBoss具有很大的不同,首先,使用SpringAOP框架的用户要记住的一点是,SpringAOP针对的是方法层次上的实现,而其他两者对字段也提供了支持.说到SpringAOP的内幕,其实也不难,对于有接口的类,使用的是Java内部类提供的Proxy;而对于那些不实现接口的类,使用的是cglib库,动...
使用struts+spring+hibernate 组装web应用
其实,就算用Java建造一个不是很烦琐的web应用,也不是件轻松的事情。在构架的一开始就有很多事情要考虑。从高处看,摆在开发者面前有很多问题:要考虑是怎样建立用户接口?在哪里处理业务逻辑?怎样持久化的数据。而这三层构架中,每一层都有他们要仔细考虑的。各个层该使用什么技术?怎样的设计能松散耦合还能灵活改变?怎样替换某个层而不影响整体构架?应用程序如何做各种级别的业务处理(比如事务处理)?构架一个Web应用需要弄明白好多问题。幸运的是,已经有不少开发者已经遇到过这类问题,并且建立了处理这类问题的框架。一个好框架具备以下几点:减轻开发者处理复杂的问题的负担(“不重复发明轮子”);内部有良好的扩展;并且有一个支持它的强大的用户团体。好的构架一般有针对性的处理某一类问题,并且能将它做好(DoOneThingwell)。然而,你的程序中有几个层可能需要使用特定的框架,已经完成的UI(用户接口)并不代表你也可以把你的业务逻辑和持久逻辑偶合到你的UI部分。举个例子,你不该在一个Controller(控制器)里面写JDBC代码作为你的业务逻辑,这不是控制器应该提供的。一个UI控制器应该委派给其它给在UI...
如何将Spring配置文件已配置的类Mock
手上在做一个历史遗留项目,整个项目有N个模块,我只负责其中一个子模块的功能的维护工作,项目的各个模块是通过spring来将各个模块耦合起来的。启动项目已经有一个配置文件,并且已经打入了jar包。为了精简我所描述的场景,避免引入不必要的复杂性。我将不介绍每个模块中的具体实现,重点只描述各个模块之间的依赖关系。假设我所维护的模块是A,模块A运行需要依赖模块B,模块B是其他人开发的。这个项目在前期是是基于接口开发的,这是一个非常好的前提,这样,我轻而易举就能做些小动作了。以下是这个系统的类图(虽然简单,但是能说明问题)Spring的配置文件“application-context.xml“是这样写的: <?xmlversion="1.0"encoding="UTF-8"?><beansxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><!--模块配置--><beanid="moduleB"class="modulemock.DefaultModuleBImpl"/><be...
Spring的Autowired自动装配(XML版本+Annotation版本+源码+解析)
@Autowired自动装配上面的例子我们用的都是手动装配的,如果DAO-Service一多那就很麻烦了,那么我们需要偷懒一下,然spring去帮我们自动装配,自动装配的类型有两种,一种是byName,一种是byType。 *。如果是XML版,只需要在bean里面加个 autowire="byXXX"就行了。重写一下DAO.Impl的toString()方法来做测试,看看注入的ID。@Overridepublic String toString() {return "daoId=" + daoId;}----------------------------------------------------------------------------------------- <bean name="userDAO1" class="com.bjsxt.dao.impl.UserDAOImpl"> <property ...
spring的Bean scopes(作用域)
Bean scopes(作用域):①singleton(单例):当一个bean的作用域为singleton,那么Spring IoC容器中只会存在一个共享的bean实例,并且所有对bean的请求,只要id与该bean定义相匹配,则只会返回bean的同一实例。这是默认的作用域。②Prototype(原型)作用域的bean会导致在每次对该bean请求(将其注入到另一个bean中,或者以程序的方式调用容器的getBean()方法)时都会创建一个新的bean实例。*。对于prototype作用域的bean,有一点非常重要,那就是Spring不能对一个prototype bean的整个生命周期负责:容器在初始化、配置、装饰或者是装配完一个prototype实例后,将它交给客户端,随后就对该prototype实例不闻不问了。 *.根据经验,对有状态的bean应该使用prototype作用域,而对无状态的bean则应该使用singleton作用域。 ③request请求、session会话、global session全局会话仅在web应用...
junit调试spring报错org/apache/commons/logging/LogFactory
如果用junit调试spring报错:"java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory "那么说明缺少了个commons-logging.jar,这个很常见,是使用spring的必备包,用来记录程序运行的日志。 加进去,就ok了! 另外网上有人说用log4j的jar再配置个log4j.properties的话,也可以,但是我试过了,完全不行,还是报错。 ⊙_⊙附件附上commons-logging.jar吧,免得大家到处找。^_^还有什么好方法或者疑问和意见欢迎大家提出来一起讨论!...
spring注解详解[转]
Spring3之零配置注解详解 <context:component-scanbase-package="cn.java......"/>标签将自动开启“注解实现Bean依赖注入”支持,标签来表示需要自动注册Bean定义,而通过base-package属性指定扫描的类路径位置。 <aop:aspectj-autoproxy/>用于开启spring对@AspectJ风格切面的支持。 <beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:aop="http://www.springframework.org/schema/aop"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/sch...
spring之aop概念和配置
面向切面的一些概念:简单说:连接点就一些方法,在这些方法基础上需要额外的一些业务需求处理。切入点就是方法所代表的功能点组合起来的功能需求。通知就是那些额外的操作。织入就是使用代理实现整个切入的过程。引入就是已有功能代码不变的基础上,添加新属性和方法。 spring使用aop首先xml添加命名空间实例;并且要在xml配置中添加<aop:aspectj-autoproxy/>标签,当然对象交给spring管理也要配置bean环绕通知可以替换上面通知效果:最终通知在例外通知前执行是因为配置在前的原因。 二。采用xml配置: 注意点:出现例外通知,后置通知将不会执行,而环绕和其他通知一起使用时执行顺序有些特别 ...
spring注入简记
我们知道对象是交给容器来管理的那么init()destroy():可以在bean配置中设置对象初识化前执行和销毁后执行int-delay=""表示是否延迟实例化即容器实例时还是获取bean时实例化bean中scope=“”范围属性表示单例或多个用来指定bean的作用域singleton---单例 只创建一个对象。prototype---原型 想创建多少个就创建多少了。request---针对Web项目,不同的请求创建单独的Bean对象,同一个请求共享一个Bean。session---针对Web项目,不同的会话创建单独的Bean对象,同一个会话共享一个Bean。一:采用xml注入配置1对象注入<beanid=""class=""></bean> 2类中注入对象分两种方式2.1set注入bean <bean...> <propertyname=""ref="对应bean">//在类中属性对应的对象引用需有set()方法; </bean>2.2构造器...
SpringMVC 之 mvc:exclude-mapping 不拦截某个请求
在使用SpringMVC是,配置了一个Session拦截器,用于拦截用户是否登录,但是用户访问登录页面和注册页面时就不需要拦截了,这时就需要用到这个标签了<mvc:execlude-mapping/>。代码上来先:<!--配置用于session验证的拦截器--><!--如果有多个拦截器满足拦截处理的要求,则依据配置的先后顺序来执行--><mvc:interceptors><mvc:interceptor><!--拦截所有的请求,这个必须写在前面,也就是写在【不拦截】的上面--><mvc:mappingpath="/**"/><!--但是排除下面这些,也就是不拦截请求--><mvc:exclude-mappingpath="/login.html"/><mvc:exclude-mappingpath="/account/login.do"/><mvc:exclude-mappingpath="/account/regist.do"/><beanclas...
Spring Boot 学习笔记
看了【纯洁的微笑】的博客后,我决定开始学好Spring体系了,真的是解决了饥渴的我。...