struts2前端页面读取Clob BLOB

在通过Struts2标签显示对象的Clob属性值的时候,显示的并不是CLOB或者BLOB的内容,而是显示的toString方法的值

例如我在实体中的注解为:

	@Lob
	@Column(name = "CONTENT_TEXT")
	public String getContentText() {
		return contentText;
	}

前台页面读取方式为:

<s:property value="#entry.contentText" />

显示结果为:

[email protected]

要想正常显示CLOB或者BLOB的内容。需要在action中加入对clob或者blob的转换方法

public String getClob(Clob c){
		Reader reader = null;
		StringBuffer sb = new StringBuffer();
		try {
			reader = c.getCharacterStream();
			BufferedReader br = new BufferedReader(reader);
			String temp = null;
			while ((temp=br.readLine()) != null) {
				sb.append(temp);
			}
		} catch (Exception e) {

		}finally{
			if (reader!=null) {
				try {
					reader.close();
				} catch (IOException e) {
				}
			}
		}
		return sb.toString();
	}

前端页面调用改为

<s:property value="%{getClob(#entry.contentText)}" /></span>

这样就可以正常显示clob的内容了,blob类似,只是把读取方式换成二进制流读取

时间: 2024-12-25 16:35:40

struts2前端页面读取Clob BLOB的相关文章

struts2 返回页面数据小测试

用户通过查询,后台得到查询数据,那么struts2这么把查询的数据,在页面显示?做个小测试. 创建项目 导入jar包(如果不知道导入哪些jar,参考前面章节)测试jar包为2.5 配置web.xml 写测试 项目结构图 web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&qu

关于XWork从前端页面向后台List赋值的问题

最近做项目框架比较老,其中一个是Xwork与Struts类似大致用法差不多. 在做一个投票功能题目和选项的时候遇到的问题,一个题目对应多个选项. Action: List list = new ArrayList();//Struts2中可以这么写 List list = new XWorkList();//在XWork中需要这样写 前端页面: list[index].value;//这样就可以赋值了,这里和struts是一样的

前端技术-前端页面优化

前端页面优化 时间花哪里去了? 只有10%-20%的最终用户响应时间花在了下载html文档上,其余80%-90%时间花在了下载页面的相关组件上.如:图片.Flash等. 所以主要优化: 减少http请求缓存减少文件大小:压缩文件+优化代码 健康的优化因该是根据页面的加载过程,全面的优化过程 第一步.浏览器预处理 查询Cache:读取Cache 或者发送304请求 第二步.查询DNS 优化规则--减少DNS查找 DNS缓存浏览器DNS缓存 计算机DNS缓存 服务器DNS缓存(TTL) 使用Keep

基于jQuery.i18n.propertieschajian实现前端页面国际化

一.简介 在介绍 jQuery.i18n.properties 之前,我们先来看一下什么是国际化.国际化英文单词为:Internationalization,又称 i18n,"i"为单词的第一个字母,"18"为"i"和"n"之间单词的个数,而"n"代表这个单词的最后一个字母.在计算机领域,国际化是指设计能够适应各种区域和语言环境的软件的过程. jQuery.i18n.properties 是一款轻量级的 j

SpringMVC+HibernateValidator,配置在properties文件中的错误信息回显前端页面出现中文乱码

问题: 后台在springMVC中使用hibernate-validator做参数校验的时候(validator具体使用方法见GOOGLE),用properties文件配置了校验失败的错误信息.发现回显给前端页面的时候中文错误信息显示乱码. 封装参数的POJO类 public class UserReqBean { @NotNull(message="{user.name.notnull}") private String userName; } ValErrMsg.propertie

ASP.NET网站前端页面的复制

网络普及的时代,遇到问题的首要解决方案并不是问人,而是找度娘.当我们找一些技术性的问题时,会发现很多解决方案在博客里,看看博主发表的博客总是惊叹不已,想要自己也有这么一个好习惯,把学到的东西以自己的方式记录下来,下次用到类似的问题直接翻自己的博客岂不是更好,不需要再重新百度了:然而,我只是想想,相信同辈的小伙伴们和我是一样的,思想上的巨人,行动上的矮子.于是,今天良心发现,想要从今天开始记录自己的所感所悟,希望养成这样的一个好习惯. 然而把这一页放在.NET的分类下,是想要分享自己的一个小本领(

iwebshop里面前端页面query标签如何传递api数据

开发中遇到了前台页面用query标签查出来的数据,需要通过api获取数据,那么接下来就给大家说一下如何通过api里的方法来传递数据到前端! 首先前端页面必须是query标签获取的数据 例子: {set:$queryObj=Api::run('getSellerList',$flag);$resultData=$queryObj->find()} {if:$resultData} {foreach:items=$resultData} 例子中 注意自己定义的 api方法 给一个自定义参数,此$fl

Python之路-(js正则表达式、前端页面的模板套用、Django基础)

js正则表达式 前端页面的模板套用 Django基础 js正则表达式: 1.定义正则表达式 /.../  用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m 表示多行匹配 登录注册验证: test: 判断字符串是否符合规定的规则 rep = /\d+/;   (定义规则) rep.test('')   (引号里面必须包含字母和数字才返回true,否则为false) rep = /^\d+$/; (只有是纯数字时候才返回true,否则是false) exe

用github来展示你的前端页面吧

前言 经常会有人问我如何才能将自己做的静态页面放到网上供他人欣赏,是不是需要自己有一个服务器,是不是还要搞个域名才能访问?对于以上问题我都会回答:用github来展示你的前端页面吧. 工欲善其事,必先利其器.github是一个很好的代码管理与协同开发平台,在程序界又被称为最大的"同性交友网站".如果你不懂git,没有自己的github账户,那你就丢失了一把能够很好的展示自我,储存知识的利器. 当然知道github的人不在少数,但是大部分人可能仅知道它可以用于管理我们的项目代码,而不知道