导航:首页 > 万维百科 > javacms静态化

javacms静态化

发布时间:2020-10-28 20:17:43

1、有人会javaWeb页面的静态化吗

1、首页动态:删除根目录的index(注意别删了index.php),以后也不用手动去生成首页了。 2、栏目页动态:后台改选每个栏目的“栏目列表选项”为“使用动态”。 3、内容页动态:后台修改已生成的文章的“发布选项”为“仅动态浏览”。

2、Java,页面静态化是什么意思,怎么做的?

JavaWeb可以利用第三方提供的模板引擎,如Velocity/FreeMarker来动态处理HTML,比JSP的各种标签要更高效简洁;
要静态话的话就是直接触发生成html或者任务触发生成html。一般是搭配cms来实现,比说说某篇文章内容更新后直接调用静态化html服务来实现。

3、怎么对一个javaWeb应用程序同时实施静态化和全站压缩呢?

public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
//要想压缩页面 就是当用户访问页面时 在服务器把页面信息打给浏览器的时候进行压缩 所以这时候就是对response进行包装
MyResponse myresponse = new MyResponse((HttpServletResponse) response);
chain.doFilter(request, (ServletResponse) myresponse);
//从包装的myresponse里获得写到容器流里的原始数据bs
byte[] bs = myresponse.getOut();
System.out.println("压缩前>>>"+bs.length);
//用原始的response响应用户,此response需要转换为HttpServletResponse类型
HttpServletResponse resp = (HttpServletResponse) response;
//response解决中文乱码问题
resp.setContentType("text/html;charset=utf-8");
//开始压缩
ByteArrayOutputStream out = new ByteArrayOutputStream();
GZIPOutputStream zip = new GZIPOutputStream(out);
zip.write(bs);
zip.close();
//获取压缩后的数据
byte[] dest = out.toByteArray();
System.out.println("压缩后>>>"+dest.length);
//设置响应头
resp.setDateHeader("content-length", dest.length);
resp.setHeader("content-Encoding", "gzip");
resp.getOutputStream().write(dest);
}

public void init(Fi

4、关于Java显示的静态初始化

static{ cup1=new Cup(1);cup2=new Cup(2);} 这个就是java里的静态成员初始化语法。不是方法,只是给静态成员数据赋初始值。

Cup.cup1.f(99)可以看成两部分:
x = Cup.cup1 这是取出Cup类中的静态成员数据cup1,这里称之x

x.f(99) 这是调用对象x的成员函数f

5、国内有哪些较好的Java开源CMS建站系统

下面给你推荐几个Java开源CMS建站系统:

1、DoraCMS是基于Nodejs+express+mongodb编写的一套内容管理系统,结构简单,较目前一些开源的cms,doracms易于拓展,特别适合前端开发工程师做二次开发。

2、PublicCMS是采用2017年最新主流技术开发的免费开源JAVACMS系统。架构科学,轻松支持上千万数据、千万PV;支持全站静态化,SSI,动态页面局部静态化等为您快速建站,建设大规模站点提供强大驱动,也是企业级项目产品原型的良好选择。

3、电子商务平台及CMS建站系统 CmsWing

一款基于ThinkJS(Node.js MVC)和MySQL的功能强大的(PC端,手机端和微信公众平台)电子商务平台及CMS建站系统。

6、java中页面静态化是什么意思

package com.yancms.util;

import java.io.*;
import org.apache.commons.httpclient.*;
import org.apache.commons.httpclient.methods.*;
import org.apache.commons.httpclient.params.HttpMethodParams;

/**
* 静态页面引擎技术(突乱了乱码问题UTF-8)
* @author 吴彦文
*
*/
public class HtmlGenerator extends BaseLog {
HttpClient httpClient = null; //HttpClient实例
GetMethod getMethod =null; //GetMethod实例
BufferedWriter fw = null;
String page = null;
String webappname = null;
BufferedReader br = null;
InputStream in = null;
StringBuffer sb = null;
String line = null;
//构造方法
public HtmlGenerator(String webappname){
this.webappname = webappname;

}

/** 根据模版及参数产生静态页面 */
public boolean createHtmlPage(String url,String htmlFileName){
boolean status = false;
int statusCode = 0;
try{
//创建一个HttpClient实例充当模拟浏览器
httpClient = new HttpClient();
//设置httpclient读取内容时使用的字符集
httpClient.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET,"UTF-8");
//创建GET方法的实例
getMethod = new GetMethod(url);
//使用系统提供的默认的恢复策略,在发生异常时候将自动重试3次
getMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER, new DefaultHttpMethodRetryHandler());
//设置Get方法提交参数时使用的字符集,以支持中文参数的正常传递
getMethod.addRequestHeader("Content-Type","text/html;charset=UTF-8");
//执行Get方法并取得返回状态码,200表示正常,其它代码为异常
statusCode = httpClient.executeMethod(getMethod);
if (statusCode!=200) {
logger.fatal("静态页面引擎在解析"+url+"产生静态页面"+htmlFileName+"时出错!");
}else{
//读取解析结果
sb = new StringBuffer();
in = getMethod.getResponseBodyAsStream();
//br = new BufferedReader(new InputStreamReader(in));//此方法默认会乱码,经过长时期的摸索,下面的方法才可以
br = new BufferedReader(new InputStreamReader(in,"UTF-8"));
while((line=br.readLine())!=null){
sb.append(line+"\n");
}
if(br!=null)br.close();
page = sb.toString();
//将页面中的相对路径替换成绝对路径,以确保页面资源正常访问
page = formatPage(page);
//将解析结果写入指定的静态HTML文件中,实现静态HTML生成
writeHtml(htmlFileName,page);
status = true;
}
}catch(Exception ex){
logger.fatal("静态页面引擎在解析"+url+"产生静态页面"+htmlFileName+"时出错:"+ex.getMessage());
}finally{
//释放http连接
getMethod.releaseConnection();
}
return status;
}

