`
Java_大猫
  • 浏览: 170507 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

log4j插入数据库,并生成HTML(二)

阅读更多
后面是关键的东西也就是需要把查询的LIST.JSP页面生成HTML 了。
需要用的是一个IO流写入。
显示数据:
	public ActionForward list(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		UserDao dao=new DaoImp();
		int pageCount = 4;//设置页数
		// pages
		int pages = dao.getPages(pageCount);
		List<Log4j> all=new ArrayList();
		
		for(int i =0;i<pages;i++){
		all=dao.listall(pageCount,pageCount*i-i,pageCount);
		creatHtml(request, all, i);
		}
	
		request.setAttribute("list", all);

		return mapping.findForward("suce");
	}



下面我们来看下生成HTML的方法:
protected void creatHtml(HttpServletRequest request, List<Log4j> all,int pages)
			throws FileNotFoundException, IOException {
		//------生成HTML-------------------------------
			//截取模板,替换
				 final String beginForHtmlTag = "<###for###>";
				 final String endForHtmlTag = "</###for###>";
				String filePath = "";
				filePath = request.getRealPath("/")+"template.html";//取到模板		
				/******** begin ************/
				FileInputStream input = new FileInputStream(filePath);
				int length = input.available();
				byte[] b = new byte[length];
				input.read(b);
				
				//读取模板信息后
				
				String result = new String(b);
				int beginIndex = result.indexOf(beginForHtmlTag);
				int endIndex = result.indexOf(endForHtmlTag);
				String begin = result.substring(0, beginIndex);
				String end = result.substring(endIndex+endForHtmlTag.length());
				
				String table = result.substring(beginIndex+beginForHtmlTag.length(), endIndex);
				
//				String content = new String("");
				StringBuilder content=new StringBuilder();
				for(Log4j log4j:all) {
					
					String temp = table.replace("###username###",log4j.getUsername());
					temp = temp.replace("###classs###",log4j.getClasss());
					temp = temp.replace("###method###",log4j.getMethod());
					temp = temp.replace("###leve###",log4j.getLogLevel());
					temp = temp.replace("###mess###",log4j.getMessage());
					temp = temp.replace("###titme###",log4j.getCreateTime());
//					content += temp;
					content.append(temp);
				}
				
				result = begin + content+"<br />all pages:"+pages + end;
				/******** end ************/
				以上是替换。这里会有事先上下页的功能,后期会加进去,大家期待。
	
				// 根据时间得文件名
				Calendar calendar = Calendar.getInstance();
				String fileame = String.valueOf(calendar.getTimeInMillis()) +".html";
				
		//		String fileame ="a.html";
				
				fileame = request.getRealPath("/")+fileame;//生成的html文件保存路径
				FileOutputStream fileoutputstream = new FileOutputStream(fileame);//建立文件输出流
				
				
				byte tag_bytes[] = result.getBytes();
				fileoutputstream.write(tag_bytes);
				fileoutputstream.close();
	}


至于 HTML的模板 和网上很多资料写的一样。
大家可以查看下,如果有需要留言给我。
分享到:
评论

相关推荐

    log explorer数据库日志恢复

    选择数据库-&gt;attach-&gt;左面对话框中browse-&gt;view log-&gt;就可以看到log记录了 点击“View DDL Commands”里面就有很多drop table 命令 点击下面的“undo”按钮是生成表结构的语句(create table ....) 点击下面的...

    Log Explorer for SQL Server v4.22

    如果被删除数据与有IDENTITY Property属性,恢复时LogExlpore可以通过SET IDENTITY_INSERT ON 命令来对插入的数据设置Identity属性,并保留原数据不变,也可以对该列付与新值。 数据导出: 浏览日志时可将数据导出...

    sql2000 Log Explorer4.2(含注册码)+汉化

    服务器端代理是保存在SQLServer主机中的一个只读存储过程,他的作用是接受客户端请求,读取在线事物日志块并通过网络传给客户端软件,由客户端软件来读取这些原始的数据块来完成Log Explore所提供的所有功能。...

    Log Explorer for SQL Server v4.22 含注册机

    如果被删除数据与有IDENTITY Property属性,恢复时LogExlpore可以通过SET IDENTITY_INSERT ON 命令来对插入的数据设置Identity属性,并保留原数据不变,也可以对该列付与新值。 数据导出: 浏览日志时可将数据导出...

    Log Explorer4.2帮助文档

    如果被删除数据与有IDENTITY Property属性,恢复时LogExlpore可以通过SET IDENTITY_INSERT ON 命令来对插入的数据设置Identity属性,并保留原数据不变,也可以对该列付与新值。 数据导出: 浏览日志时可将数据导出...

    my-datagenerator:Mysql 数据生成器和 Apache DBunit GUI

    Apache DBunit 的 java Swing gui 和数据生成器,用于用随机数据填充 MySql 5.X 数据库。 功能列表: 清理所有数据库... 将生成的数据导出为sql插入语句用于调试目的的 Log4j 日志系统访问: : 了解更多信息和细节!!

    mysql数据库my.cnf配置文件

    # InnoDB为独立表空间模式,每个数据库的每个表都会生成一个数据空间 # 独立表空间优点: # 1.每个表都有自已独立的表空间。 # 2.每个表的数据和索引都会存在自已的表空间中。 # 3.可以实现单表在不同的数据库中...

    oracle数据库经典题目

    14. 每个Oracle 10g数据库在创建后都有4个默认的数据库用户:system、sys、sysman和DBcnmp 15. Oracle提供了两种类型的权限:系统权限和对象权限。系统权限提供了在Oracle数据库系统范围内执行某种任务的操作能力...

    Excel导入SQL数据库

    注:二维折线图,4;二维饼图,5;二维柱形图,51 3、 设定Chart图标题 objExcelApp.ActiveChart.HasTitle = True objExcelApp.ActiveChart.ChartTitle.Text = "A test Chart" 4、 通过表格数据设定图形 objExcelApp...

    audit-log::bookmark_tabs:为用户行为在数据库中创建审核日志,包括用于查询日志的Web UI

    演示界面审核日志列表: 详细信息页面:安装将此行添加到您的应用程序的Gemfile中: gem "audit-log" 然后执行: $ bundle 生成文件: $ rails g audit_log:install用法在控制器中使用: class TicktsController &lt...

    informix 实用大全

    本书由专业Informix用户、数据库管理员、Informix管理员和应用程序开发员编写而成,把各大Informix产品的方方面面综合、深入地集中在一起,包括最新Informix产品的详细信息,如Informix Internet Foundation.2000...

    报修系统数据库设计.doc

    文档编号:DB001 版本号: 1.0 报修系统 数 据 库 设 计 开发单位: 开发负责人: 二〇一五年十一月十二日 目 录 1、 super_user_info(超级管理用户信息数据表) 2 2、 super_ log_info(超级管理员日志信息数据表) ...

    php网站广告管理插件 v2.0.rar

    当网站的广告比较多时,管理会很麻烦,本系统就是为方便网站上广告的管理而设计的网站插件程序,支持“广告内容 广告ID 广告备注 广告规格 ”等数种广告的搜索管理,让你很方便的查找到你加的广告并进行修改!...

    oracle使用dblink高速复制表数据的动态存储过程

    执行存储过程,通过指定目标数据库登录信息,动态生成dblink,打开游标,按批次插入本地指定表中,每批次1万条数据。同步记录和日志信息写在自动生成的sync_log表中。同步完成后自动删除动态生成的存储过程、dblink...

    jexcelapi_2_6_12.zip

    Java Excel API—用于读取、写入和修改Excel电子表格的Java API JExcelApi Java Excel API是一个成熟的开放源码Java API,允许开发...支持使用Jakarta Commons logging、log4j、JDK 1.4 Logger等进行日志记录 更多...

    php网站广告管理插件 v2.0

    当网站的广告比较多时,管理会很麻烦,本系统就是为方便网站上广告的管理而设计的网站插件程序,支持“广告内容 广告ID 广告备注 广告规格 ”等数种广告的搜索管理,让你很方便的查找到你加的广告并进行修改!...

    计算机二级公共基础知识

    性质4:具有n个结点的二叉树,其深度至少为[log2n]+1,其中[log2n]表示取log2n的整数部分。 3. 满二叉树与完全二叉树 满二叉树是指这样的一种二叉树:除最后一层外,每一层上的所有结点都有两个子结点。在满二叉树中...

Global site tag (gtag.js) - Google Analytics