自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(130)
  • 收藏
  • 关注

转载 Spring读书笔记-----Spring的Bean之设置Bean值

Java实例的属性值可以有很多种数据类型、基本类型值、字符串类型、java实例甚至其他的Bean实例、java集合、数组等。所以Spring允许通过如下几个元素为Bean实例的属性指定值: value ref bean list、set、map、props 一、value:设置普通属性值 <value.../>元素用于指定字符串类型、基本类

2016-11-23 14:50:26 723

转载 获得程序当前路径System.getProperty("user.dir")

因为所有在java.io中的类都是将相对路径名解释为起始于用户的当前工作目录,所以应该清楚当前的目录。 可以通过调用System.getProperty(“user.dir”) 来获得。/** 获得当前类的完整路径。最后一句 */ package org.outman.dms.server; import java.net.MalformedURLException; import java

2016-10-26 09:16:11 6222

转载 Spring MVC全局异常处理与拦截器校检

在使用Spring MVC进行开发时,总是要对系统异常和用户的异常行为进行处理,以提供给用户友好的提示,也可以提高系统的安全性。拦截系统响应错误首先是拦截系统响应错误,这个可以在web.xml中配置,根据错误代码跳转到相应的提示页面。这里要注意一个问题,错误处理页面所用到的静态资源最好是直接写在页面中,或者同一个文件夹下,因为如果用户访问了一个系统不存在的路径,例如:/ss/kk/ll/tt.jsp

2016-10-24 16:39:29 7377 1

转载 Spring、Spring MVC、MyBatis整合文件配置详解

web.xml应该是整个项目最重要的配置文件了,不过servlet3.0中已经支持注解配置方式了。在servlet3.0以前每个servlet必须要在web.xml中配置servlet及其映射关系。但是在spring框架中就不用了,因为Spring中是依赖注入(Dependency Injection)的也叫控制反转(Inversion of Control)。但是也要配置一个重要的servlet,

2016-10-24 16:10:56 473

转载 spring MVC配置详解

一、Spring MVC环境搭建:(Spring 2.5.6 + Hibernate 3.2.0)  1. jar包引入  Spring 2.5.6:spring.jar、spring-webmvc.jar、commons-logging.jar、cglib-nodep-2.1_3.jar  Hibernate 3.6.8:hibernate3.jar、hibernate-jpa-2.0-api-1

2016-10-24 14:19:08 342

转载 Spring MVC 常用Jar包官方下载地址(官方Maven仓库)

spring:http://maven.springframework.org/release/org/springframework/spring/ jackson:http://repo1.maven.org/maven2/com/fasterxml/jackson/core/ (为实现前后台传递json数据) commons logging:http://commons.apache.o

2016-10-20 14:57:48 3858

原创 【SpringMVC架构】SpringMVC入门实例,解析工作原理(二)

这篇博文,我们搭建一个简单SpringMVC的环境,使用非注解形式实现一个HelloWorld实例,从简单入手,逐步深入。环境准备我们需要有基本的Java环境,下面只是简单的罗列,不再详细的介绍。jdk1.6以上 eclipse或者myEclipse tomcat6以上 我们使用SpringMVC的版本是Spring3.2.0,下图是最基本的jar包: 在spring的官方API文档中,

2016-10-17 11:28:51 676

原创 【SpringMVC架构】SpringMVC介绍(一)

这篇博文,我们主要介绍什么是SpringMVC,以及重新解释一下什么是MVC,以及MVC的详细执行步骤。什么是SpringMVC?在介绍SpringMVC之前,我们先看一张非常熟悉的图: 相信看这篇文章的博友都听说或者使用过spring,并且我之前的文章也详细的讲解了Spring的整体框架,以及IOC,AOP,Hibernate和Mybatis等框架,JMS等等,同样Spring自己也支持对D

2016-10-17 11:23:29 424

原创 三大框架SSH成长路程(二十)

一步步重构容器实现Spring框架——彻底封装,实现简单灵活的Spring框架(十一) 这篇博文的目标是不仅形似Spring,而且要神似Spring,进一步封装对象的依赖关系。 我们知道Spring框架,不仅可以根据配置创建对象,而且可以根据配置创建对象之间的依赖关系。对象之间的依 赖关系怎么配置呢,那我们先看一下配置文件。<?xml version="1.0" encoding="

2016-10-17 10:45:24 297

原创 三大框架SSH成长路程(十九)

一步步重构容器实现Spring框架——配置文件+反射实现IoC容器(十)简单配置,反射 上篇博文容器初始化时,使用new的方式来实力化对象,这篇博文我们利用配置文件+反射实力化对象,进一步封装降低容器和组件的耦合度。下面我们先看一下配置文件。<?xml version="1.0" encoding="UTF-8"?> <beans> <bean id="dao" class="com

