- 浏览: 20219 次
- 性别:
- 来自: 上海
最新评论
文章列表
[置顶] Maven安装与更新
- 博客分类:
- Maven
Maven是Apache组织中的一个颇为成功的开源项目,主要服务于基于Java平 台的项目构建、依赖管理和项目信息管理;
1) Maven是跨平台的,在Windows、Linux和Mac上都可以使用;
2) Maven可以帮助我们管理引入到项目中的开源类库,解决由于类库依赖增多可能导致的版本不一致、版本冲突、依赖臃肿等问题;
3) Maven能够帮助我们管理项目信息,包括项目描 述、开发者列表、版本控制系统地址、许可证、缺陷管理系统地址等;
4) Maven为Java开发者提供了免费的中央仓库,在其中几乎可以找到任何的流行开源类库,Maven能自动帮我们下载构件;
5) Maven ...
1、意图;
将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
2、场景描述;
编辑软件的“另存为”功能便是生成器模式的一个体现。例如,Word的另存为功能,可以选择将文件存储为doc、docx、pdf、txt等格式,但是通过word的另存为功能转变文档的存储格式时都采用了“文件 --> 另存为”,相同的创建过程。当需要对word支持新的类型转换时,例如,添加*.newtype类型的转换,此时只需在“另存为”对话框的“选择存储类型”中添加一行"*.newtype"即可,用户无需知晓具体的存储格式的转变过程,用户只需获得“n ...
1、实现用户登录功能;
通过session来实现用户登录功能。在用户登录时,将用户的相关信息放在HttpSession对象用,其中HttpSession对象可以通过HttpServletRequest的getSession方法获得。同时,HttpSession对象对应Jsp内置对象session,在jsp页面中也可以通过session来访问,如通过jstl标签库来访问session中的内容:
<c:if test="${sessionScope.username == null}">
<p class="navbar-text na ...
1、jsp页面乱码解决(2步);
新建jsp页面;
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
&l ...
1、抽象工厂模式的意图;
提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。
2、抽象工厂模式的适用性;
一个系统要独立于它的产品的创建、组合和表示时。
一个系统要由多个产品系列中的一个来配置时。
当你要强调一系列相关的产品对象的设计以便进行联合使用时。
当你提供一个产品类库,而只想显示它们的接口而不是实现时。
3、场景描述;
考虑一个生产多种不同风格的家具的工厂(FurnitureFactory),不同风格的家具系列可以提供不同的门、窗、地板等的组合,为同一所住房可以提供不同的外观和行为。
4、抽象工厂模式类图;
角 ...
摘自api:
1、ArrayList与Vector:
原文:This class(ArrayList) is roughly equivalent to Vector, except that it is unsynchronized.
ArrayList是不同步的,Vector是同步的,在多线程环境中Vector更安全。如果在程序程序中不需要考虑线程安全,推荐使用ArrayList来代替Vector。
2、HashMap与HashTable:
原文:The HashMap class is roughly equivalent to Hashtable, except th ...
1、ArrayList实现是基于数组来实现的,这可由ArrayList的源码看出;
public class ArrayList<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable
{
private transient Object[] elementData;
private int size;
/*其他参数和方法*/
}
ArrayLi ...
在http://dufengx201406163237.iteye.com/blog/2102054中描述了工程的配置,在此记录一下如何使用MyBatis访问数据库;
1、主要配置为:
<!-- 其中p:mapperLocations指定数据库操作文件的地址 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"
p:dataSource-ref="dataSource"
p ...
工程架构如图:
1、pom.xml
<properties>
<junit.version>3.8.1</junit.version>
<spring.version>3.0.7.RELEASE</spring.version>
<dbcp.version>1.4</dbcp.version>
<fileupload.version>1.2.2</fileupload.version>
<commons.io.version&g ...
1、见API;
String是不可变的字符序列;
StringBuffer是线程安全的,可变的字符序列;
StringBuilder是可变的字符序列;
StringBuffer与String的区别是StringBuffer是可变的(StringBuffer看做可变的String),StringBuffer中含有的字符序列和自身 ...
ThreadLocal,线程本地化对象,在多线程环境中,使用ThreadLocal对象来维护变量时,ThreadLocal为每个使用该变量的线程维护一个独立的线程副本。
ThreadLocal.java源文件内容为:
/**
* ThreadLocal内部包含一个用数组实现的哈希表,用来存储对应到每个线程的局部对象的值
* 其中,ThreadLocal对象担当key,实际通过threadLocalHashCode值来进行检索
*/
public class ThreadLocal<T> {
//其中 T 类型代表的是被多个线程访问的局部变量类型
...
对于某些Controller的处理方法,当返回值为String类型时,返回的结果中可能含有forward或redirect前缀;
如:
@Controller
@RequestMapping("/user")
public class UserController {
@RequestMapping("/forward")
public String replyWithForward(HttpServletRequest request, String userId){
request.setAttribute("use ...
使用memcache的两种实现jar包:
1、使用net.py.spymemcached:
1)在pom.xml中添加对net.py.spymemcached的依赖;
<dependency>
<groupId>net.spy</groupId>
<artifactId>spymemcached</artifactId>
<version>2.11.0</version>
</dependency>
2)使用Demo:
pa ...
场景:将错误描述文件内容导入到Excel的指定列;
在工程的build path中添加jxl.jar,网址:http://www.andykhan.com/jexcelapi/
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import jxl.Workbook;
import jxl.write.Label;
impor ...
通过Maven建立Spring MVC项目,引入了Spring相关jar依赖。
1、为了使用commons fileupload组件,需要在pom.xml中添加依赖;
<properties>
<spring.version>3.0.7.RELEASE </spring.version>
<junit.version>3.8.1</junit.version>
<fileupload.version>1.2.2</fileupload.version>
</p ...