如何在Java程序中选择添加图片,再存到数据库中

想要做的是一个比较小的程序,想要在一个java程序中有一项功能是添加图片,之后再存到数据库的相应的表中。
比如:有Student这张表,表中有(name,photo)。那我在程序中要添加photo这一项。该如何实现?
JLabel jLabel1 = new JLabel();
JTextField sName = new JTextField(15);
;;;
jLabel1.setText("学生姓名:");
jLabel1.setFont(new Font("Dialog",0,12));
girdBagCon = new GridBagConstraints();
girdBagCon.gridx = 0;
girdBagCon.gridy = 0;
girdBagCon.insets = new Insets(10,10,10,1);
girdBag.setConstraints(jLabel1,girdBagCon);
centerPanel.add(jLabel1);
girdBagCon = new GridBagConstraints();
girdBagCon.gridx = 1;
girdBagCon.gridy = 0;
girdBagCon.fill = girdBagCon.BOTH;
girdBagCon.insets = new Insets(10,1,10,10);

girdBag.setConstraints(sName,girdBagCon);
centerPanel.add(sName);
就是类似于向上面name的这种形式,会出现一个框。
而photo就是要选择并上传,同时添加到数据库中的。
不知该如何实现。。。
希望能够有相应的代码,能够操作的。。我是初学java的,不太懂。。。

存储图片:

//加载驱动程序类
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection con=DriverManager.getConnection("jdbc:odbc:denglu","sa","sa");
//建立数据库联机,其中denglu为数据库名,sa为连接数据库的帐号及密码。
Statement stmt=con.createStatement(); //建立Statement对象

FileInputStream str=new FileInputStream(filename); //图片文件路径
String sql="insert into picturenews(id,image) values(?,?,?)";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1,id); //ID号
pstmt.setBinaryStream(2,str,str.available()); //图片数据
pstmt.execute();
//将数据存入数据库
out.println("Success,You Have Insert an Image Successfully");

图片读取:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection con=DriverManager.getConnection("jdbc:odbc:denglu","sa","sa");
Statement stmt=con.createStatement();
ResultSet rs=null;
String sql = "select image from picturenews WHERE id="+id;

rs=stmt.executeQuery(sql);
if(rs.next()) {
//图片输出的输出流
InputStream in = rs.getBinaryStream("image");
byte b[] = new byte[0x7a120];
for(int i = in.read(b); i != -1;)
{
//将缓冲区的输入输出到页面
in.read(b);
}
}

/**
* 获得数据后可以按照自己的方法进行处理或者显示
*/
JLabel label=new JLabel(new ImageIcon(b)); //用JLabel进行显示

.....
温馨提示:内容为网友见解,仅供参考
无其他回答

java上传图片到数据库?
用java如何一次性上传多张图片到数据库1、只要在t_b中,设计列为3列即可。id,t_a_id,picture添加多个图片,不过是sql、语句。最简单的办法,是利用for()循环,如:for(inti=0;i图片数;i++){\/\/你的sql操作语句如。2、首先,文本类的可以放在request中通过request.getAttribute(name)获取。图片...

java如何将图片保存在数据库中(java保存图片到本地)
一般都是这样的,就是在你服务器有一个专门放置图片的文件夹,然后数据库保存的是你服务器图片的路径。需要用的时候就去数据库里面取路径。得到路径以后你想怎么处理图片是你的事情了。至于如何去数据库取路径这个就是简单的db操作。加载驱动类:Class.forName(DBDriver);获取连接:Connectionconn=.(url,...

Java web开发中怎么把图片存入数据库
两种方式:把图片转换 ‘流数据’ 直接存在数据库图片字段中。把图片 ‘流数据’ 存在文件夹内,数据库字段存对应图片地址。第一种因为是直接存图片数据,写入读取比第二种慢,会占用数据库资源。硬盘速度 > 数据库 图片转换成流数据,流转换成图片,具体方法你需要搞懂。看博客看到的。(我也没写过 ...

java读取照片保存到达梦数据库
存储图片是后端服务器比较基础的功能,一般来说,图片可以存储在服务器的文件系统中,然后数据库中只需要存储url就可以了。另外一种办法是,将图片通过Base64编码后存储到数据库中,数据库中存储图片的base64编码的二进制可以使用TEXT(mysql)类型。

javaweb怎么导入图片(javaweb导入项目)
具体步骤:1.首先,是工程目录结构及图片的引用,将图片加入近web,进行批量操作,如图所示:2.当在images文件夹中添加图片文件时,要点击refresh。3.在当图片文件更改时,要在clean以下server。怎么在JSP中插入图片?1、首先需要新建Dynamicwebproject项目,建好之后在WebContent里面的内容如图所示。2、在body...

java实现图片上传下载?
首先在JSP上放一个FILE的标签这些我都不说了,你也一定明白,我直接把处理过程给你发过去 我把其中存到数据库中的内容删除了,你改一下就能用 \/** * *上传图片 *@paramservlet *@paramrequest *@paramresponse *@return *@throwsException *\/ \/\/这里我是同步上传的,你随意 publicsynchronizedStringimportPic(Htt...

java web jsp怎么插图片
JSP中插入的图片就是一个html的img标签,如 1. 上传图片到服务器的文件系统中 2. 把图片的地址保存到数据库 3. 读取图片的地址,设置到的src属性中

java项目客户上传的图片放到哪好
图片上传一般会上传到你服务器那个项目里,到底上传到你服务器项目那个位置可以自己指定,数据库存 路径就行了,用的时候直接读 路径

如何将图片存到数据库中
保存图片到数据库中,有两种方法:1、一种是用大对象,即blob型,对c#不了解,但是java、c++中都有专门操作blob的对象,应该是以二进制流的方式走的。但是不建议采用这样的管理方式,会加重数据库、程序负担,即使是手机开发也是如此。2、图片保存在本地,数据库中用字符串存储地址,这样的方式比较好,...

在java中怎样将图片存入数据库
一般不需要把图放到数据库 如果一定要放 一船使用blob字段存放

相似回答