将图片保存到表中并用ajax技术获取图片
创建用于保存图片的表:
create table stockImages
( imageid int primary key identity(1,1),
[filename] varchar(50),
img varbinary(max))
插入本地图片:
insert into stockImages
select '风景',bulkcolumn
from openrowset(bulk 'd:\\img.jpg',single_blob) as x
创建存储过程,检索图片,将二进制数据包含在XML文档片段中:
create proc getImage @id int
as
declare @xmlResult xml
set @xmlResult=(select * from stockImages where imageid=@id for xml auto,elements,root('Items'),binary base64)
select @xmlResult
使用一般处理文件获取检索到得XML文档并发送到客户端:
<%@ WebHandler Language="C#" Class="ImageHandler" %>
using System;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Xml;
public class ImageHandler : IHttpHandler {
public void ProcessRequest (HttpContext context) {
string connectionString =
ConfigurationManager.ConnectionStrings[
"uploadConnectionString"].ConnectionString;
SqlConnection connection = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand("getImage", connection);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@id", SqlDbType.Int).Value = context.Request.QueryString["id"];
try
{
connection.Open();
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
相关文档:
最近开始了ASP.NET AJAX的全面学习。在服务端编程这块主要有几个服务器控件负责,他们分别为:ScriptManager,Timer,UpdatePanel,UpdateProgress.
先来说说ScriptManager.它有个方法registerAsyncPostBackControl(控件),可以注册页面上的任何控件为异步传送按钮。还有个方法叫 ......
JS文件
//以下为jquery代码
$(document).ready(function(){
$("#jqbtn").click(function(){
  ......
用struts2+jquery+json+hibernate+ajax做了一个登陆的demo。
1.jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/x ......
Client端
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<script language="javascript">
var XmlHttp=new ActiveXObject("Microsoft.XMLhttp");
function sendAJAX()
{
&nb ......