最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

html实现页面静态化的案例

来源:懂视网 责编:小采 时间:2020-11-27 15:28:19
文档

html实现页面静态化的案例

html实现页面静态化的案例:静态化文件位置注意:实体类定义:public class News { private String title; private String pubTime; private String category; private String newsContent; public String getTitle() { return tit
推荐度:
导读html实现页面静态化的案例:静态化文件位置注意:实体类定义:public class News { private String title; private String pubTime; private String category; private String newsContent; public String getTitle() { return tit
静态化文件位置注意:

wKioL1m2KwSD3R_pAAAjiwpj0zM659.png

实体类定义:

public class News {
	private String title;
	private String pubTime;
	private String category;
	private String newsContent;
	
	
	public String getTitle() {
	return title;
	}
	public void setTitle(String title) {
	this.title = title;
	}
	public String getPubTime() {
	return pubTime;
	}
	public void setPubTime(String pubTime) {
	this.pubTime = pubTime;
	}
	public String getCategory() {
	return category;
	}
	public void setCategory(String category) {
	this.category = category;
	}
	public String getNewsContent() {
	return newsContent;
	}
	public void setNewsContent(String newsContent) {
	this.newsContent = newsContent;
	}
}

自定义流的工具类

public class CharStreamIO {
	
	public void copyFile(String fsrc,String fDest){
	File file = new File(fDest);
	if(file.exists()){
	file.delete();
	}
	PrintWriter out = null;
	BufferedReader in = null;
	try {
	in = new BufferedReader(new FileReader(fsrc));
	out = new PrintWriter(new BufferedWriter(new FileWriter(fDest)));
	String strRet;
	while((strRet=in.readLine()) != null){	
	out.println(strRet);
	out.flush();
	}	
	} catch (Exception e) {
	e.printStackTrace();
	}finally{
	if(in != null){
	try {
	in.close();
	} catch (Exception e2) {
	e2.printStackTrace();
	}
	}
	if(out != null){
	try {
	out.close();	
	} catch (Exception e2) {
	e2.printStackTrace();
	}	
	}
	}
	}
	
	/**
	 * 把传入的信息,保存成文件
	 * @param finfo 传入的文件内容信息
	 * @param fname 目标路径和文件名
	 */
	public void writeFile(String finfo,String fDest){
	File file = new File(fDest);
	if(file.exists()){
	file.delete();
	}
	PrintWriter out = null;
	try {
	out = new PrintWriter(new BufferedWriter(new FileWriter(fDest)));
	out.write(finfo);	
	out.flush();
	} catch (Exception e) {
	e.printStackTrace();
	}finally{
	if(out !=null){
	out.close();
	}
	}	
	}

	/**
	 * 读取文本型文件	
	 * @param name
	 * @return
	 */
	public String readFile(String fname){
	
	File file = new File(fname);
	StringBuilder bild = new StringBuilder();
	BufferedReader in = null;
	if(file.exists()){
	try {
	in = new BufferedReader(new FileReader(fname));
	String strRet;
	while((strRet=in.readLine()) != null){
	bild.append(strRet);
	}
	} catch (Exception e) {
	e.printStackTrace();
	}finally{
	if(in != null){
	try {
	in.close();	
	} catch (Exception e2) {
	e2.printStackTrace();
	}	
	}
	}	
	
	}else{
	System.out.println(fname + "不存在");
	}
	
	
	 return bild.toString();	
	}

}

数据访问层

public class NewsDao {
	
	/**
	 * 读取数据库中要生成的新闻信息
	 * @return
	 */
	public List<News> getAllNews(){
	CharStreamIO io = new CharStreamIO();
	SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");	
	List<News> newsList = new ArrayList<News>();
	
	News n1 = new News();
	n1.setCategory("sport");
	String c1 = io.readFile("NewsInfo\\news1.txt");
	n1.setNewsContent(c1);	
	n1.setPubTime(sd.format(new Date()));
	n1.setTitle("深足教练组:说我们买球是侮辱 朱广沪常暗中支招");
	
	News n2 = new News();
	n2.setCategory("hot");
	String c2 = io.readFile("\\NewsInfo\\news2.txt");
	n2.setNewsContent(c2);
	n2.setPubTime(sd.format(new Date()));
	n2.setTitle("对对对发发发失误失误");
	
	newsList.add(n1);
	newsList.add(n2);
	
	return newsList;
	
	}
}

业务逻辑层

public class NewsBiz {
	/**
	 * 读取数据库中要生成的新闻信息
	 * @return
	 */
	public void createAllNews() throws Exception{	
	NewsDao dao = new NewsDao();
	List<News> newsList = dao.getAllNews();
	String destPath = "/News/newspages";
	for(int i=0;i<newsList.size();i++){
	 //读取模板
	CharStreamIO io = new CharStreamIO();
	String tmp = io.readFile("/News/news.tmp");
	//替换模板中的参数数据
	News n = newsList.get(i);
	String newTmp;
	newTmp = tmp.replace(TemplateParam.TITLE, n.getTitle());
	newTmp = newTmp.replace(TemplateParam.CATEGORY,n.getCategory());
	newTmp = newTmp.replace(TemplateParam.PUB_TIME,n.getPubTime());
	newTmp = newTmp.replace(TemplateParam.CONTENT, n.getNewsContent());
	
	//把替换后的内容保存成新闻页面
	io.writeFile(newTmp, destPath + "/news-" + i + ".html");	
	}	
	
	}
	
}

TemplateParam类

public class TemplateParam {
	
	public static final String TITLE = "%{title}%";
	public static final String CATEGORY = "%{category}%";
	public static final String CONTENT = "%{newsContent}%";
	public static final String PUB_TIME = "%{pubTime}%";

}

用户接口层

public class NewsTest {
	
	public static void main(String[] args) {
	NewsBiz biz = new NewsBiz();
	try {
	biz.createAllNews();	
	System.out.println("新闻页面创建完毕!");
	} catch (Exception e) {
	e.printStackTrace();
	}
	}
}

文档

html实现页面静态化的案例

html实现页面静态化的案例:静态化文件位置注意:实体类定义:public class News { private String title; private String pubTime; private String category; private String newsContent; public String getTitle() { return tit
推荐度:
标签: 页面 实现 静态
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top