Spring Framework可以被使用在很多场合之中,考虑到目前大多数Java EE的项目是B/S结构的,所以这里的快速上手教程会以Spring MVC为切入点,用最简单的代码一步一步来实现一个图书列表的页面。 在正式动手之前需要做一些准备工作,先安装并设置好JDK 1.5和Tomcat 5,关于数据库及其访问方式可以根据个人习惯进行选择,教程中使用MySQL数据库和Hibernate(映射由Hibernate Annotation实现)。请将实际使用到的jar文件复制到WEB-INF/lib目录中,整个项目的结构见图1,教程中用到的jar文件见图2。 项目中的Bean定义分散在多 ...
很简单的题目,随便出着玩的,如果你是高手就请直接跳过,若有雷同,纯属巧合! 1、 简述你对IoC(Inversion of Control)的理解,描述一下Spring中实现DI(Dependency Injection)的几种方式。2、Spring提倡面向接口编程,请讲一下你对它的理解,它有什么好处。3、Spring的Bean有哪些作用域。4、简单描述Spring Framework与Struts的不同之处,整合Spring与Struts有哪些方法,哪种最好,为什么?5、Rails中大量使用Convention over Configuration的思想,SpringMVC在2. ...
2008-01-07

一些关于Liferay的使用心得

关键字: liferay
Liferay是一个出色的Java开源Portal产品,其中整合了很多当今流行的开源框架,被不少人使用在实际项目中。最近刚结束了一个基于Liferay Portal的项目,总结下使用中的一些心得,希望对正在使用Liferay的朋友有些帮助。 一、安装 Liferay的安装十分容易,甚至都不能称其为安装,根据情况从Liferay官方网站下载合适的安装包(一般可以选择Tomcat的Bundle),解压后直接运行,它会使用自带的HSQL数据库,其中包括一些初始数据和演示数据。 实际使用时不能用HSQL,也不应该有演示数据,所以可以用Liferay站点提供的SQL来初始化数据库。Liferay- ...
自己四处参考,写写抄抄折腾出来的一个泛型Hibernate DAO,用了Spring的HibernateDaoSupport。提供基本的CRUD操作,支持分页查询,可使用HQL、Criteria和DetachedCriteria。 废话不说了,上代码 package sgf4web.dao;import java.io.Serializable;import java.util.*;import java.util.regex.Matcher;import java.util.regex.Pattern;import org.h ...
今天早上跑去了网络学院做技术支持, 他们碰到的问题是一个web项目放在windows下运行正常,可是放到fedora下tomcat连接池就出了问题,无法执行了。我刚听到电话的时候感觉是mysql的驱动程序文件没有给权限,可是我到了才发现,common/lib/的jar都是777的权限了,顿时感到问题貌似复杂了。 但我怎么看这log都像是jar没有加载,于是搞了个直接用jdbc的connection的文件,依旧报错,但通过一点点的调试,我确信是mysql的驱动没有被加载,只是为什么会这样我不清楚。不过在看提示时,我发现它用的是fedora自带的gcj,据他说什么东西都是自带的,tom ...
前阵子的一个项目需要使用SQL2K作为后台数据库,本人一向认为Java配合MS SQL不是一个好选择,但往往也有不得不这么做的时候。一直听说MS的JDBC驱动不怎么样,所以我的第一反应是使用JDBC-ODBC桥,这样不用为项目添加额外的jar(其实是个很奇怪的理由,估计当时神游了,没怎么考虑)。系统使用了Hibernate 3.1.3和Spring Framework 2.0 RC2。 考虑到减少持久化层的开发,当然是使用工具从现有的数据库生成Hibernate的PO和DAO。但是在生成时发生了点意外,使用JDBC-ODBC桥竟然无法导出。。。无奈,只能暂时用下MS的驱动进行生成,其实这时就 ...
        最近结束了一个小型网站项目,主要功能就是一个文章系统,为了提升站点性能,我在首页上使用了OSCache,在访问首页时,性能的确有不小的提升(具体数据见《JMeter小实验——JSP性能简单测试》),但我对此并不满足,打算使用Hibernate的二级缓存来优化访问文章和栏目时的速度。        Hibernate的二级缓存有很多选择,我选择了默认的EHCache。它的配置十分简单,只要在Hibernate配置里加入 ...
        首先要做的当然是到Apache的站点下在一个最新的JMeter了,我下的版本是2.1.1。然后启动MySQL和Tomcat,按照原定的顺序,先测试有OSCache标签的页面,然后去掉OSCache标签,测试没有缓存的页面。        JMeter启动后,默认已经建立好了一个测试计划,右击测试计划标签,添加一个线程组,该线程组设置如下:线程数为5,Ramp-Up Period为5,循环次数为5(你当然可以适当提高线程数和循环次数,我做的时 ...
1.利用随机数产生一个指令序列,共320条指令。其地址按下述原则生成: ①50%的指令是顺序执行的; ②25%的指令是均匀分布在前地址部分; ③25%的指令是均匀分布在后地址部分;Instruction.java源代码:package instructions; import java.util.ArrayList; /** * The instruction class. * @author DigitalSonic */ public class Instruction { private String name = null; private ...
代码1:使用安全的rand()替代原来相对薄弱的rand()。Rand.java/*  * 项目名称 AspectJShow  * 包 名 aop.demo1  * 文 件 名 Rand.java  * 创建日期 2005-4-7  */ package aop.demo1; /**  * 类名 Rand  *  * 提供非安全的rand()方法。  *  * @author DigitalSonic  */ public class Rand ...