//将解析结果写入指定的静态HTML文件中
private synchronized void writeHtml(String htmlFileName,String content) throws Exception{
fw = new BufferedWriter(new FileWriter(htmlFileName));
OutputStreamWriter fw = new OutputStreamWriter(new FileOutputStream(htmlFileName),"UTF-8");
fw.write(page);
if(fw!=null)fw.close();
}

//将页面中的相对路径替换成绝对路径,以确保页面资源正常访问
private String formatPage(String page){
page = page.replaceAll("\\.\\./\\.\\./\\.\\./", webappname+"/");
page = page.replaceAll("\\.\\./\\.\\./", webappname+"/");
page = page.replaceAll("\\.\\./", webappname+"/");
return page;
}

//测试方法
public static void main(String[] args){
HtmlGenerator h = new HtmlGenerator("webappname");
h.createHtmlPage("http://localhost:8080/yanCms/three/three?parent_id=10&id=103&type=10","c:/a.html");
System.out.println("静态页面已经生成到c:/a.html");

}

}

7、Java开发的网站如何做静态化处理?

简单点的就弄伪静态吧,自己配置一下,也可以改下程序,静态化输出,这个麻烦点,改的东西多,要修改不会弄的话,可以找额提供二次开发,谢谢

8、cms 静态化

具体怎么做的话就说起来很麻烦了,现在大多网站使用的是伪静态,虽然在手路上没问题,但是在流量大的时候一样很占用服务器的资源的。

CMS的话静态做的比较好的个人认为是帝国CMS,是用PHP做的,可以完全生成静态页面。

是开源免费的,你可以下载了去研究下,PHP和JSP差异不是很大,很多业务流程都差不多的。

9、关于java 关于网站(真)静态化和使用什么框

1.jsp要经过web容器解释,中间过程多。
2.公共类包使用流写出文件,难道freemarker不行?
3.普通的java app,非web app,直接读取数据,再加上freemarker模板,就能批量出页面了。在1中jsp那种里面,这个过程就是web容器做的。而2说的流写出文件,这个过程和那个有区别么?为了防止模板解析出错造成生成的文件有误,先输出到内存,没问题就内存中页面数据直接输出到文件。

与javacms静态化相关的知识