- 博客(34)
- 资源 (5)
- 收藏
- 关注
原创 Oracle监听启动无法连接或者连接很慢的问题
今天遇到系统突然不能登录的问题。用plsql连接数据库非常慢,出现假死现象。在数据库服务器上使用sqlplus连接时无问题。考虑是监听的问题。重启服务器,及重新设置监听服务都不能解决。突然想到以前遇到过Oracle 11g由于监听文件过大导致的不能连接问题。查看oracle的数据库监听日志。listener.ora发现文件已经超过了4G。位置在admin/network/下面。将这个文件重命名
2014-12-25 11:22:14 4178
原创 Hibernate的数据库连接池
Hibernate的数据库连接池是非常简陋的。并不适合我们在开发产品时候是用。当我们是用配置:1这个配置的时候,默认会使用Hibernate自己的数据库连接池,这种配置非常不推荐。可以使用Hibernate继承的
2014-12-23 10:39:13 514
转载 Hibernate的architecture(转载自Hibernate的4.3.4.Final的官方文档)
Hibernate的完整结构如下图所示:下面是文档中的一些解释(英文的不作翻译了):2.1.3. Basic APIsHere are quick discussions about some of the API objects depicted in the preceding diagrams (you will see them again in more de
2014-12-23 09:50:13 443
原创 Maven与Hibernate结合
使用了maven之后我们可以将项目的构件与发布变得非常的简单。Maven与Hibernate也是可以结合在一起的。首先我们创建一个Maven的项目。在依赖中我们要加入Hibernate的依赖,pom文件可以这样写:<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd
2014-12-23 08:43:56 2567
转载 Maven的仓库(转载自Maven实战 作者许晓斌)
1、Maven的仓库Maven中任何一个依赖、插件或者项目构建的输出,都可以成为构件。任何一个构件都有一组坐标唯一标识。一个工作站上可能有几十个Maven项目,得益于坐标机制,任何Maven项目使用任何构件的方式都是完全相同的。再次基础上,Maven可以在某个位置存储所有Maven共享项目的构件,这个统一的位置就是仓库。在Maven项目中不再各自存储其依赖文件,只需要声明依赖的坐标,在需要的时
2014-12-21 11:59:07 1039
转载 Maven的依赖与最佳配置(转载自Maven实战 作者许晓斌)
1、依赖的配置依赖配置的属性: ... ... ... ... ... ... ... groupId、artifactId和Version:依赖的基本坐标,Maven根据坐标找到相应的依赖。type:依赖的类型,对应于项目坐标定义的packaging。默认为j
2014-12-20 13:19:31 1235
转载 Maven的单元测试
有时候可能不仅仅需要跳过测试运行,还要跳过测试代码的编译:[plain] view plaincopyprint?mvn package -Dmaven.test.skip=true 也可以在pom中配置maven.test.skip:[html] view plaincopyprint?plugin> gro
2014-12-20 12:11:29 527
原创 通过Eclipse创建Maven的web项目
首先在Eclipse中创建一个Maven的Web项目:然后配置项目的GroupID,ArtifictID,version和名称。之后点finish就创建了一个web项目,默认目录如下:我们来补齐目录:调整source的输出路径,并调整顺序:调整完成之后的目录如下:然后我们添加Maven的依赖和插件:<project xmlns="http
2014-12-19 16:28:07 439
原创 Maven关于dependency的配置
Maven一个最主要的功能就是帮助我们从Maven的中央类库根据我们配置的依赖关系自动下来所依赖的jar包。而且这个配置可以重复使用,避免了我们一个一个找jar包的麻烦。有时候对于依赖的配置不知道怎么配置。这时候我们可以到去寻找配置的依赖,上面都有配置的例子。MVN REPOSITORY
2014-12-18 15:50:15 468
转载 Maven的安装配置与使用
Maven的用途之一是服务于构建,它是一个异常强大的构建工具,能够帮我们自动化构建过程,从清理、编译、测试到生成报告,再到打包和部署。我们不需要也不应该一遍又一遍地输入命令,一次又一次地点击鼠标,我们要做的是使用Maven配置好项目,然后输入简单的命令(如mvn clean install),Maven会帮我们处理那些烦琐的任务。Maven还为全世界的Java开发者提供了一个免费的中央仓库,在
2014-12-17 15:39:17 11294
原创 Hibernate学习笔记——CoreAPI(Hibernate核心API)
Hibernate提供了很多API用来尽心与数据库的交互包括保存,更新,删除等等。我们这里来测试一下:首先依然是Hibernate的配置文件:<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernat
2014-12-16 10:48:14 1117
原创 Hibernate学习笔记——Hibernate对象的三种状态
对象在Hibernate中有三种状态:Transient(瞬时状态),persistent(持久化状态)
2014-12-15 15:53:26 476
原创 Hibernate学习笔记——log4j及JUnit的配置
对于开发调试来说,记录日志和测试都是很重要的。log4j和JUnit都是比较简单的工具。1、Hibernate中log4j的配置在工程的src目录下新建一个名为log4j.properties内容可参照Hibernate给出的例子:### direct log messages to stdout ###log4j.appender.stdout=org.apache.log4j.C
2014-12-15 10:40:57 478
原创 Hibernate学习笔记——Introduction和简单例子
Hibernate是一个开源的对象关系映射的框架。它对JDBC做了轻量级的封装,而我们java程序员可以使用面向对象的思想来操纵数据库。最近好像MyBatis比较流行一些。Hibernate相对来说比较简单。Hibernate适用的场景很多,可以使CS的项目,也可以是BS的web项目。在很大程度上能减少程序员直接在代码中嵌入SQL的烦恼。至于是不是比用JDBC直接连接数据库方便也是见仁见智。当然H
2014-12-15 09:24:15 665
原创 Struts2学习笔记——订制自己的Interceptor
知道了Struts的工作原理之后,要定制自己的Interceptor也比较简单啦:<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
2014-12-14 12:50:47 448
原创 Struts2学习笔记——Struts框架的工作原理(源码调试)
为了下面的Interceptor打基础,同时也是为了了解Struts的工作原理,花一段时间来调试一下Struts的源码是十分必要的:在Struts版本的2.1.3之前的版本,都是用FilterDispather这个类来对URL进行过滤。在新版本中使用了StrutsPrepareAndExecuteFilter来代替。web.xml:<web-app version="2.5" x
2014-12-14 11:54:21 612
原创 Struts2学习笔记——StrutsTags(标签)
Struts2的标签使用起来很方便。一个网页来进行测试:<%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%>Struts-Tags学习 property: property 取值为字符串: property 设定默认
2014-12-12 15:32:42 10218
原创 Struts2学习笔记——OGNL表达式
OGNL,全称为Object-Graph Navigation Language,它是一个功能强大的表达式语言,用来获取和设置Java对象的属性,它旨在提供一个更高的更抽象的层次来对Java对象图进行导航。OGNL表达式的基本单位是"导航链",一般导航链由如下几个部分组成:属性名称(property) 方法调用(method invoke) 数组元素Struts2默认使用OGN
2014-12-12 10:29:58 567
原创 Struts2学习笔记——Result的操作
1、Result的类型Struts2的Result分为四种类型:dispatcher、redirect、chain、redirectAction。对应的struts.xml可以这么配置:<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://
2014-12-11 16:12:30 470
原创 Struts2学习笔记——AccessWebElements(访问web元素)
可以使用Map类型来接收HttpServletRequest ServletContext和HttpSession。struts.xml:<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/st
2014-12-11 15:50:30 466
原创 Struts2学习笔记——SimpleDataValidation(简单数据校验)
使用addFieldError方法和s:fieldError标签简单处理数据校验。struts.xml:<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd">
2014-12-11 15:35:09 450
原创 Struts2学习笔记——CharacterEncoding(字符集)
关于Struts2的字符集要保持所有字符集的一致,包括JSP界面和Struts2的配置中。设置Struts2的字符集比较简单,只需要在struts.xml中增加一行:如果只设置了这里而jsp界面的字符集不是utf-8的话还是会有乱码。所以我们可以这么做:struts.xml:<!DOCTYPE struts PUBLIC "-//Apache Software Foundation
2014-12-11 15:22:54 939
原创 Struts2学习笔记——ParamInput(参数的输入)
Struts2的参数传递可以简单分为三种。第一种就是使用Action的属性来接收参数:Struts.xml:<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd">
2014-12-11 15:01:03 669
原创 Struts2学习笔记——ActionWildcard(通配符)
使用通配符可以将配置量降到最低。但是一定要遵守“约定由于配置”的原则。Struts.xml:<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd">
2014-12-11 14:36:50 395
原创 Struts2学习笔记——ActionMethod
Action执行的时候并不一定要执行execute方法可以在配置文件中配置Action的时候用method=来指定执行哪个方法也可以在url地址中动态指定(动态方法调用DMI)(推荐)前者会产生太多的action,所以不推荐使用Struts.xml:<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Str
2014-12-11 10:47:28 403
原创 Struts2学习笔记——Path
struts2中的路径问题是根据action的路径而不是jsp路径来确定,所以尽量不要使用相对路径。虽然可以用redirect方式解决,但redirect方式并非必要。解决办法非常简单,统一使用绝对路径。(在jsp中用request.getContextRoot方式来拿到webapp的路径)或者使用myeclipse经常用的,指定basePathStruts.xml:<!
2014-12-11 10:40:40 351
原创 Struts2学习笔记——Action
具体视图的返回可以由用户自己定义的Action来决定具体的手段是根据返回的字符串找到对应的配置项,来决定视图的内容具体Action的实现可以是一个普通的java类,里面有public String execute方法即可或者实现Action接口不过最常用的是从ActionSupport继承,好处在于可以直接使用Struts2封装好的方法Struts.xml:<!DOC
2014-12-11 10:29:01 376
原创 Struts2学习笔记——Namespace
namespace决定了action的访问路径,默认为"",可以接收所有路径的actionnamespace可以写为/,或者/xxx,或者/xxx/yyy,对应的action访问路径为/index.action,/xxx/index.action,或者/xxx/yyy/index.action.namespace最好也用模块来进行命名Struts.xml:<!DOCTYPE
2014-12-11 10:16:36 382
原创 Struts2学习笔记——Introduction
Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。Struts2的新特征如果读者熟悉Struts1.X,会发现Struts2比Struts1.X有了巨大的变化:Action 类:• Struts1要求Action类继
2014-12-11 09:24:24 475
原创 webservice的handler中对header信息进行校验。
我们已经知道怎么传递header信息。这里我们看怎么进行校验。对Test进行修改:package service.ps.smile.com;import java.net.MalformedURLException;import java.net.URL;import javax.xml.namespace.QName;import javax.xml.ws.Holder;
2014-12-02 16:45:46 869
原创 webservice根据handler处理header信息。
我们已经知道在handler中可以对发送的消息进行拦截和处理。现在我们在client端的handler中添加header信息。同时在server端接收。client端的HeaderHandler.java:package service.ps.smile.com.handler;import java.util.Set;import javax.xml.namespace.QName;
2014-12-02 16:00:28 492
原创 webservice客户端handler的处理机制
webservice的handler分为LogicalHandler和SOAPHandler两种。可以实现在客户端及服务器端。相当于struts中的过滤器的概念。在客户端先按顺序执行LogicalHandler然后按顺序执行SOAPHandler,服务期端则正好相反。Handler可以处理消息发送前后及返回错误各种情况。具体的执行过程如下:首先我们将我们的wsdl通过wsimport执行来
2014-12-02 11:24:11 1431
原创 soap消息的传递和处理(三)——包含header和异常的处理
对于IMyService做如下修改:package com.smile.service;import java.util.List;import javax.jws.WebParam;import javax.jws.WebResult;import javax.jws.WebService;/** * @author Loach.Zhang * SEI service
2014-12-02 11:17:03 3869
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人