2016-10-17 10:42:48 294

原创 三大框架SSH成长路程(十八)

一步步重构容器实现Spring框架——解决容器对组件的“侵入式”管理的两种方案–主动查找和控制反转(九)我们为了去掉接口 对具体实现的依赖关系,封装了一个特别简陋的容器,最后给大家抛出了一个问题:如何让组件不再依赖容器?这篇 博文主要是通过两种解决方案来解决这个问题,最后对比各自的优缺点。服务定位器 解决方案之一就是使用服务定位器(Service Locator),我们也可以叫主动查找。服务

2016-10-17 10:39:33 267

原创 三大框架SSH成长路程(十七)

一步步重构容器实现Spring框架——从一个简单的容器开始(八)从这篇博客开始,我们从一个简单的容器开始,一步步的重构,最后实现一个基本的Spring框架的雏形,为了帮助我们更加深入的理解Spring的IoC的原理和源码。容器 ****相信大家对容器并不陌生,它是生活中非常常见的物品,容器用来包装和装载物品的贮存器(如箱、罐、坛等等),但是在编程中什么容器呢?我们先看一下百科的解释:——————

2016-10-17 10:34:48 352

原创 三大框架SSH成长路程(十六)

Spring的AOP逐层深入——采用注解完成AOP(七)这篇我们使用注解方式来实现一个AOP,我们先看一下项目的目录。 我们采用的是JDK代理,所以首先将接口和实现类代码附上:package com.tgb.spring; public interface UserManager { public void addUser(String userName,String pass

2016-10-17 10:29:19 480

原创 三大框架SSH成长路程(十五)

Spring的AOP逐层深入——AOP的基本原理(六)经过我们对spring的IOC不断的深入学习,Spring的面貌逐渐变得清晰,我们对Spring的了解也更加的深入。从这篇博文开始我们学习Spring的第二大核心内容:AOP。什么是AOP AOP(Aspect Oriented Programming),意思是面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。A

2016-10-17 10:24:12 458

原创 三大框架SSH成长路程(十四)

Spring的IOC逐层深入——源码解析之IoC的根本BeanFactory(五)这篇我先简单的复习一下IoC,然后根据实例介绍IoC最基本的原理。废话少说,下面我们开始这篇博文的话题:什么是IoC IoC容器,最主要的就是完成对象的创建以及维护对象的依赖关系等。 所谓控制反转,包括两部分:一是控制,二是反转,就是把传统方式需要由代码来实现对象的创建、维护对象的依赖关系,反转给容器来帮

2016-10-17 10:19:56 1114

原创 三大框架SSH成长路程(十三)

Spring的IOC逐层深入——依赖注入的两种实现类型(四)我们这篇博文还是使用上篇博客中添加用户的实力,只是给大家在注入对象的方式上发生一点点变化,为了让大家更加容易接受。下面我们开始:构造器注入 构造器注入,即通过构造函数完成依赖关系的设定。我们看一下spring的配置文件:<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="htt

2016-10-17 10:13:58 327

原创 三大框架SSH成长路程(十二)

IoC理论的背景 我们都知道,在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑。 图1:软件系统中耦合的对象 如果我们打开机械式手表的后盖,就会看到与上面类似的情形,各个齿轮分别带动时针、分针和秒针顺时针旋转,从而在表盘上产生正确的时间。图1中描述的就是这样的一个齿轮组,它拥有多个独立的齿轮,这些齿轮相互啮合在一起,协同工作

2016-10-17 10:09:38 532

原创 三大框架SSH成长路程(十一)

Spring的IOC逐层深入——为什么要使用IOC[实例讲解](二)这篇博客我们使用传统方式(即不使用Spring)来实现一个添加用户的实例,再同理使用Spring实现添加用户的实例,对比学习IoC的概念,以及为什么使用IoC等等,最后,简单总结。下面我们开始:传统方式:客户端:public class Client { public static void main(String[] a

2016-10-17 10:01:08 580

原创 三大框架SSH成长路程(十)

Spring简介,搭建Spring环境——轻量级容器框架(一)Spring是什么? Spring是一个集成了许多第三方框架的大杂烩,其核心技术是IOC(控制反转,也称依赖注入)和AOP(面向切面编程),所以spring既是一个IoC容器,也是一个AOP框架。知道了什么是Spring是学习的开端,下面说一下为什么使用Spring。为什么使用Spring? 我们知道没有Spring,Strut

2016-10-17 09:54:00 590

原创 三大框架SSH成长路程(九)

Hibernate系列总结篇(九)这篇博文是hibernate系列的最后一篇,既然是最后一篇,我们就应该进行一下从头到尾,整体上的总结,将这个系列的内容融会贯通。概念 Hibernate是一个对象关系映射框架,当然从分层的角度看,我们也说它是数据持久层的框架。 我们从上一句话可以看出Hibernate的核心:面向对象、关系映射以及数据持久化。前面两个概念很容易理解,而对于“数据持久化”,就是将

2016-10-14 17:24:04 312

原创 三大框架SSH成长路程(八)

多对多关联映射(八)多对多映射是现实生活中最常见的映射,也是最容易理解的映射。废话少说,直接开始。映射原理 不论是单向关联还是双向关联都是通过第三张表,将两个表中的主键放到第三张做一个关联。用第三张表来解决可能会造成数据冗余的问题。举例一个用户(User)对多个角色(Role),一个角色对多个用户。分类单向的多对多关联映射(单向User—>Role)对象模型 关系模型 实例

2016-10-14 17:18:15 265

原创 三大框架SSH成长路程(七)

一对多关联映射(七)一对多关联映射映射原理 一对多关联映射和多对一关联映射的映射原理是一致的,都是在多的一端加入一个外键,指向一的一端。关联关系都是由多端维护,只是在写映射时发生了变化。多对一和一对多的区别 多对一和一对多的区别在于维护的关系不同:(1)多对一:多端维护一端的关系,在加载多端时,可以将一端加载上来。 (2)一对多:一端维护多端的关系,在加载一端时,可以将多端加载上来。

2016-10-14 16:37:03 231

原创 三大框架SSH成长路程(六)

一对一双向关联映射(六)上篇博文一对一单向关联映射(五),我们介绍了一对一的单向关联映射,单向是指只能从人(Person)这端加载身份证端(IdCard),但是反过来,不能从身份证端加载人得信息。如图所示: 关键原因在于对象模型具有方向性: 单向:一端只能加载另一端,不能反过来。 双向:两端都可以加载另一端。 问题来了:如何我们想从身份证端(IdCard)加载人(Per

2016-10-14 16:12:11 473

原创 三大框架SSH成长路程(五)

映射原理 两个实体对象之间是一对一的关联映射,即一个对象只能与另外唯一的一个对象相对应。例如:一个人(Person)只有一张身份证(IdCard)。我们看一下这个例子的对象模型,如下图所示:对象模型 从上图中可以看出: 1、一个人只有一张身份证,唯一的一个身份证号,对象之间是一对一的关系; 2、人(Person)持有身份证(IdCard)的引用,所以,两个对象

2016-10-14 15:40:09 302

原创 三大框架SSH成长路程(四)

Hibernate映射——多对一单向关联映射这篇博客,我们开始介绍基于基本映射的关联关系映射。概念 基本映射是对一个实体进行映射,关联映射就是处理多个实体之间的关系,将关联关系映射到数据库中,所谓的关联关系在对象模型中有一个或多个引用。分类 关联关系分为上述七种,但是由于相互之间有各种关系,可以简化,例如:多对一与一对多映射,只是侧重的角度不对而已。映射技巧 映射技巧是小编写映射文件的

2016-10-14 15:06:33 281

原创 三大框架SSH成长路程(三)

这篇博客小编介绍Hibernate的经典内容:对象关系映射。主要介绍映射的基本概念,映射的分类,映射文件。概念 ORM(Object Relational Mapping),即对象关系映射。 它的作用就是在关系型数据库和对象之间做了一个映射。从对象(Object)映射到关系(Relation),再从关系映射到对象。相信很多人跟小编一个毛病,看到概念就头疼,下面小编画了一张图加深理解。

2016-10-14 14:45:47 315

原创 三大框架SSH成长路程(二)

hibernate是非常典型的持久层框架,持久化的思想是非常值得我们学习和研究的。这篇博文,我们主要以实例的形式学习Hibernate,不深究Hibernate的思想和原理,否则,一味追求,苦学思想和原理,到最后可能什么也学不会,从实践入手,熟能生巧,思想和原理自然而然领悟。这篇博文,我们从实践角度,动手搭建一个简单的Hibernate实例。一、开发环境 Win8 + jdk1.7 + My

2016-10-14 14:19:10 498

原创 三大框架SSH成长路程(一)

什么是Hibernate? Hibernate,翻译过来是冬眠的意思,正好现在已经进入秋季,世间万物开始准备冬眠了。其实对于对象来说就是持久化。 持久化(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是将内存中的对象存储在关系型的数据库中,当然也可以存储在磁盘文件中、XML数据文件中等等。持久化是将程序数据在持久状态和瞬时状态间转

2016-10-14 13:59:49 357

原创 sublime text2使用Package Control组件安装

1.按ctrl+ 调出console或者在view中选中show console2.粘贴以下代码到底部命令行并回车:import urllib2,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();os.makedirs(ipp) if not os.path.exists(ipp) else N

2016-10-11 16:58:23 396

原创 Java面试题大全(Java基础十五)

87、线程的基本概念、线程的基本状态以及状态之间的关系 多线程扩展了多进程的概念,使得同一个进程可以同时并发处理多个任务。线程(Thread)也被称作轻量级进程(Lightweight Process),线程是进程的执行单元。就像进程在操作系统中的地位一样,线程在程序中是独立的、并发的执行流。当进程被初始化后,主线程就被创建了。对于绝大多数的应用程序来说,通常仅要求有一个主线程,但我们也可以在该进程

2016-09-29 17:01:24 381

原创 Java面试题大全(Java基础十四)

82、sleep() 和 wait() 有什么区别? sleep()是Thread类的静态方法,它的作用是让当前线程从运行状态转入、阻塞状态,线程执行暂停下来,当一个线程通过sleep()方法暂停之后,该线程并不会释放它对同步监视器的加锁。 wait()是Object对象的方法,但实际上只有同步监视器才能调用该方法。当程序在同步代码块、或同步方法内通过同步监视器调用该方法时,将会导致当前线程释放对

2016-09-29 16:58:51 329

原创 Java面试题大全(Java基础十三)

71、heap和stack有什么区别。 stack内存指的是程序进入一个方法时,系统会专门为这个方法分配一块内存空间,这块内存空间也被称为该方法栈区,该方法的栈区专门用于存储该方法中定义的局部变量,包括基本类型的变量和引用变量。当这个方法结束时,该方法栈区将会自动被销毁,栈区中的所有局部变量都会随之销毁。 heap内存是Java虚拟机拥有的内存区,所有Java对象都将被放在heap内存内,位于he

2016-09-29 16:56:04 866 1

原创 Java面试题大全(Java基础十二)

66、说出一些常用的类,包,接口,请各举5个 常用的包有: java.lang包下包括Math、System、StringBuilder、StringBuffer、Runtime、Thread、Runnable等。java.util包下包括List、Set、Map,以及这些接口的常用实现类:ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap等。

2016-09-29 16:53:00 336

原创 Java面试题大全(Java基础十一)

56、HashMap和Hashtable的区别HashMap与Hashtable的区别类似于ArrayList与Vector的区别。 Hashtable与Vector都是JDK 1.0就有一个一个古老的集合,因此Hashtable是一个继承自Dictionary的古老集合。 从JDK 1.2引入集合框架的Map接口之后,Java让Hashtable也实现了Map接口,因此Hashtable也新增

2016-09-29 16:51:15 740

原创 Java面试题大全(Java基础十)

46、内部类可以引用它的外部类的成员吗?有没有什么限制? 内部类可以访问所在外部类的成员。 但有一点需要注意:静态成员不能访问非静态成员,因此静态内部类(属于静态成员)就不能访问外部类的非静态成员。47、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)? 可以继承其他类或实现其他接口。而

2016-09-29 16:48:23 380

原创 Java面试题大全(Java基础九)

37、编写一个函数将一个十六进制数的字符串参数转换成整数返回。 String str = “13abf”; int len = str.length; int sum = 0; for(int i=0;i<len;i++){ char c = str.charAt(len-1-i); int n = Character.digit(c,1

2016-09-29 16:45:40 498

原创 Java面试题大全

1.比较HQL、Criteria、Native-SQL这三者做查询的区别,以及应该如何进行选择?HQL功能很强大,适合各种情况,但是动态条件查询构造起来很不方便; Criteria 最适合动态查询,但不太适合统计查询,QBE还不够强大.只适合简单的查询; Native-SQL可以实现特定的数据库的SQL,但是可移植性并不好。 如大部分查询都是动态条件查询,首先criteria,甚至使用Hibe

2016-09-29 13:56:25 304

原创 Java面试题大全

8、写出Hibernate中核心接口/类的名称,并描述他们各自的责任?Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和 Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五的核心接口分别加以介绍。 Session接口:Session接

2016-09-29 13:53:49 473

原创 Java面试题大全(流行的框架部分)

1、什么是MVC模式?    MVC (Model View Controller) 是一个设计模式,使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。M是指数据模型,V是指用户界面,C则是控制器。使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以应用于不同的表现形式。MODEL: 封装了所有的商业逻辑以及规则。通常被JavaBean或EJB实现。VI

2016-09-29 13:50:41 9205

原创 Java面试题大全(JDBC部分)

JDBC部分的面试题,可能覆盖数据库和JDBC等相关内容13、JDBC操作数据库的步骤 ? 1.注册数据库驱动。 2.建立数据库连接。 3.创建一个Statement。 4.执行SQL语句。 5.处理结果集。 6.关闭数据库连接。 2.JDBC中的Statement 和PreparedStatement的区别? PreparedStatement是预编译的SQL语句,效率高于State

2016-09-29 09:24:41 9581

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除