
框架
文章平均质量分 83
May的博客
这个作者很懒,什么都没留下…
展开
-
【Spring学习】spring开发包介绍
spring.jar是包含有完整发布的单个jar包,spring.jar中包含除了 spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到spring-mock.jar来进行辅助测试,正式应用系统中是用不得这些类的。 除了spring.jar文件,Spring还包括有其它13个独立的jar包,各自包含着对应的Spring组件,用户可以根据自己的需要...转载 2015-04-28 11:08:46 · 778 阅读 · 0 评论 -
【Spring学习】RestTemplate访问Rest服务总结
RestTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。调用RestTemplate的默认构造函数,RestTemplate对象在底层通过使用java.net包下的实现创建HTTP 请求,可以通过使用ClientHttpRequestFactory指定不同的HTTP请求方式。Clien...原创 2017-04-19 22:48:49 · 13881 阅读 · 1 评论 -
【Spring源码】从源码实现的角度解析spring的InitializingBean的afterPropertiesSet方法和init-method区别和应用
InitializingBean spring的InitializingBean为bean提供了定义初始化方法的方式。InitializingBean是一个接口,只包含一个方法:afterPropertiesSet():public interface InitializingBean{ public abstract void afterPropertiesSet() ...原创 2017-04-27 21:42:13 · 1702 阅读 · 1 评论 -
【Spring学习】ring的core模块应用详解
Core模块主要的功能是实现了控制反转与依赖注入、Bean配置以及加载。Core模块中有Beans、BeanFactory、BeanDefinitions、ApplicationContext等概念。Beans为spring里的各种对象,一般要配置在spring的配置文件中;BeanFactory为创建Beans的Factory,spring通过BeanFactory加载各种Beans;BeanD...原创 2017-09-04 23:13:20 · 1820 阅读 · 0 评论 -
【HibernateHibernate实体关系映射——双边的多对一、一对多关系
双边的多对一、一对多关系 双边关系是最常见的配置。在多方有一方的引用,一方也有多方的引用。双边关系能够很方便的查询数据。下面以一个班级与学生的双边关系来深入学习。 班级(clazz类)与学生(student类)为一对多关系。班级中有学生属性,学生中有班级属性,二者是双边的关系。 具体代码如下: Clazz类中有一个id主键和一个name属性,另外还有一个List<Stu...原创 2015-06-18 23:15:54 · 3068 阅读 · 0 评论 -
【Hibernate】Hibernate实体关系映射——单边的多对一关系
单边的多对一关系 单边的多对一关系与单边的一对多关系刚好相反,多方有一方的引用,一方没有多方的引用,但是他们的数据表间的关系是一样的。例如:论文与论文类别;具体实现如下: Type实体类的java注解配置比较简单。由于没有Article引用,Type就是最普通的POJO实体,主键为id属性,只有一个String类型的普通属性name。注意:name被配置为unique的,利用数据库提供的...原创 2015-06-18 22:58:43 · 1499 阅读 · 0 评论 -
【Hibernate】Hibernate实体映射——单边的一对多关系
数据库中的表是有关系的,两个表之间可以通过外键关联。如果把表抽象为实体类,这些关系可以抽象为实体之间的一对一,一对多,多对一等关系。hibernate能处理这些复杂的关系,前提是要正确配置这些关系。单边的一对多关系 单边的一对多关系是指一方有集合属性,包含多个多方,而多方没有一方的引用。比较典型的是用户与电子邮件。其中,用户为一方,电子邮件为多方,一个用户可以拥有多个电子邮件记录...原创 2015-06-18 22:18:02 · 1087 阅读 · 0 评论 -
【Hibernate】Hibernate实体关系映射实例解析
//刘梦冰发表于2015-6-181、使用XML配置 Cat.java(实体类) public classCat { private Integerid; private Stringname; private Stringdescription; public Integer getId() { returnid; } ...原创 2015-06-18 11:14:02 · 1466 阅读 · 0 评论 -
【Hibernate】Hibernate的jar包的用途
Hibernate的jar包的用途:net.sf.hibernate.* 该包的类基本上都是接口类和异常类net.sf.hibernate.cache.* JCS的实现类net.sf.hibernate.cfg.* 配置文件读取类net.sf.hibernate.collection.* Hibernate集合接口实现类,例如List,Set,Bag等等,Hiber...原创 2015-06-17 23:05:38 · 1428 阅读 · 0 评论 -
【Hibernate】Hibernate基本原理及概念详解
hibernate是一种ORM框架(全称为Object-Relative Database-Mapping,在java对象与数据库之间建立某种映射,以实现直接存取java对象(一般为POJO)),与各种数据库,SQL语句打交道,是数据持久化的一种解决方案。ORM框架是不同于MVC的另一种思想框架,适用范围也与MVC截然不同。类似功能的框架还有SUN的JDO、Oracle公司的TopL...原创 2015-06-17 18:44:22 · 5618 阅读 · 0 评论 -
【Hibernate】hibernate实体关系映射——单边的多对多关系
//刘梦冰发表于2015-6-19单边的多对多关系多对一、一对多的关系只需要两个表即可,使用子表的外键与主表的主键连接就能存储主从关系。而对多对多的关系至少需要三个表,其中两个表保存两个实体类,另一个表保存关系。下面以一个论坛文章管理为例来深入学习:现在论坛的每个帖子都挺有相关的标签,一个帖子可以属于多个标签,因此它们之间是多对多的关系。本例就使用多对多来处理标签与帖子之间的业务逻...原创 2015-06-19 22:09:53 · 1621 阅读 · 0 评论 -
【Hibernate】Hibernate实体关系映射——双边的多对多关系
//刘梦冰发表于2015-6-19http://blog.youkuaiyun.com/lmb55/article/details/46565581讲述了单边的多对多关系,本文在该例的基础上近一步学习双边的多对多关系。单边的多对多关系中:标签类Tag中没有Post属性,但是帖子类Post中有Tag属性,它们之间是单边的多对多的关系。Tag、Post都是多方,它们的多对多关系保存在第三个表(中间表t...原创 2015-06-19 22:22:14 · 1376 阅读 · 0 评论 -
【Hibernate】Hibernate实体关系映射——单边的一对一关系
//刘梦冰发表于2015-6-19一对对一关系的情况要多一些,不仅在POJO层体现为一对一的,还要保证数据库中的关系是一对一的,不允许出现一个表的两行记录共用另一个表中同一行记录的情况。这可以通过设置外键(关联的关系列)的唯一性约束(unique约束)来实现,也可以通过id(主键)的唯一性实现。一对一的关系可以看作是一对多关系的特例。如果一对多关系的多方只有一个实体对象,那么这个关系就可看...原创 2015-06-19 23:12:35 · 2395 阅读 · 0 评论 -
【Spring学习】Spring JdbcTemplate之五类方法总结
最近写了几个同步数据的统计任务,使用到了JDBCTemplate的批处理,顺手将JDBCTemplate的用法大概总结了一下。JDBCTemplate主要提供了五类方法:execute()方法:可用于执行任何sql语句,但是一般用来执行DDL语句;update()以及batchUpdate()方法:update()方法用来执行增加、修改和删除等语句;batchUpdate()方法用来执行批处理相关...原创 2017-01-04 20:45:54 · 7745 阅读 · 3 评论 -
【Spring学习】spring定时任务的实现方式
近日项目开发中需要执行一些定时任务,比如需要在每天凌晨时候,分析一次前一天的日志信息,借此机会整理了一下定时任务的几种实现方式,由于项目采用spring框架,所以我都将结合spring框架来介绍。一.分类从实现的技术上来分类,目前主要有三种技术(或者说有三种产品):1、Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务,参...转载 2016-04-25 21:33:19 · 694 阅读 · 0 评论 -
【Spring学习】Spring简介
Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。一、Spring的七大模块Spring 框架是一个分层架构,由 7 个定义良好的模块组成。Spring 模块构建在核心容器之上,核心容器定义了创建、配置和管理 bean 的方式。组成 Spring ...原创 2015-06-11 00:56:36 · 715 阅读 · 0 评论 -
【Spring学习】IOC容器
1、IOC的理论背景我们知道在面向对象设计的软件系统中,它的底层都是由N个对象构成的,各个对象之间通过相互合作,最终实现系统地业务逻辑。 图1 软件系统中耦合的对象 如果我们打开机械式手表的后盖,就会看到与上面类似的情形,各个齿轮分别带动时针、分针和秒针顺时针旋转,从而在表盘上产生正确的时间。图1中描述的就是这样的一个齿轮组,它拥有多个独立的齿轮,这些齿轮相互啮...原创 2015-06-11 00:59:18 · 929 阅读 · 0 评论 -
【Spring学习】Spring的AOP模块应用详解
面向切面编程(AOP)的思想就是在执行某些代码前执行另外的代码,使程序更灵活、扩展性更好,可以随便地添加删除某些功能。javaweb机制中的filter就是面向切面编程的例子。Tomcat会在程序运行的某个时机(即servlet执行前后),执行与servlet、JSP等毫无关系的filter代码。AOP把一个业务流程分成几个部分,例如权限检查,业务处理,日志记录,每个部分单独处理,然后把它...原创 2015-06-11 01:01:23 · 1469 阅读 · 0 评论 -
【Spring学习】IoC、DI、AOP入门学习
新建一个普通的java项目,添加spring功能(3.x),不要使用MyEclipse提供的jar包,自己手动添加需要的jar包(commons-logging.jar、spring.jar);IoC控制反转:Hello.javapackage domain;public class Hello { private String msg; publi...原创 2015-06-21 18:10:00 · 671 阅读 · 0 评论 -
【Spring学习】spring动态配置多数据源
这段时间在做智能导航的管理系统——运维系统,涉及到连接多个数据库的问题。因为运维系统要用到智能导航的一些功能,我们目前只是简单的将智能导航整合到运维系统中;运维系统有一个自己的数据库,导航也有自己的数据库,当我们在运维系统中调用导航的一些方法时就可能涉及到访问导航数据库也就是spring配置多数据源的问题了。 Spring动态配置多数据源,即在大型应用中对数据进行切分,并且采用多个数据库实例进...原创 2015-11-04 21:08:36 · 659 阅读 · 0 评论 -
【Spring MVC学习】WebApplicationContext初始化的三种方式
ApplicationContext是Spring的核心,Context我们通常解释为上下文环境,我想用“容器”来表述它更容易理解一些,ApplicationContext则是“应用的容器”了;在Web应用中,我们会用到WebApplicationContext,WebApplicationContext继承自ApplicationContext;WebApplicationContext的初始化...原创 2016-01-13 14:33:14 · 12182 阅读 · 2 评论 -
【Spring学习】使用Spring的jdbcTemplate简化JDBC操作
applicationContext.xml配置文件:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...原创 2016-01-14 16:49:24 · 1358 阅读 · 0 评论 -
【Spring学习】spring注解自动注入bean
Spring mvc注解用到的配置:<!-- 启用spring mvc 注解 --><context:annotation-config /> <context:component-scan base-package="cn.itkt"></context:component-scan> 这样的话,在com包及其所有子包下的所有...原创 2016-01-16 23:05:37 · 2477 阅读 · 0 评论 -
【Spring学习】spring提供的三种定时任务
在spring中我们有三种不同的定时任务:基于Quartz的定时机制、基于Timer的定时机制、基于Executor的定时机制。1、基于Quartz的定时任务机制下面详细解释这个类图中涉及的关键类及其使用场景1.1. SchedulerFactoryBean这是Spring中基于Quartz的定时机制入口,只要Spring容器装载了这个类,Quartz定时机制就会启动,并加载定...原创 2016-01-18 23:40:25 · 1627 阅读 · 0 评论 -
【Spring学习】spring依赖注入用法总结
顾名思义就是通过注解来实现注入,Spring和注入相关的常见注解有Autowired、Resource、Qualifier、Service、Controller、Repository、Component。• Autowired是自动注入,自动从spring的上下文找到合适的bean来注入 • Resource用来指定名称注入 • Qualifier和Autowired配合使用,...原创 2016-01-18 23:47:09 · 791 阅读 · 0 评论 -
【Spring MVC学习】详解spring mvc 3.0常用注解
Spring mvc的注解功能1、@Controller——表示控制器举例:@Controllerpublic class SoftCreateController extendsSimpleBaseController {}或者:@Controller("softCreateController")说明: @Controller负责注册一个bean到spring...原创 2016-03-13 20:13:41 · 1594 阅读 · 3 评论 -
【Spring MVC学习】spring mvc入门示例
之前进公司就直接使用spring mvc做项目了,并没有系统学习过,后来再回头去总结的时候发现我只是在项目中会使用,但是有关spring mvc的配置,还有注解什么的想起来会感觉很混乱,趁着这几天不忙,好好地系统学习总结一下spring mvc。本文只是描述了如何创建一个简单spring mvc工程,有关spring mvc注解的内容请参看本人的另外一篇文章:http://blog.csdn....原创 2016-03-13 21:31:08 · 1181 阅读 · 1 评论 -
【Hibernate】Hibernate实体关系映射——双边的一对一关系
凡是配置实体间关系的标签,例如:@ManyToOne、@OneToMany、@ManyToMany、@OneToOne等,都可以配置mappedBy属性。mappedBy表示该属性是反向属性,与另一边实体类(一般可以用泛型表示)的mappedBy制定的属性是对应的。http://blog.youkuaiyun.com/lmb55/article/details/46566641中以舰船管理为例学习了单边的...原创 2015-06-19 23:33:25 · 1379 阅读 · 0 评论 -
【Hibernate】Hibernate实体关系映射——主键相同的一对一关系
主键相同的一对一关系由于两个实体类是一对一的关系,因此可设置两个实体类使用相同的主键。反过来,具有相同主键的实体被视为一对一的关系。这样两个表就省掉了外键关联。以客户地址管理为例学习主键相同的一对一关系:一个客户对应一个地址,对应的实体之间使用相同的主键。客户与地址之间是一对一的关系,并且两个实体的id是相同的。双方都有对方的引用。注意,两个数据库表之间没有关联关系,hibernate...原创 2015-06-20 00:31:45 · 2546 阅读 · 0 评论 -
SSH整合实例详解
项目构建新建web项目ssh2,建好后添加struts功能添加spring功能:(注意选择的spring版本,并且取消掉MyEclipse自带的jar包,我们之后手动加入相应的jar包)完成之后添加hibernate功能:这里的数据库驱动连接加不加都是可以的,因为后面我们要有一个dbconfig.properties文件手动配置数据库驱动。完成之后,我们手动加入st原创 2015-06-21 00:43:47 · 3669 阅读 · 0 评论 -
【struts2】第一个struts2实例
一直在看struts2框架,但是却一直觉得并没有很好的理解的struts2框架的精髓,从今天开始,我决定要从新系统的再看一遍struts2。首先我们先用struts2实现一个简单的登录功能。以下几个jar包可以实现基本的struts2框架功能:Struts2框架的大概处理流程如下: 1、加载类(FilterDispatcher) 2、读取配置(struts配置文件中的A...原创 2015-06-02 00:37:17 · 1226 阅读 · 0 评论 -
【struts2】struts2简介
Struts2其实并不是一个陌生的Web框架,Struts2是以Webwork的设计思想为核心,吸收了Struts1的优点,因此,可以认为Struts2是Struts1和Webwork结合的产物。一、MVC简介Struts2是一个兼容Struts1和WebWork的MVC框架(struts是属于web层的MVC框架),既然,提到了MVC框架,就不得不对MVC框架做一个简单介绍,仅限于简单介...原创 2015-06-02 01:11:20 · 1518 阅读 · 0 评论 -
【struts2】struts2工作流程
一、struts2的线程安全struts1中的所有Action都只有一个实例,该Action实例会被反复使用。JavaWeb都是使用线程来处理用户请求(request)的,一次请求对应一个处理线程。struts2会为每个处理线程分配一个Action对象,将提交的参数注射到Action属性中,并调用Action的相关方法如execute()等完成业务逻辑;所以struts2中的每个Action都...原创 2015-06-02 16:42:47 · 1955 阅读 · 0 评论 -
【struts2】struts2配置文件—struts.properties
Struts 2框架有两个核心配置文件,其中struts.xml文件主要负责管理应用中的Action映射,以及该Action包含的Result定义等。除此之外,Struts2框架还包含struts.properties文件,该文件定义了Struts 2框架的大量属性,开发者可以通过改变这些属性来满足应用的需求。struts.properties文件是一个标准的Properties文件,该文件包...转载 2015-06-02 20:23:50 · 853 阅读 · 0 评论 -
【struts2】struts2配置文件—struts.xml
解决在断网环境下,配置文件无提示的问题:我们可以看到Struts.xml在断网的情况下,前面有一个叹号,这时,我们按alt+/ 没有提示,这是因为” http://struts.apache.org/dtds/struts-2.0.dtd”是一个网络地址,如果上网的话,IDE会自动帮我们下载此文件,如果断网就没有办法了,但是我们还是有解决方法的.首先在源码包里找到struts-2.0.dt...原创 2015-06-02 22:39:17 · 972 阅读 · 0 评论 -
【struts2】struts2中对象的获取
==========================================在后台如何获取对象:==========================================方法一:属性驱动把该对象集和对象的属性作为成员变量定义到action中,并为其提供get和set方法,调用业务层获取该对象集以及对象各属性的值,最后通过setter()方法将值注入。。。前提:...原创 2015-06-03 09:56:34 · 2887 阅读 · 0 评论 -
【struts2】struts2中的Action详解
在传统的MVC框架(如struts1、Spring等)中,Action都需要实现特定的接口,这些接口都是MVC框架定义的,实现MVC的接口会与MVC框架耦合。struts2的Action要灵活得多,可以实现struts2接口,也可以不实现。一、ActionSupport类自定义Action一般直接继承自ActionSupport类,并定义变量,覆盖execute()方法。变量的值会被str...原创 2015-06-03 11:26:55 · 3106 阅读 · 0 评论 -
【struts2】struts2的零配置
零配置(zero configuration)的意思是不使用任何配置文件部署struts2应用,如struts.xml、struts.properties等。零配置并不是真的“零配置”,只是没有传统的配置文件struts.xml了,但是仍然需要使用@Annotation配置。@Annocation翻译为@注解、@标注,有些资料也翻译为@注释。1、通过@注解实现Actin零配置在@注解大行其...原创 2015-06-03 15:01:02 · 1078 阅读 · 0 评论 -
【struts2】struts2实现自定义数据类型转换器
JSP提交的数据全部都是String类型的。struts2也是通过request.getParameter(name)获取到String类型数据,并通过拦截器将String转换成各种常用的数据类型,如:Date、Time、Timestamp等,然后通过getter、setter方法设置到Action对应的属性上。struts2默认的转换器并不总是满足要求。例如:输入时间,struts2只能转换...原创 2015-06-03 22:22:48 · 1812 阅读 · 0 评论 -
【struts2】struts2的一些常用高级应用
==============================================一、获取request、response==============================================struts2的action抛弃了request、response等servlet API,是业务层更加独立。但是有时候需要使用request、response。例...原创 2015-06-04 01:22:27 · 1450 阅读 · 0 评论