J2EE
文章平均质量分 78
EthanQ
这个作者很懒,什么都没留下…
展开
-
Struts2中基于Annotation的细粒度权限控制
权限控制是保护系统安全运行很重要的一扇门。在web应用里,仅仅隐藏url是不够的。由于web应用是以请求/响应为单位的,我们的权限控制的粒度只有达到这个程度才能让全国人民放心。在java web开发的世界里,MVC框架的使用再平常不过,大都是将请求拦截后,控制器根据配置文件将请求转给某个函数来处理。下面看看在struts2中我们可以用的几种方案: 1、在每个函数里进行权限校验转载 2012-03-16 23:47:36 · 1001 阅读 · 0 评论 -
Hibernate3.5.3 之 增删该查基本操作
搭建环境使用到的jar包:hibernate.cfg.xml 配置文件:<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate原创 2012-03-10 16:29:19 · 505 阅读 · 0 评论 -
spring 管理action实例 scope="session"
很多人都采用scope="request"这种解决方案,殊不知此方治标不治本,原因:scope="request"表示每次请求都要创建一个action实例,spring容器会很累的,以下是我的解决方案:写一个拦截器:public class ClearFieldErrorInterceptor extends AbstractInterceptor {private转载 2012-03-11 22:05:22 · 6367 阅读 · 3 评论 -
spring IOC容器实例化Bean的方式与RequestContextListener应用
spring IOC容器实例化Bean的方式有: singleton 在spring IOC容器中仅存在一个Bean实例,Bean以单实例的方式存在.prototype 每次从容器中调用Bean时,都返回一个新的实例,即每次调用getBean()时,相当于执行new XxxBean()的操作.request转载 2012-03-11 21:59:56 · 9101 阅读 · 0 评论 -
struts2.1.8 Hibernate3.5.3 Spring2.5整合需要的jar包
原创 2012-03-11 21:48:15 · 904 阅读 · 0 评论 -
SSH 报异常Cannot locate the chosen ObjectFactory implementation: spring
struts2 和 spring2.5整合:报异常:Cannot locate the chosen ObjectFactory implementation: spring原因是:没有加入struts2-spring-plugin-2.1.8.1.jar原创 2012-03-11 21:45:40 · 2781 阅读 · 0 评论 -
内存不足 java.lang.OutOfMemoryError: Java heap space
问题描述Exception in thread "main" java.lang.OutOfMemoryError: Java heap space解决方案[转]一直都知道可以设置jvm heap大小,一直用eclipse写/调试java程序。一直用命令行or console加参数跑程序。现象:在eclipse的配置文件eclipse.ini中设置-vmargs -Xms5转载 2012-03-11 18:33:04 · 992 阅读 · 0 评论 -
ehcache版本问题导致的一个错误edu.emory.mathcs.backport...
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in file [C:\eclipse3.6\workspace\ssms\WebContent\WEB-INF\applicationContext.xml]: Invoca转载 2012-03-11 17:46:37 · 6373 阅读 · 0 评论 -
struts2 总结
1.1.自从Struts2.13、以后之前的FilterDispatcher标注为过时 2.class> 3. org.apache.struts.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter 4.class> 5. 6.2.action中默认的method为execute()转载 2012-03-11 20:27:07 · 1600 阅读 · 0 评论 -
Hibernate3 零碎笔记
多对一:employee - department reply--threadproperty-ref="name"则外键参考department表中的name字段,如果不设column,则外键名默认为departtry {Department depart = new Department();depart.setName("ddd");Emplo原创 2012-03-10 16:43:48 · 446 阅读 · 0 评论 -
Hibernate3.5.3 之 多对一关联映射
package com.ethan.domain;public class Employee { private Integer id; private String name; //如果是departId,还得再查一次,才可以得到department对象信息,一种对象导航 private Department depart; public Integer getId() {原创 2012-03-10 16:39:39 · 527 阅读 · 0 评论 -
Hibernate3.5.3 之 一对一映射关联
package com.ethan.domain;public class Person { private Integer id; private String name; private IdCard idCard; public Integer getId() { return id; } public void setId(Integer id) { this.id原创 2012-03-10 16:37:02 · 421 阅读 · 0 评论 -
在struts2.1中使用注解和拦截器实现权限细粒度控制
在struts2.1中使用注解和拦截器实现权限细粒度控制正如上一篇文章说的,拦截器是struts2的核心,同时struts2引入了注解的方式。这里就来简单看看针对struts2.1中使用注解和拦截器的开发。首先要引入struts2.1各包,特别要引入Convention Plugin插件。本文只是一个简单模拟,因此我们新建两个jsp文件,分别为登录和退出。l转载 2012-03-16 23:45:59 · 2158 阅读 · 0 评论 -
AOP/CGLIB学习:实现简单的注解权限系统(Annotation+拦截器)
注: 本文只是原理性质, 并不实用, 读者可用成熟稳定的开源权限系统如SpringSecurity. 但可参考实现自己的一些小框架. 在上课的时候, 一位同学拿着一篇JavaEye的很长的CGLIB讲解代码来问我这是怎么回事?我看了下, 觉得那样的例子实在太让人难以一下子看懂了, 于是就自己重造了个轮子. Spring 2.5最大的亮点就是基于注解实现配置, 其实这个谈不上什么亮点,转载 2012-03-16 23:43:39 · 2755 阅读 · 0 评论 -
Web应用共享数据区ServletContext接口
1 Web应用共享数据区ServletContext接口ServletContext接口表示一个web应用的上下文。可以想象成一个web一个能用的共享数据区域,该区域保存整个web共享数据。1.1 Servlet容器何时创建ServeltContext接口实现类当一个web应用启动的时候,就会创建该ServletContext接口的实现类。我们可以在根据需求,读转载 2012-03-15 19:49:38 · 2570 阅读 · 0 评论 -
servlet什么时候被实例化?
如果没有设置loadOnStartup,则第一次请求的时候实例化分三种情况:loadOnStartup 即负数的情况下,web容器启动的时候不做实例化处理,servlet首次被调用时做实例化这种情况和没有设置loadOnStartup是一样的。loadOnStartup > 0web容器启动的时候做实例化处理,顺序是由小到大,正整数小的先被实例化loadOnStar转载 2012-03-15 19:50:48 · 2415 阅读 · 0 评论 -
ServletContextListener使用详解
在 Servlet API 中有一个 ServletContextListener 接口,它能够监听 ServletContext 对象的生命周期,实际上就是监听 Web 应用的生命周期。当Servlet 容器启动或终止Web 应用时,会触发ServletContextEvent 事件,该事件由ServletContextListener 来处理。在 ServletContextListene转载 2012-03-15 19:47:04 · 97183 阅读 · 16 评论 -
Struts1.3-DispatchAction类-根据请求参数实现业务分派
本文将着重来理解下org.apache.struts.actions.DispatchAction类。在有些时候一个Action可能有多种操作,比如查询,增加,删除等,都集中在了一个Action中,每个操作都会被封装在一个独立的方法中,此时需要使用某个变量来区分Action接收到的请求需要执行哪个操作,根据操作类型再去调用相应的方法。DispatchAction类Dispa转载 2012-03-11 10:45:04 · 3322 阅读 · 1 评论 -
Hibernate3 之 继承映射
1. 父类和子类 公用一张表:<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">原创 2012-03-10 16:48:34 · 550 阅读 · 0 评论 -
Hibernate3 零碎笔记(二)
employee:两个子类:Skiller Sales一张表:增加一个type字段type skill sellskill,sell字段得允许为空鉴别器:查询语句:只牵扯到一张表Hibernate: select employee0_.i原创 2012-03-10 16:44:16 · 493 阅读 · 0 评论 -
Hibernate3.5.3 之 多对多 关联映射
package com.ethan.domain;import java.util.HashSet;import java.util.Set;public class Student { private Integer id; private String name; private Set teachers; public Integer getId() { return原创 2012-03-10 16:42:05 · 680 阅读 · 0 评论 -
java 之 权限模块
sql:-- phpMyAdmin SQL Dump-- version 3.3.9-- http://www.phpmyadmin.net---- 主机: localhost-- 生成日期: 2012 年 03 月 10 日 09:14-- 服务器版本: 5.5.8-- PHP 版本: 5.3.5SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";原创 2012-03-10 16:21:09 · 2012 阅读 · 0 评论 -
java 之 编码实现Filter学习示例
public interface Filter { void doFilter(Request request,Response response,FilterChain chain);}public class HTMLFilter implements Filter { @Override public void doFilter(Request request, Response原创 2012-03-09 15:10:04 · 1022 阅读 · 0 评论 -
JUnit 4 使用 Java 5 中的注解(annotation)
JUnit 4 使用 Java 5 中的注解(annotation),以下是JUnit 4 常用的几个 annotation 介绍@Before:初始化方法@After:释放资源@Test:测试方法,在这里可以测试期望异常和超时时间@Ignore:忽略的测试方法@BeforeClass:针对所有测试,只执行一次,且必须为static void@AfterClass:针对所有转载 2012-03-09 22:28:22 · 657 阅读 · 0 评论 -
spring2.5 所需jar包
spring2.5 需要使用到的jar包:aspectjrt.jaraspectjweaver.jarc3p0-0.9.1.2.jarcglib-nodep-2.1_3.jarcommon-annotations.jar(j2ee)commons-logging.jarjaxen-1.1.1.jar(JUnit Tes原创 2012-02-29 23:54:43 · 645 阅读 · 0 评论 -
spring2.5 之 编码实现 IOC和依赖注入
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://w原创 2012-02-29 23:51:22 · 741 阅读 · 2 评论 -
struts2 之 类型转换器
package com.ethan.converter;import java.util.Date;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Map;import com.opensymphony.xwork2.conversion.impl.DefaultTy原创 2012-02-28 11:23:43 · 519 阅读 · 0 评论 -
struts2 学习笔记(一)
比较零碎:struts2读取到struts.xml的内容后,以javabean形式存放在内存中,以后struts2对用户的每次请求处理将使用内存中的数据,而不是每次都读取struts.xml文件StrutsPrepareAndExecuteFilter的init()方法中将会读取类路径下默认的配置文件struts.xml完成初始化操作。包可以通过abstra原创 2012-02-28 11:18:00 · 807 阅读 · 0 评论 -
struts2 输入校验
1.使用手工编写代码校验:package com.ethan.action;import java.util.regex.Pattern;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;public class PersonAction extends原创 2012-02-28 11:15:10 · 739 阅读 · 0 评论 -
JDBC addbatch批量处理数据时有最大值限制
在用jdbc向数据灌入数据时,发现120000的数据每次只能灌入50000多条,其他的就没有了。 在oracle 9i(windows 2003),oracle 10g(RHEL 4)上试验证有相同的结果。 使用定量灌入的办法,每5W条定义为一个事务,进行提交,将120000数据循环灌入,成功。 对于批量的update,delete操作两样有5W条左右的记录数限制。 结论:jd转载 2011-10-13 10:59:27 · 8402 阅读 · 5 评论 -
Struts1.x/2.x 与 Spring集成方式
struts1.x与spring集成方式方式一:Action交给spring管理,将业务类注入actionstruts配置:forward name="success"path="/result.jsp"/>/action spring配置:!--这里SearchAction继承了DelegatingActionProxy--原创 2011-10-10 09:34:39 · 730 阅读 · 0 评论 -
J2EE 之 邮箱激活示例(二)
修改信息:package com.ethan.accountactivate.servlets;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import ja原创 2012-02-22 13:11:13 · 2141 阅读 · 0 评论 -
Spring 之 编码实现 @Resource注解属性注入
下边只给出 key code:package com.ethan.annotation;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation原创 2012-03-01 15:31:56 · 3023 阅读 · 0 评论 -
Spring3.0 jar包详解
Spring3.X以后jar包进行了重构,取消了原来2.X版本中的总的spring.jar包,而是把总包中的功能全部分开打包。正在向osgi靠拢。各个jar包详解如下:1. org.springframework.aop 包含在应用中使用Spring的AOP特性时所需的类。2. org.springframework.asm转载 2012-03-01 14:34:03 · 1527 阅读 · 0 评论 -
Java Filter过滤机制详解
Java Filter过滤机制详解以前以为Filter只是一个特殊点的Servlet,用进只需在web.xml中配置一下拦截路径就可以了,可经过这两天的深入学习,才知道以前对Filter类的了解和使用都太过浅薄了。在网上看了很多篇相关的技术文章,现提取它们中的精髓(我认为能说明问题的东西)及我个人的一些学习经验作如下总结,希望能帮助大家更好地理解Filter的过滤机制。要学习Filte转载 2012-03-09 15:13:52 · 10201 阅读 · 1 评论 -
Spring对外部属性文件指定的某个属性进行加密、解密
在我们开发当中,经常会用到spring框架来读取属性文件的属性值,然后使用占位符引用属性文件的属性值来简化配置以及使配置具有更高的灵活性和通用性。 如下面的属性配置文件:db.properties #数据库配置 db.driver=org.postgresql.Driver db.url=jdbc\:postgresql\://10.166.176.127转载 2012-03-08 18:18:31 · 4373 阅读 · 0 评论 -
Hibernate3.5.3 学习笔记(一)
hbm2ddl.auto:create-drop:启动重建,程序关闭后删除表create:启动重建,但关闭后不会删除update:跟新表结构validate:映射文件和表结构字段是否一致,否则不更新,报错mysql:show engines;#查看引擎#MyISAM:不支持事务和外键/etc目录下有配置文件: C:\Users\ETHAN\dev\hib原创 2012-03-07 19:43:48 · 676 阅读 · 0 评论 -
Hibernate3.5.3 之 CRUD
Hibernate配置文件:hibernate.cfg.xml<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configurat原创 2012-03-07 19:40:17 · 471 阅读 · 0 评论 -
ibatis2.3.4 学习笔记(CRUD)
SqlMap.properties: 数据库的配置信息driver=com.mysql.jdbc.Driverurl=jdbc\:mysql\://localhost/ibatis_db?characterEncoding\=UTF-8username=rootpassword=SqlMapConfig.xml<!DOCTYPE sqlMapConfigPUBLIC "-//ib原创 2012-03-06 22:10:48 · 2045 阅读 · 0 评论 -
ibatis2.3.4 配置主键自动生成
Xml代码 insert id="insertProduct-ORACLE" parameterClass="com.domain.Product"> selectKey resultClass="int" keyProperty="id" type="pre"> selectKey> i转载 2012-03-06 22:17:12 · 1168 阅读 · 0 评论