一般都是这样的,就是在你服务器有一个专门放置的文件夹,然后数据库保存的是你服务器的路径。需要用的时候就去数据库里面取路径。得到路径以后你想怎么处理是你的事情了。
至于如何去数据库取路径这个就是简单的db *** 作。
加载驱动类:
ClassforName(DBDriver);
获取连接:
Connection
conn
=
DriverManagergetConnection(url,username,password);
创建 *** 作对象:
PreparedStatement
stmt
=
conprepareStatement(sql);
执行 *** 作:
ResultSet
rs
=
stmtexecuteQuery();
遍历结果:
List
list
=
new
ArrayList();
while(rsnext()){
//具体 *** 作,通常用rsgetString(name)取值
Image
img
=
new
Image();//类对应你数据库中表格
imgsetSrc(rsgetString("src"));//假设你数据库中image表中地址字段是src
listadd(img);
}
记得关闭资源:
rsclose();
stmtclose();
conclose();
看你的意思是已经取出来了不知道怎么显示:
你取出来之后可以把放在一个list里面然后去页面上遍历这个list
<c:forEach
var="chakan1"
items="list">
<tr>
<td>
<img
src="${chakan1src}"/>
</td>
</tr>
</c:forEach>
大致应该是这样
方法一:使用管道流截取输出到控制台的信息
PipedInputStream;
PipedOutputStream;
方法二:使用log4j等技术把要输出的信息使用AOP编程输出
方法三:抛异常到数据库
不管使用哪种方法,都是在打印的同时提取数据,那么提取到的数据你就可以随意存入数据库了。没见过将已经打印出来的数据再读取存数据库的 *** 作,原理上可以,但没必要。你在sysout的时候已经获取数据了,为什么要打印出来再重新读数据,然后存数据库呢?很绕是吧,呵呵。 日志技术就是要解决这些问题的,配置好log4j,你不用每次都 *** 作存数据库,它会自己帮你把打印的东西存数据库的。
建议先看下log4j
添加注解存数据库。
当创建的类和数据库里面的每一项一一映射时,但是又需要多些一些属性是不存在数据库里面的,此时可以在此属性上加一个注解@TableField(exist = false)就可以,另外这里添加一些经常用到的注解@Id 表示这个字段是主键@Column(name = “xx”) 表示把字段和数据库的名字对应,理解成起别名@Transactional 可以作用在接口、类、类方法。
现在数据库存入时间,一般情况下都是用的“
时间戳
”这个概念。就是说1970年1月1日0时0分0秒到现在这个时间的秒数,一般数据库都有这个时间戳这个类型,像
SqlServer
,oracle。用时间戳,查询速度要比Date,datetime类型快很多,尤其是排序的时候
以上就是关于java如何将图片保存在数据库中全部的内容,包括:java如何将图片保存在数据库中、java中如何将从控制台获取的信息存入数据库、Java实体类属性是另一个类的时候如何存数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)