|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在性能方面,在windows平台下,.net可能是占强项,要是把.net放在sun开发的操作系统上去运行呢?根本就运行不了,.net对其它操作系统的支持也很弱,性能也可能比不上java。js|程序|数据|数据库 我在程序代码里贴了向Mysql数据库写进image代码的程序,但是很多多少人都是Java的初学者,关于这段代码,他们没法将它转换成jsp,以是我在这在写一下用jsp如何向数据库写进图象文件。人人先在数据库建如许一张表,我上面的这些代码对任何数据库都通用,只需撑持blob范例的
只需人人将毗连数据库的参数改一下就能够了。
SQL>createtableimage(idint,contentvarchar(200),imageblob);
假如在sqlserver2000的数据库中,能够将blob字段换为image范例,这在SqlServer2000中是新增的。
testimage.html文件内容以下:
<HTML>
<HEAD>
<TITLE>ImageFile</TITLE>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
</HEAD>
<FORMMETHOD=POSTACTION="testimage.jsp">
<INPUTTYPE="text"NAME="content"><BR>
<INPUTTYPE="file"NAME="image"><BR>
<INPUTTYPE="submit"></FORM>
<BODY>
</BODY>
</HTML>
我们在Form的action里界说了一个举措testimage.jsp,它的内容以下:
<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.sql.*"%>
<%@pageimport="java.util.*"%>
<%@pageimport="java.text.*"%>
<%@pageimport="java.io.*"%>
<html>
<body>
<%Class.forName("org.gjt.mm.mysql.Driver").newInstance();
Stringurl="jdbc:mysql://localhost/mysql?user=root&password=&useUnicode=true&characterEncoding=8859_1";
//个中mysql为你数据库的名字,user为你毗连数据库的用户,password为你毗连数据库用户的暗码,可本人改
Connectionconn=DriverManager.getConnection(url);
Stringcontent=request.getParameter("content");
Stringfilename=request.getParameter("image");
FileInputStreamstr=newFileInputStream(filename);
Stringsql="insertintotest(id,content,image)values(1,?,?)";
PreparedStatementpstmt=dbconn.conn.prepareStatement(sql);
pstmt.setString(1,content);
pstmt.setBinaryStream(2,str,str.available());
pstmt.execute();
out.println("Success,YouHaveInsertanImageSuccessfully");
%>
上面我写一个测试image输入的例子看我们下面程序写的对不合错误,testimageout.jsp的内容以下:
<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.sql.*"%>
<%@pageimport="java.util.*"%>
<%@pageimport="java.text.*"%>
<%@pageimport="java.io.*"%>
<html>
<body>
<%Class.forName("org.gjt.mm.mysql.Driver").newInstance();
Stringurl="jdbc:mysql://localhost/mysql?user=root&password=&useUnicode=true&characterEncoding=8859_1";
//个中mysql为你数据库的名字,user为你毗连数据库的用户,password为你毗连数据库用户的暗码,可本人改
Connectionconn=DriverManager.getConnection(url);
Stringsql="selectimagefromtestwhereid=1";
Statementstmt=null;
ResultSetrs=null;
try{
stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}catch(SQLExceptione){}
try{
while(rs.next()){
res.setContentType("image/jpeg");
ServletOutputStreamsout=response.getOutputStream();
InputStreamin=rs.getBinaryStream(1);
byteb[]=newbyte[0x7a120];
for(inti=in.read(b);i!=-1;)
{
sout.write(b);
in.read(b);
}
sout.flush();
sout.close();
}
}
catch(Exceptione){System.out.println(e);}
%>
</body>
</html>
你运转这个程序,你就会看到方才你写进俊丽的图片就会显现在你眼前。怎样,用jsp来尝尝。
这类办法把图片写到数据库中会使数据库在短工夫内容量飞涨,会影响功能的,别的一种做法将图片存上传到服务器上,
在数据库里只寄存图片的路径,这是一个很好的办法。我倡议人人接纳前面一种办法。
前些天,在CSDN上看到了一个消息,说是ASP.NETAJAX成功在Linux上运行,这一点对我触动很大,而且引发了我许多感叹,所以想写出来分享一下。 |
|