浏览代码

jfinal 4.9

James 5 年之前
父节点
当前提交
0028c41e84
共有 2 个文件被更改,包括 18 次插入24 次删除
  1. 16 22
      src/main/java/com/jfinal/template/Engine.java
  2. 2 2
      src/main/java/com/jfinal/template/stat/Compressor.java

+ 16 - 22
src/main/java/com/jfinal/template/Engine.java

@@ -551,41 +551,35 @@ public class Engine {
 	}
 	}
 	
 	
 	/**
 	/**
-	 * 配置 Compressor 可对模板中的静态内容进行压缩
-	 * 
-	 * <pre>
-	 * 例如:
-	 *   engine.setCompressor(new Compressor('\n'));
-	 *   
-	 *  以上配置将使用分隔字符 '\n' 对压缩后的内容进行分隔,还可配置为 ' ':
-	 *    engine.setCompressor(new Compressor(' '));
-	 *  
-	 *  分隔字符配置为 '\n' 可支持 js 代码使用换行代替分号的情况
-	 * </pre>
-	 */
-	public Engine setCompressor(Compressor compressor) {
-		config.setCompressor(compressor);
-		return this;
-	}
-	
-	/**
 	 * 设置开启压缩功能
 	 * 设置开启压缩功能
-	 * @param separator 压缩使用的分隔字符,常用配置值为 '\n' 与 ' '。
-	 *         其中配置 '\n' 在对 js 内容进行压缩时支持 js 代码中回车代替
-	 *         分号的情况
+	 * 
+	 * @param separator 压缩使用的分隔符,常用配置为 ' ' 与 '\n'。
+	 *         一般配置成 ' ' 即可。如果模板中存在 javascript 脚本,
+	 *         并且其使用了回车代替分号作为语句的分隔符,则需要配置成 '\n'
 	 */
 	 */
 	public Engine setCompressorOn(char separator) {
 	public Engine setCompressorOn(char separator) {
 		return setCompressor(new Compressor(separator));
 		return setCompressor(new Compressor(separator));
 	}
 	}
 	
 	
 	/**
 	/**
-	 * 设置开启压缩功能。separator 配置使用默认值 '\n'
+	 * 设置开启压缩功能。压缩分隔符使用默认值 ' '
 	 */
 	 */
 	public Engine setCompressorOn() {
 	public Engine setCompressorOn() {
 		return setCompressor(new Compressor());
 		return setCompressor(new Compressor());
 	}
 	}
 	
 	
 	/**
 	/**
+	 * 配置 Compressor 可对模板中的静态内容进行压缩
+	 * 
+	 * 可通过该方法配置自定义的 Compressor 来代替系统默认实现,例如:
+	 *   engine.setCompressor(new MyCompressor());
+	 */
+	public Engine setCompressor(Compressor compressor) {
+		config.setCompressor(compressor);
+		return this;
+	}
+	
+	/**
 	 * Engine 独立设置为 devMode 可以方便模板文件在修改后立即生效,
 	 * Engine 独立设置为 devMode 可以方便模板文件在修改后立即生效,
 	 * 但如果在 devMode 之下并不希望对 addSharedFunction(...),
 	 * 但如果在 devMode 之下并不希望对 addSharedFunction(...),
 	 * 添加的模板进行是否被修改的检测可以通过此方法设置 false 参进去
 	 * 添加的模板进行是否被修改的检测可以通过此方法设置 false 参进去

+ 2 - 2
src/main/java/com/jfinal/template/stat/Compressor.java

@@ -25,7 +25,7 @@ package com.jfinal.template.stat;
  * 4:最后一行右侧空白不压缩(注意:最后一行以字符 '\n' 结尾时不算最后一行)
  * 4:最后一行右侧空白不压缩(注意:最后一行以字符 '\n' 结尾时不算最后一行)
  * 5:第一行、最后一行以外的其它行左右侧都压缩
  * 5:第一行、最后一行以外的其它行左右侧都压缩
  * 6:文本之内的空白不压缩,例如字符串 "abc  def" 中的 "abc" 与 "def" 之间的空格不压缩
  * 6:文本之内的空白不压缩,例如字符串 "abc  def" 中的 "abc" 与 "def" 之间的空格不压缩
- * 7:压缩后内容的默认分隔字符为 '\n',对 js 语句缺少分号的支持更友好。还可配置为空格 ' ' 等分隔字符
+ * 7:压缩分隔符默认配置为 ' '。如果模板中的 javascript 代码未严格使用分号作为语句分隔符,需要将其配置为 '\n'
  * 8:可通过 Engine.setCompressor(Compressor) 来定制自己的实现类
  * 8:可通过 Engine.setCompressor(Compressor) 来定制自己的实现类
  *    可使用第三方的压缩框架来定制,例如使用 google 的压缩框架:
  *    可使用第三方的压缩框架来定制,例如使用 google 的压缩框架:
  *      压缩 html: com.googlecode.htmlcompressor:htmlcompressor
  *      压缩 html: com.googlecode.htmlcompressor:htmlcompressor
@@ -33,7 +33,7 @@ package com.jfinal.template.stat;
  */
  */
 public class Compressor {
 public class Compressor {
 	
 	
-	protected char separator = '\n';
+	protected char separator = ' ';
 	
 	
 	public Compressor() {}
 	public Compressor() {}