自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(142)
  • 资源 (2)
  • 收藏
  • 关注

原创 乱码

解决乱码问题 1. 将get请求改为post请求 2. String a=new String(b.getBytes(“iso-8859-1”), “UTF-8”):String(b.getBytes(“iso- 8859-1”), “UTF-8”):将b按 iso-8859-1进行解码 然后再按UTF-8进行编码。 3. 在tomcat中配置字符集,eg:配置文件路径:/{pro

2017-11-23 10:34:24 319

转载 构建dubbo服务消费者web应用的war包

1、dubbo服务消费者打包类型:war2、在pom.xml中配置包含所有的配置文件:<build> <finalName>edu-web-boss</finalName> <resources> <!-- 包含的src/main/resources下的所有配置文件 --> <resource>

2017-04-28 15:05:21 896

转载 maven构建dubbo服务的可执行jar包

dubbo提供者服务使用dubbo框架提供的Main方法类来运行: dubbo框架提供:com.alibaba.dubbo.container.Main(可实现优雅关机ShutdownHook)在提供者的pom.xml中配置以下maven插件:<build> <finalName>dubbo-provider</finalName> <!-- jar包名,一般设置为提供者服务名

2017-04-20 18:30:40 3459

原创 dubbo管控台不显示消费者

今天遇到太多dubbo问题,其中一个是dubbo提供者和消费者都成功启动,但是dubbo管控台里只有提供者,没有显示消费者。解决:在启动消费者后,要运行消费者项目,使消费者要调用到提供者提供的服务,这样再刷新一下管控台,就会显示消费者了~~!

2017-04-20 14:18:20 5904 2

转载 dubbo调用和maven依赖的区别

dubbo:跨系统通信。比如:两个系统,一个系统A作客户端,一个系统B作服务器, 服务器B把自己的接口定义提供给客户端A,客户端A将接口定义在spring中的bean。客户端A可直接使用这个bean,就好像这些接口的实现(即服务器B的代码)也是在自己的代码里一样。客户端A和服务器B在启动的时候都会把自己的机器IP注册到zookeeper上,客户端A会把zk上的服务端ip拉到磁盘上,并记录哪些ip提供

2017-04-19 10:52:10 7500

转载 Java模板引擎之Freemarker

Freemarker:是一款模板引擎,不是web框架。

2017-04-12 17:17:41 463

转载 zookeeper中的基本概念

1、集群角色: 2、会话: 3、数据节点: 4、版本:记录节点数据或者节点的子节点列表或者是权限信息的修改次数 5、watcher: 6、ACL权限控制:

2017-04-07 10:42:40 337

转载 Zookeeper概述

分布式:把一个计算任务分解成若干个计算单元,并且分派到若干不同的计算机中去执行,然后汇总计算结果的过程。zookeeper:分布式协调服务。是一个高性能的分布式数据一致性解决方案,它将那些复杂的、容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语急,并提供一系列简单易用的接口给用户使用。zookeeper应用场景:1、数据发布/订阅: 2、负载均衡 3、命名服务: 4、

2017-04-07 09:45:19 424

转载 Spring AOP ProxyFactoryBean

ProxyFactoryBean eg:定义一个Bean,id=“foo”这样的ProxyFactoryBean,引用父对象看到的不是ProxyFactoryBean本身,而是这个类的getObject()方法创建的对象。 getObject()方法返回的是target对象。 即:target不再使用ref指定,而是在其内部直接定义bean。代理类:

2017-03-28 10:17:19 679

转载 Spring AOP API

切入点Pointcut(接口),有多个实现类: 后置通知: 环绕通知:

2017-03-27 18:06:14 393

转载 Spring AOP

Advice:通知。在切面的某个特定的连接点上执行的动作。 有接口的使用JDK动态代理,无接口的使用CGLIB代理。基于配置的AOP: eg: 配置切面aspect: 配置切入点Pointcut: 配置通知advice: 前置通知: 在返回之后的通知: 抛出异常之后的通知: 返回的通知(方法结束后的通知或者说是方法结束后的最后一行代码): 注:无论方法是否正常结束

2017-03-27 17:00:22 456

转载 Spring Bean装配--Resource

通过Spring记载一些资源文件可以通过resource完成 ResourceLoader:对Resources进行加载的类。在Spring的IOC容器里,所有的application context都实现了ResourceLoader这个接口,也就是说所有的application context都可以用来获取resource的实例。 ResourceLoader注入参数时,前缀的类型: c

2016-11-23 17:47:37 456

转载 Spring Bean--自动装配

自动装配:实现bean的注入或者装配 bean的自动装配的类型(默认类型为No): 在同一个IOC容器中,id即属性名是唯一的。例: spring-autowiring.xml设置default-autowire:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schem

2016-10-19 21:02:53 422

转载 Spring Bean--Aware接口

Aware接口: 常见的Aware:ApplicationContextAware:向实现了这个接口的bean提供ApplicationContext(IOC容器的上下文信息),实现了这个接口的bean必须配置到Spring的bean配置文件中去,并且由Spring的bean容器去加载。BeanNameAware:提供一个关于BeanName的定义的内容。ApplicationEvent

2016-10-19 19:59:05 1700

转载 Spring Bean--Bean的配置项、作用域、生命周期

在Spring的IOC里,把一切配置到IOC容器里的实体或对象都称为bean。 Bean配置项: id:在整个IOC容器中,这个bean的唯一标识class:具体要实例化的类(必须)scope:范围、作用域constructor arguments:构造器的参数properties:属性autowiring mode:自动装配的模式lazy-initialization mode:懒加

2016-10-19 17:44:20 726

转载 Spring注入

IOC容器在加载的时候,会扫描xml文件里的bean的相关配置,然后为这些bean进行实例化,初始化和创建bean的操作,注入就是在创建过程中,去完成对成员变量的赋值。eg:在A类里引用了B类,声明了一个B类的对象B,注入就是指在IOC容器初始化A的时候,就把A的成员变量B进行赋值。 Spring常用注入方式:设值注入,通过成员变量的set方法进行注入,xml中使用property标签设值,

2016-10-13 16:49:19 882

转载 Spring--IOC及Bean容器

接口: 面向接口编程: IOC: eg: 单元测试: Bean容器初始化: 初始化ApplicationContext的方式:加载本地文件,指定到具体的磁盘目录的文件Classpath:相对路径,相对于工程的位置Web应用中依赖servlet或Listener来初始化ApplicationContext

2016-10-13 14:50:52 216

转载 Spring入门

Spring: 为什么使用Spring:在Spring上开发应用简单、方便、快捷。 Spring作用: Spring适用范围: 什么是框架: 为什么使用框架:

2016-10-12 17:25:04 290

转载 Struts2案例--开发权限验证拦截器

一个管理页面,用户必须登录才能进行操作,未登录不可操作。 创建项目struts-authInterceptor。 web.xml:<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/n

2016-10-12 15:34:21 363

转载 Struts2内建拦截器

Struts2中内建了许多拦截器,用来完成相应的功能。 当为某个action显式指定了某个拦截器,同时还希望使用到默认拦截器栈(defaultStack),那么需要手工引用默认拦截器栈,同时要注意引用的顺序,一般先引用默认拦截器栈。 例:<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC "-//Apac

2016-10-12 13:25:37 304

转载 自定义拦截器

两种方式: 方式一: ActionInvocation既包括action的信息也包括拦截器的信息,通过它可以获取action的状态或者说拦截器的状态信息。intercept方法返回一个字符串(result),这个返回值就是逻辑视图名。 此方式较麻烦,因为需要实现init和destroy方法。方式二: AbstractInterceptor:抽象拦截器类,本身也是实现Intercept

2016-10-11 21:08:35 386

转载 Struts2拦截器

Struts2核心功能的实现就是通过拦截器实现的。 拦截器:Struts2大多数核心功能是通过拦截器实现的,每个拦截器完成某项功能, 例:数据转移、类型转换、数据校验。拦截器方法在Action执行之前或者Action执行之后执行去做一些处理操作,例如权限校验等。 拦截器栈: 拦截器工作原理: 拦截器的执行过程是一个递归的过程,当Struts在执行一个action的时候,首先会在执行act

2016-10-11 17:53:08 187

转载 Struts框架运行流程

客户端通过HttpServletRequest向servlet容器,也就是tomcat提交一个请求,这个请求会经过一系列的过滤器,例如ActionContextCleanUp和其他一些过滤器,经过这些过滤器后,会被Struts的核心控制器(FilterDispatcher,Struts2.1.3版本后变为StrutsPrepareAndExecuteFilter)所过滤。过滤后,核心控制器会访问Ac

2016-10-11 17:31:06 377

原创 Hibernate--悲观锁和乐观锁

当多个事务同时访问数据库中的相同数据时,如果没有采取必要的隔离措施,将会导致各种并发问题,这时可以采取悲观锁和乐观锁对其控制。悲观锁: 悲观锁是在每次操作数据时,都悲观地认为会有其他事务也会来操作同一数据。因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁由数据库来实现,在锁定的时间其他事务不能对数据进行存取,这样很有可能造成长时间等待。在Hibernate中,用户可以显式地设定要锁定的表或字

2016-09-27 17:09:17 367

原创 TCP和UDP之面试

UDP的优势:应用层能更好发控制要发送的数据和发送时间。因为UDP只提供最简单、服务最少的服务,所以当网络应用进程有数据传递给UDP时,UDP马上就会将此数据打包成UDP报文段,并把它交付给网络层,从而把数据发送出去。无需连接建立,不会引入建立连接的时延,而TCP在开始数据传输之前要经过三次握手。无连接状态,因此,使用UDP的服务器能支持更多的活动客户机。分组首部开销小,其首部字段少,只有8

2016-09-24 20:25:30 546

原创 九种基本数据类型的大小,以及他们的封装类

java提供的九种基本数据类型:boolean、byte、char、short、int、long、float、double、void 以及它们的封装类:Boolean、Byte、Character、Short、Integer、Long、Float、Double、Void在java中使用面向过程的基本类型来存储基本数据,主要是从性能方面考虑,使用对象来处理必然会引起一些不必要的开销。 然而java

2016-09-19 22:02:44 1978

原创 实现Serializable接口

Serializable接口:该接口仅仅是一个标记接口,无任何方法定义。 当一个类实现了Serializable接口表示该类可序列化。序列化是将一个实现Serializable接口的对象转化成一个字节序列(一组byte)。可以把该字节序列保存起来,以后要用这个对象时候,就能把这些byte数据恢复出来,并据此重新构建那个对象。甚至可以将该字节序列放到其他计算机上或者通过网络传输到其他计算机上恢复,只

2016-09-19 15:43:19 1356

转载 Struts2

访问Servlet API: Servlet API:HttpServletRequestHttpServletResponseServletContextStruts2不提供Servlet API,所以提供三种方式访问Servlet API: Action搜索顺序: 动态方法调用: 1、指定method属性(复杂): 在HelloWorldAction添加方法add、upda

2016-09-06 16:55:59 265

转载 Struts2概述

Struts英文翻译: 支柱、支干。 Struts是流行和成熟的基于MVC设计模式的Web应用程序框架。 使用Struts的目的:减少在运用MVC设计模型来开发web应用的时间。MVC模式: Struts2: Struts2的工作原理: Struts2核心文件: web.xml: struts.xml: 配置文件中可以有多个包,但包名要唯一。每个package包里可以

2016-09-06 10:21:29 303

转载 HQL语句--order by(排序)

order by:对查询结果排序升序排序 asc (默认升序)降序排序 desc@Test public void testOrderby(){ String hql="from Commodity order by price asc"; //升序 Query query=session.createQuery(hql); List<C

2016-09-01 15:34:27 39006 2

转载 HQL语句--where(限制)

where子句:逻辑表达式。用来设置查询的条件来限制返回的查询结果。比较运算:将持久化类的属性与给定的查询条件来进行比较。 比较运算符:=、<>、<、>、>=、<=null值判断— is [not] null 或者使用相等(=)、不等(<>)进行判断。x=null -> x is null; x<>null -> x is not null@Test public void test

2016-09-01 15:07:50 14244

转载 HQL语句--select(选择)

以Object[]类型返回选择的属性: 如果在select子句中只是指定了选择的对象和属性,没有指定返回的数据类型,默认查询结果以对象数组Object[]形式返回。 eg:@Test public void testSelectClauseObjectArray(){ //通过select子句指定返回Object[]类型查询结果 //注:不能只指定一个属性,因为返回类型就

2016-09-01 12:51:09 9330

转载 HQL语句--from(检索对象)

from字句:HQL语句最简形式。from指定了HQL语句查询的主体–持久化类及其属性。from子句中持久化类的引用: 1、不需要引入持久化类的全限定名,直接引入类名即可。eg:from Seller 2、auto-import(自动引入)缺省情况from子句中别名的应用: 1、为被查询的类指定别名,使用AS关键字来设定别名(也可省略)。 2、定义别名的目的是,在HQL语句其他部分通过别名引

2016-09-01 10:01:48 1077

转载 HQL数据查询

HQL定义:Hibernate Query Language。是Hibernate框架提供的一种查询语言。HQL是面向对象的查询语言,其查询的主体是映射配置的持久化类及其属性。(注:SQL不是面向对象的查询语言,其主体是数据库表及表的字段) 实际上,hibernate框架会将编写好的HQL语句解析成相应的sql语句来完成最终的数据库查询操作。 HQL查询丰富灵活,是hibernate官方推荐的查

2016-08-31 17:49:19 525

转载 Hibernate--cascade属性

cascade属性:表示级联。默认值为none。

2016-08-30 22:20:24 391

转载 Hibernate--inverse属性

inverse:表示反转。inverse用来指定关联关系的维护。它是<Set>节点的一个属性。它的值默认是false,表示不反转,也就是说由‘一方’进行维护。 若双方都进行维护则会降低性能。 当需要只由多方进行维护时,可将其值设置为true,定义为反转。

2016-08-30 21:46:35 416

转载 Hibernate关联映射--多对一映射

单向多对一关联关系: eg:多个学生属于一个班级。在一对多的例子上,我们进行一些改变来建立单向多对一映射: 在student类中增加一个grade班级属性,建立其get/set方法: private int sid; //学生编号 private String sname; //学生姓名 private String sex; //学生性别 //在多方定义

2016-08-30 21:37:03 247

转载 Hibernate关联映射--一对多映射

映射类型(4种): 常见的及常用的:一对多、多对一。一对多映射(one-to-many): 如何表示一对多的关联关系: 例子:一个班级对应多个学生。在班级中定义一个学生的集合。 在数据库中创建表student(学生表)和grade(班级表) hibernate.cfg.xml(注意指定映射文件的路径):<?xml version='1.0' encoding='UTF-8'?>

2016-08-29 21:36:49 458

转载 hibernate对单表增删改查(CRUD)

增删改查:saveupdatedeleteget/load(查询单个记录)import java.util.Date;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configurat

2016-08-28 15:22:50 2342

转载 hibernate--组件属性

组件属性:实体类中的某个属性属于用户自定义的类的对象。 eg: 上例,属性address就是一个组件属性(它是属于Address类的一个对象)。Address类又有3个字段:postcode、phone、address。编写一个Address类,含有属性: private String postcode;//邮编 private String phone;//电话 priv

2016-08-28 14:41:00 463

空空如也

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

TA关注的人

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