应用提交 App Store ios上架被拒绝的原因都有哪些

如何使用eclipse调用数据库中的内容,并将数据显示出来?具体步骤和代码??-学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
> 信息中心 >
如何使用eclipse调用数据库中的内容,并将数据显示出来?具体步骤和代码??
来源:互联网 发表时间: 21:48:46 责任编辑:李志喜字体:
为了帮助网友解决“如何使用eclipse调用数据库中的内容,并将数据显示出来?具体步骤和代码??”相关的问题,学网通过互联网对“如何使用eclipse调用数据库中的内容,并将数据显示出来?具体步骤和代码??”相关的解决方案进行了整理,用户详细问题包括:RT,我想知道:如何使用eclipse调用数据库中的内容,并将数据显示出来?具体步骤和代码??,具体解决方案如下:解决方案1:我用的数据库是mysql,下载这个东东mysql-connector-java-5.1.15.zip解压把mysql-connector-java-5.1.15-bin.jar导入到你要连接数据库的项目中(应该知道怎么导入吧!)然后就是代码,以下代码是插入数据库的例子
import java.awt.*;
import java.awt.event.ActionE
import java.awt.event.ActionL
import javax.swing.*;
import java.sql.*;
public class Login2 {
private JButton button1;
private JF
private JLabel nameLabel,pwdL
private JTextField nameTA,pwdTA;
private JP
// private S
private ResultS
public Login2()
String url = &jdbc:mysql://localhost:3306/(此处填写你创建的数据库名字)&;
String username = &(此处填写你的数据库用户,例如root)&;
String password = &(此处填写你的数据库安装时设置的密码)&;
//加载驱动程序以连接数据库
Class.forName( &org.gjt.mm.mysql.Driver& );
connection = DriverManager.getConnection(
url, username, password );
//捕获加载驱动程序异常
catch ( ClassNotFoundException cnfex ) {
System.err.println(
&装载 JDBC/ODBC 驱动程序失败。& );
cnfex.printStackTrace();
System.exit( 1 ); // terminate program
//捕获连接数据库异常
catch ( SQLException sqlex ) {
System.err.println( &无法连接数据库& );
sqlex.printStackTrace();
System.exit( 1 ); // terminate program
frame = new JFrame();
panel = new JPanel();
panel.setLayout(new GridLayout(3,2));
nameLabel = new JLabel(&user&);
pwdLabel = new JLabel(&password&);
nameTA = new JTextField();
pwdTA = new JTextField();
button1 = new JButton(&insert&);
button1.addActionListener(new ActionListener()
public void actionPerformed(ActionEvent e)
String str1 = nameTA.getText();
String str2 = pwdTA.getText();
String str = &insert into user values('&+str1+&','&+str2+&')&;
// Statement stat =
PreparedStatement pstmt = connection.prepareStatement(str);
pstmt.executeUpdate();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
JOptionPane.showMessageDialog(null, &yes&);
panel.add(nameLabel);
panel.add(nameTA);
panel.add(pwdLabel);
panel.add(pwdTA);
panel.add(button1);
frame.add(panel);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300,100);
frame.setVisible(true);
* @param args
public static void main(String[] args) {
Login2 l = new Login2();
还有问题可以继续联系
1个回答无回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答
相关文章:
最新添加资讯
24小时热门资讯
Copyright © 2004- All Rights Reserved. 学网 版权所有
京ICP备号-1 京公网安备02号有一个表Messages,有字段ID(自增的),UserID,Message,ASP.NET做的页面上有3个textbox框,
我想实现的功能是当我向表中插入数据的时候,能把这条插入的数据显示到页面上。
求代码啊。
回复讨论(解决方案)
直接绑定表中最新的一条记录,时时刷新
直接绑定表中最新的一条记录,时时刷新
写了个时时刷新的,领导说不行,要数据库表一变就显示的。
个人想法:用个线程监视数据库,如果发现数据库发生改变了,然后再刷新
个人想法:用个线程监视数据库,如果发现数据库发生改变了,然后再刷新
using&System.C&&
using&System.D&&
using&System.Data.SqlC&&
namespace&SqlDependencyTest&&
&&&&class&Program&&
&&&&&&&&private&static&string&_connS&&
&&&&&&&&static&void&Main(string[]&args)&&
&&&&&&&&{&&
&&&&&&&&&&&&_connStr&=&ConfigurationManager.ConnectionStrings[&ConnStr&].ToString();&&
&&&&&&&&&&&&SqlDependency.Start(_connStr);//传入连接字符串,启动基于数据库的监听&&&
&&&&&&&&&&&&UpdateGrid();&&
&&&&&&&&&&&&Console.Read();&&
&&&&&&&&}&&
&&&&&&&&private&static&void&UpdateGrid()&&
&&&&&&&&{&&
&&&&&&&&&&&&using&(SqlConnection&connection&=&new&SqlConnection(_connStr))&&
&&&&&&&&&&&&{&&
&&&&&&&&&&&&&&&&//依赖是基于某一张表的,而且查询语句只能是简单查询语句,不能带top或*,同时必须指定所有者,即类似[dbo].[]&&&
&&&&&&&&&&&&&&&&using&(SqlCommand&command&=&new&SqlCommand(&select&ID,UserID,[Message]&From&[dbo].[Messages]&,&connection))&&
&&&&&&&&&&&&&&&&{&&
&&&&&&&&&&&&&&&&&&&&mandType&=&CommandType.T&&
&&&&&&&&&&&&&&&&&&&&connection.Open();&&
&&&&&&&&&&&&&&&&&&&&SqlDependency&dependency&=&new&SqlDependency(command);&&
&&&&&&&&&&&&&&&&&&&&dependency.OnChange&+=&new&OnChangeEventHandler(dependency_OnChange);&&
&&&&&&&&&&&&&&&&&&&SqlDataReader&sdr&=&command.ExecuteReader();&&
&&&&&&&&&&&&&&&&&&&Console.WriteLine();&&
&&&&&&&&&&&&&&&&&&&while&(sdr.Read())&&
&&&&&&&&&&&&&&&&&&&{&&
&&&&&&&&&&&&&&&&&&&&&&&Console.WriteLine(&Id:{0}\tUserId:{1}\tMessage:{2}&,sdr[&ID&].ToString(),&sdr[&UserId&].ToString(),&&&
sdr[&Message&].ToString());&&
&&&&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&&&&&&&&sdr.Close();&&
&&&&&&&&&&&&&&&&}&&
&&&&&&&&&&&&}&&
&&&&&&&&}&&
&&&&&&&&private&static&void&dependency_OnChange(object&sender,&SqlNotificationEventArgs&e)&&
&&&&&&&&{&&
&&&&&&&&&&&&UpdateGrid();&&
&&&&&&&&}&&
我这有个控制台监听的,用这个写到winform里可用,写到ASP.NET中值是传过去了,但是页面不刷新显示。
90分啊,没人关注么,求回复,求代码啊
个人想法:用个线程监视数据库,如果发现数据库发生改变了,然后再刷新
我这有个控制台监听的,用这个写到winform里可用,写到ASP.NET中值是传过去了,但是页面不刷新显示。
值都过去了,那就是你显示的问题了
个人想法:用个线程监视数据库,如果发现数据库发生改变了,然后再刷新
我这有个控制台监听的,用这个写到winform里可用,写到ASP.NET中值是传过去了,但是页面不刷新显示。
值都过去了,那就是你显示的问题了 不知道为啥页面没有刷新啊,我在页面上加了个Button写了个Button_Click事件,用来提取最大ID那条数据,点击后能出来数据。但是我用数据库变化就调用这个button_click事件页面却不显示数据,用debug跑的是有值的。但是页面没有刷新啊,这该怎么改啊。
如果是多线程的话不能直接操作页面控件值,需要用到委托
如果是多线程的话不能直接操作页面控件值,需要用到委托
求代码。跪求啊
你那监控的代码我不确定是不是另外一个线程的,不过你还是可以试试用委托来更改页面值试试,委托写法网上很多,自己学会研究下;写个小demo,成功了再放到代码里去;渔而不鱼,你懂的
SqlDependency
看这个行不行。。
SqlDependency
看这个行不行。。
我上面贴的代码就是找的这个里面的,但是不知道如何叫它显示到页面上。winform中可行。
SqlDependency
看这个行不行。。
我上面贴的代码就是找的这个里面的,但是不知道如何叫它显示到页面上。winform中可行。
&Console.WriteLine(&Id:{0}\tUserId:{1}\tMessage:{2}&,sdr[&ID&].ToString(),&sdr[&UserId&].ToString(),&&&
sdr[&Message&].ToString());把这个输出语句改成三个label在窗体上试试,看看是不是能改变三个label,你的Console.WriteLine是在窗体上输出的意思,不同语言输出语句不同的&&
SqlDependency
看这个行不行。。
我上面贴的代码就是找的这个里面的,但是不知道如何叫它显示到页面上。winform中可行。
&Console.WriteLine(&Id:{0}\tUserId:{1}\tMessage:{2}&,sdr[&ID&].ToString(),&sdr[&UserId&].ToString(),&&&
sdr[&Message&].ToString());把这个输出语句改成三个label在窗体上试试,看看是不是能改变三个label,你的Console.WriteLine是在窗体上输出的意思,不同语言输出语句不同的&&
&&&&&&&&&&&&&&&&&&&&string&b&=&Convert.ToString(dt.Rows[0][&ID&]);
&&&&&&&&&&&&&&&&&&&&string&c&=&Convert.ToString(dt.Rows[0][&UserID&]);
&&&&&&&&&&&&&&&&&&&&string&d&=&Convert.ToString(dt.Rows[0][&Message&]);
&&&&&&&&&&&&&&&&&&&&this.textbox1.text&=&b;
&&&&&&&&&&&&&&&&&&&&this.textbox2.text&=&c;
&&&&&&&&&&&&&&&&&&&&this.textbox3.text&=&d;
我代码里这么写的,只是页面不刷新罢了。
我就是不明白为啥点button的时候页面能刷新显示值,用数据库方法调用它却不刷新页面呢。
我就是不明白为啥点button的时候页面能刷新显示值,用数据库方法调用它却不刷新页面呢。 Winform也是这样更改控件的值,而更改成功?
我就是不明白为啥点button的时候页面能刷新显示值,用数据库方法调用它却不刷新页面呢。 Winform也是这样更改控件的值,而更改成功?
恩,winform能用,数据库插入数据就能显示,ASP中代码也都跑到了,只是页面不显示罢了。
控件绑定&定时刷新&修改数据源就可以了
我就是不明白为啥点button的时候页面能刷新显示值,用数据库方法调用它却不刷新页面呢。 Winform也是这样更改控件的值,而更改成功?
恩,winform能用,数据库插入数据就能显示,ASP中代码也都跑到了,只是页面不显示罢了。 如果更改控件成功的话就不是之前上面我说的多线程问题了,网页本人不是很了解,因专稿窗体太久网页基本忘记,很是抱歉!那现在就只是页面更改不成功的问题了,可以查下资料看看哪些情况下更改页面值会出现更改不了,然后慢慢尝试喽;有人力资源就更高,直接问,没有就自己对病下药!
控件绑定&定时刷新&修改数据源就可以了
不想用定时刷新的,要是定时刷新的话和直接绑定表中最新的一条记录,时时刷新一样了,我是想要数据库中插入数据就刷新的这种
我就是不明白为啥点button的时候页面能刷新显示值,用数据库方法调用它却不刷新页面呢。 Winform也是这样更改控件的值,而更改成功?
恩,winform能用,数据库插入数据就能显示,ASP中代码也都跑到了,只是页面不显示罢了。 如果更改控件成功的话就不是之前上面我说的多线程问题了,网页本人不是很了解,因专稿窗体太久网页基本忘记,很是抱歉!那现在就只是页面更改不成功的问题了,可以查下资料看看哪些情况下更改页面值会出现更改不了,然后慢慢尝试喽;有人力资源就更高,直接问,没有就自己对病下药!
人力资源说感冒了,不想帮忙,要么就是和妹子聊天比较重要。
人力资源说感冒了,不想帮忙,要么就是和妹子聊天比较重要。
那你就对症下药啊,要妹子的你就色诱
控件绑定&定时刷新&修改数据源就可以了
不想用定时刷新的,要是定时刷新的话和直接绑定表中最新的一条记录,时时刷新一样了,我是想要数据库中插入数据就刷新的这种
把定时改成&监控数据库插入之后取取最新数据&就可以了啊
控件绑定&定时刷新&修改数据源就可以了
不想用定时刷新的,要是定时刷新的话和直接绑定表中最新的一条记录,时时刷新一样了,我是想要数据库中插入数据就刷新的这种
把定时改成&监控数据库插入之后取取最新数据&就可以了啊
这个不会啊,定时的话写个setTimeout就OK了,你这监控插入的怎么写啊。说着挺简单了。
控件绑定&定时刷新&修改数据源就可以了
不想用定时刷新的,要是定时刷新的话和直接绑定表中最新的一条记录,时时刷新一样了,我是想要数据库中插入数据就刷新的这种
把定时改成&监控数据库插入之后取取最新数据&就可以了啊
这个不会啊,定时的话写个setTimeout就OK了,你这监控插入的怎么写啊。说着挺简单了。
监控比较烦的,还是要去和数据库连接&还是要定时去看&不如直接用定时刷新好了
控件绑定&定时刷新&修改数据源就可以了
不想用定时刷新的,要是定时刷新的话和直接绑定表中最新的一条记录,时时刷新一样了,我是想要数据库中插入数据就刷新的这种
把定时改成&监控数据库插入之后取取最新数据&就可以了啊
这个不会啊,定时的话写个setTimeout就OK了,你这监控插入的怎么写啊。说着挺简单了。
监控比较烦的,还是要去和数据库连接&还是要定时去看&不如直接用定时刷新好了
上司要求啊,我昨天给他个定时刷新的,他说这个不好,非得弄个数据库变就显示的。
控件绑定&定时刷新&修改数据源就可以了
不想用定时刷新的,要是定时刷新的话和直接绑定表中最新的一条记录,时时刷新一样了,我是想要数据库中插入数据就刷新的这种
把定时改成&监控数据库插入之后取取最新数据&就可以了啊
这个不会啊,定时的话写个setTimeout就OK了,你这监控插入的怎么写啊。说着挺简单了。
监控比较烦的,还是要去和数据库连接&还是要定时去看&不如直接用定时刷新好了
Triger&可以写成AfterInsert&然后去做某些事情&比如&AfterInsert之后你修改数据库的某个字段,然后定时去看这个字段是否表示有更新,如果有则查出来。你不觉得这样很烦么?要查的东西不多的话直接查好了
SQL看SQL完全手册第四版,.NET看C#&WEB应用程序入门经典,这些书都有电子书
SQL看SQL完全手册第四版,.NET看C#&WEB应用程序入门经典,这些书都有电子书 你这方法碉堡了,看见个问题你都可以叫他去看书了。
个人想法:用个线程监视数据库,如果发现数据库发生改变了,然后再刷新
综上所述,我觉得数据库的值是回写过去了,但是页面没有刷新,所以显示的还是原值,建议你绑定后刷下页面或者局部刷新试试。
个人想法:用个线程监视数据库,如果发现数据库发生改变了,然后再刷新
综上所述,我觉得数据库的值是回写过去了,但是页面没有刷新,所以显示的还是原值,建议你绑定后刷下页面或者局部刷新试试。
的确,恩了下F5页面就是想要的结果了,但是页面刷新写哪儿呢,我写在数据库触发事件里,我把百度搜索的几种页面刷新都试过了都是提示
响应在此上下文中不可用。
这个需要具体试试啦,没具体试过。我觉得你应该修改页面值后立即进行局部刷新,具体实现,实地测试下,局部刷新的实现应该不少。
那就用ajax局部刷新吧,当插入记录时,调用一下ajax去获取记录,插入记录功能最好么也是用ajax完成。
那就用ajax局部刷新吧,当插入记录时,调用一下ajax去获取记录,插入记录功能最好么也是用ajax完成。
插入记录功能怎么用ajax写啊。局部刷新是用setTimeout还是根据插入记录刷新啊,插入记录刷新不会写哦,求指导。
这个需要具体试试啦,没具体试过。我觉得你应该修改页面值后立即进行局部刷新,具体实现,实地测试下,局部刷新的实现应该不少。
局部刷新不会写啊,我百度的几种刷新页面的方法写到事件里面都行不通啊。提示
“响应在此上下文中不可用”。
那就用ajax局部刷新吧,当插入记录时,调用一下ajax去获取记录,插入记录功能最好么也是用ajax完成。
插入记录功能怎么用ajax写啊。局部刷新是用setTimeout还是根据插入记录刷新啊,插入记录刷新不会写哦,求指导。
局部刷新就是当用ajax函数请求一个ashx页面时,就将记录插入到数据库去,并返回一个正常状态同时接收状态并判断状态正确的话就再用一个ajax函数请求另一个ashx页面获取记录,然后接收结果并显示在页面上。
去看看jquery的例子你就会了。
去看看jquery的例子你就会了。
我要有这么多的时间还用得着发帖子么,我把所有分都捐了啊。
去看看jquery的例子你就会了。
之前做的都是C/S的,脚本啥的基本是得从头开始的节奏。
可以考虑用数据库缓存依赖SqlCacheDependency,具体可参考/zh-cn/library/ms178604(v=vs.100).aspx或者博客园/it563/articles/1434009.html
这么没难度的问题,只是求代码吗?
这么没难度的问题,只是求代码吗? 那求您给点代码。
这么简单还要来问,回去多看看DataTable
可以考虑用数据库缓存依赖SqlCacheDependency,具体可参考/zh-cn/library/ms178604(v=vs.100).aspx或者博客园/it563/articles/1434009.html
你这个和我的差不多,也是得摁F5刷新才能显示后添加的数据。
这么简单还要来问,回去多看看DataTable
不装B能死是么,放屁谁都会。
这么简单还要来问,回去多看看DataTable
页面刷新问题看DataTable,智商令人捉鸡啊
Web1.0没有服务器推送机制,就是说服务器端数据更新后,客户端如果不请求是不会更新数据的,除非客户端也有定时去服务器请求数据。定时请求,就是楼上有大神说的用ajax异步请求,这样在页面不刷新的情况下,请求到服务器端数据后更新客户端页面。
个人想法:用个线程监视数据库,如果发现数据库发生改变了,然后再刷新
我这有个控制台监听的,用这个写到winform里可用,写到ASP.NET中值是传过去了,但是页面不刷新显示。
值都过去了,那就是你显示的问题了 不知道为啥页面没有刷新啊,我在页面上加了个Button写了个Button_Click事件,用来提取最大ID那条数据,点击后能出来数据。但是我用数据库变化就调用这个button_click事件页面却不显示数据,用debug跑的是有值的。但是页面没有刷新啊,这该怎么改啊。
debug跑有值是正常的,但这也只是表示服务器端取到了这个值而已,并没有向客户端推送这个值。客户端需要向服务器请求该数据,然后才能正常显示!
不知道你明白我说的意思没有。。。
debug跑有值是正常的,但这也只是表示服务器端取到了这个值而已,并没有向客户端推送这个值。客户端需要向服务器请求该数据,然后才能正常显示!
不知道你明白我说的意思没有。。。
明白你的意思了,ajax异步请求不了解,先去看看去。
最简单的一个局部刷新的例子。网上搬的,不知道你试过没?依葫芦画瓢试试
&form&id=&form1&&runat=&server&&&
&asp:ScriptManager&ID=&ScriptManager1&&runat=&server&&
&/asp:ScriptManager&&
&asp:UpdatePanel&ID=&UpdatePanel1&&runat=&server&&&
&ContentTemplate&&
&asp:Timer&ID=&Timer1&&runat=&server&&Interval=&1000&&OnTick=&Timer1_Tick&&&&/asp:Timer&&
&asp:TextBox&ID=&TextBox1&&runat=&server&&&&/asp:TextBox&&
&/ContentTemplate&&&/asp:UpdatePanel&&&/form&&
=====在后台Timer1_Tick事件加上&
//&Interval=&1000&&是设置刷新的时间间隔&
TextBox1.Text=DateTime.Now&
最简单的一个局部刷新的例子。网上搬的,不知道你试过没?依葫芦画瓢试试
&form&id=&form1&&runat=&server&&&
&asp:ScriptManager&ID=&ScriptManager1&&runat=&server&&
&/asp:ScriptManager&&
&asp:UpdatePanel&ID=&UpdatePanel1&&runat=&server&&&
&ContentTemplate&&
&asp:Timer&ID=&Timer1&&runat=&server&&Interval=&1000&&OnTick=&Timer1_Tick&&&&/asp:Timer&&
&asp:TextBox&ID=&TextBox1&&runat=&server&&&&/asp:TextBox&&
&/ContentTemplate&&&/asp:UpdatePanel&&&/form&&
=====在后台Timer1_Tick事件加上&
//&Interval=&1000&&是设置刷新的时间间隔&
TextBox1.Text=DateTime.Now&
我是想按插入数据的时候刷新,而不是设定时间刷新。
可以考虑用数据库缓存依赖SqlCacheDependency,具体可参考/zh-cn/library/ms178604(v=vs.100).aspx或者博客园/it563/articles/1434009.html
你这个和我的差不多,也是得摁F5刷新才能显示后添加的数据。
你如果刷新都想省了,那建议你去研究一下server&push相关的技术
同样的问题,哥们解决了没?求代码,谢谢!!定时刷新的也可以。。。J2EE &&&&最新内容
J2EE &&&&随机内容1602人阅读
&最近的一个.net项目,我要实现图片以二进制形式存到数据库中,并从数据库中读出显示在页面上。以前没做过类似的东东。经过查阅大量的资料,将实现思想先下来供大家参考。
1首先是上传文件。用html中的控件既可实现上传照片的操作。
2将控件得到的客户端地址转化为可以读出二进制数据的地址。此步是关键,需要用到System.IO.getpath将路径上传照片得到的路径转化一下。然后利用filestream控件将转后的地址把照片读到服务器上。注意服务器需要设置一下写的权限。
3。利用filestream读出写入指定路径的照片,以二进制形式存到数据库中。
4。从数据库读数据时,需要先把二进制数据用response.binarywrite的方法读到一个指定的页b上。
5。把要显示图片的页面a上的image控件的imageurl地址指定为页面b的网络相对地址。注意i给mageurl赋值时最好在后台赋,不要写死在前台。
&HTML&&HEAD&&title&多文件上传&/title&&script&language=&JavaScript&&...&&&&function&addFile()&&&&...{&&&&&var&str&=&'&INPUT&type=&file&&size=&50&&NAME=&File&&'&&&&&document.getElementById('MyFile').insertAdjacentHTML(&beforeEnd&,str)&&&&}&/script&&/HEAD&&body&&form&id=&form1&&method=&post&&runat=&server&&enctype=&multipart/form-data&&&center&&asp:Label&Runat=&server&&ID=&MyTitle&&&/asp:Label&&P&id=&MyFile&&&INPUT&type=&file&&size=&50&&NAME=&File&&&/P&&P&&input&type=&button&&value=&增加(Add)&&onclick=&addFile()&&&asp:Button&Runat=&server&&Text=&上传&&ID=&Upload&&&/asp:Button&&input&onclick=&this.form.reset()&&type=&button&&value=&重置(ReSet)&&&/P&&/center&&P&align=&center&&&asp:Label&id=&strStatus&&runat=&server&&Font-Names=&宋体&&Font-Bold=&True&&Font-Size=&9pt&&Width=&513px&BorderStyle=&None&&BorderColor=&White&&&/asp:Label&&/P&&/form&&/body&&/HTML&
namespace&updownsFiles...{/**////&&summary&///&WebForm1&的摘要说明。///&&/summary&public&class&WebForm1&:&System.Web.UI.Page...{protected&System.Web.UI.WebControls.Label&MyTprotected&System.Web.UI.WebControls.Button&Uprotected&System.Web.UI.WebControls.Label&strSprivate&void&Page_Load(object&sender,&System.EventArgs&e)...{//&在此处放置用户代码以初始化页面MyTitle.Text&=&&&h3&多文件上传&/h3&&;Upload.Text&=&&开始上传&;&&&&&&&&&&&&if(this.IsPostBack)this.SaveFiles();}private&Boolean&SaveFiles()...{//得到File表单元素HttpFileCollection&files&=&HttpContext.Current.Request.FSystem.Text.StringBuilder&strMsg=new&System.Text.StringBuilder(&上传的文件分别是:&hr&color=red&&);try...{for(int&intCount=&<span style="COLOR: #;&intCount&&files.C&intCount++)...{&&&&HttpPostedFile&postedFile&=&files[intCount];string&fileName,&fileE//获得文件名字fileName&=&System.IO.Path.GetFileName(postedFile.FileName);if&(fileName&!=&&&)...{//获得文件名扩展fileExtension&=&System.IO.Path.GetExtension(fileName);strMsg.Append(&上传的文件类型:&&+&postedFile.ContentType.ToString()&+&&&br/&&);strMsg.Append(&客户端文件地址:&&+&postedFile.FileName&+&&&br/&&);strMsg.Append(&上传文件的文件名:&&+&fileName&+&&&br/&&);strMsg.Append(&上传文件的扩展名:&&+&fileExtension&+&&&br/&&hr&color=red&&);//可根据不同的扩展名字,保存文件到不同的文件夹//注意:可能要修改你的文件夹的匿名写入权限。postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath(&upFiles/&)&+&fileName);}}strStatus.Text&=&strMsg.ToString();return&true;}catch(System.Exception&Ex)...{strStatus.Text&=&Ex.Mreturn&false;}}Web&窗体设计器生成的代码#region&Web&窗体设计器生成的代码override&protected&void&OnInit(EventArgs&e)...{////&CODEGEN:&该调用是&ASP.NET&Web&窗体设计器所必需的。//InitializeComponent();base.OnInit(e);}/**////&&summary&///&设计器支持所需的方法&-&不要使用代码编辑器修改///&此方法的内容。///&&/summary&private&void&InitializeComponent()...{&&&&this.Load&+=&new&System.EventHandler(this.Page_Load);}#endregion}}
//上传if(myFile.ContentLength != 0){  try  {    System.Web.HttpPostedFile myFile = this.Request.Files[0];//        string tmpFileName = myFile.FileN//        string myFileName = tmpFileName.Substring(tmpFileName.LastIndexOf(&.&));//        string myFileMimeType = myFile.ContentType();//        myFile.SaveAs(this.Server.MapPath(&../& + myFileName));
    //读取到数组里面    System.IO.Stream mystream = myFile.InputS    byte[] Buffer = new byte[myFile.ContentLength];    mystream.Read(Buffer,0,myFile.ContentLength);
    //打开数据库    OracleConnection cn = new OracleConnection(ConfigurationSettings.AppSettings[&sysDSN&]);    cn.Open();
    //用参数方式写入数据库    OracleCommand myComm = cn.CreateCommand();    string sql = &insert into tmp(tmp_id,tmp_blob) values(tmp_seq.nextval,:tmp_blob)&;    mandText =    myComm.Parameters.Add(&:tmp_blob&,OracleType.Blob,Buffer.Length).Value = B    myComm.ExecuteNonQuery();  }  catch  {    //此处可加错误显示  }  finally  {            cn.Close();  }}
在页面中,放一个Image控件,在后台指定它的链接地址如下:----------------------------------------------------------------------//为方便,写一个固定ID号tmp_id=103this.Image1.ImageUrl = &showimg.aspx?tmp_id=103& ;
下面是显示图片的页面showimg.aspx后台代码,该页面不需要放任何东西.--------------------------------------------------------------------//创建数据库连接OracleConnection myConnection = new OracleConnection(ConfigurationSettings.AppSettings[&sysDSN&]);myConnection.Open();
//打开数据库OracleCommand myCommand = myConnection.CreateCommand();string sql = &select tmp_blob from tmp where tmp_id = 103&;mandText =OracleDataReader myRead = myCommand.ExecuteReader();
//开始读取myRead.Read();//这个方法更直接Byte[] Buffer = (Byte[])myRead[0];//OracleLob myLob = myRead.GetOracleLob(0);//长度是long,转为int32//int myLength = Convert.ToInt32(myLob.Length);  //Byte[] Buffer = new byte[myLength];      //myLob.Read(Buffer,0,myLength);
//输出this.Response.Clear();//输出mime类型,根据上传的文件取到的mimetype,是什么我忘记了,自己写上,不过不写也没有关系.this.Response.ContentType = &&;this.Response.BinaryWrite(Buffer);this.Response.End();
比较全面的上传和下载文章
下面给你一个上传图片及显示的例子(本例存入数据库,但也包含存在硬盘上,是注释掉的代码部分)
写入数据库
//上传if(myFile.ContentLength != 0){  try  {    System.Web.HttpPostedFile myFile = this.Request.Files[0];//        string tmpFileName = myFile.FileN//        string myFileName = tmpFileName.Substring(tmpFileName.LastIndexOf(&.&));//        string myFileMimeType = myFile.ContentType();//        myFile.SaveAs(this.Server.MapPath(&../& + myFileName));
    //读取到数组里面    System.IO.Stream mystream = myFile.InputS    byte[] Buffer = new byte[myFile.ContentLength];    mystream.Read(Buffer,0,myFile.ContentLength);
    //打开数据库    OracleConnection cn = new OracleConnection(ConfigurationSettings.AppSettings[&sysDSN&]);    cn.Open();
    //用参数方式写入数据库    OracleCommand myComm = cn.CreateCommand();    string sql = &insert into tmp(tmp_id,tmp_blob) values(tmp_seq.nextval,:tmp_blob)&;    mandText =    myComm.Parameters.Add(&:tmp_blob&,OracleType.Blob,Buffer.Length).Value = B    myComm.ExecuteNonQuery();  }  catch  {    //此处可加错误显示  }  finally  {            cn.Close();  }}
在页面中,放一个Image控件,在后台指定它的链接地址如下:----------------------------------------------------------------------//为方便,写一个固定ID号tmp_id=103this.Image1.ImageUrl = &showimg.aspx?tmp_id=103& ;
下面是显示图片的页面showimg.aspx后台代码,该页面不需要放任何东西.--------------------------------------------------------------------//创建数据库连接OracleConnection myConnection = new OracleConnection(ConfigurationSettings.AppSettings[&sysDSN&]);myConnection.Open();
//打开数据库OracleCommand myCommand = myConnection.CreateCommand();string sql = &select tmp_blob from tmp where tmp_id = 103&;mandText =OracleDataReader myRead = myCommand.ExecuteReader();
//开始读取myRead.Read();//这个方法更直接Byte[] Buffer = (Byte[])myRead[0];//OracleLob myLob = myRead.GetOracleLob(0);//长度是long,转为int32//int myLength = Convert.ToInt32(myLob.Length);  //Byte[] Buffer = new byte[myLength];      //myLob.Read(Buffer,0,myLength);
//输出this.Response.Clear();//输出mime类型,根据上传的文件取到的mimetype,是什么我忘记了,自己写上,不过不写也没有关系.this.Response.ContentType = &&;this.Response.BinaryWrite(Buffer);this.Response.End();
/// &summary&& /// 文件上传& /// &/summary&& /// &param name=&path&&路径&/param&& /// &returns&返回 TRUE FALSE&/returns&& private Boolean SaveFiles(string path)& {&& ///'遍历File表单元素&& HttpFileCollection files& = HttpContext.Current.Request.F&& try&& {&&& for(int iFile = 0; iFile & files.C iFile++)&&& {&&&& HttpPostedFile postedFile = files[iFile];&&&& string fileE&&&& string fileName = System.IO.Path.GetFileName(postedFile.FileName);&&&& if (fileName != &&)&&&& {&&&&& fileExtension = System.IO.Path.GetExtension(fileName);&&&&& if(File.Exists(path+&))&&&&& {&&&&&& postedFile.SaveAs(path+&//(新)&+ fileName);&&&&& }&&&&& else&&&&& {&&&&&& postedFile.SaveAs(path+&//&+ fileName);&&&&& }&&&& }&&& }&&&&& }&& catch&& {&&&&& }& }
System.Web.HttpPostedFile myFile = this.Request.Files[0];string tmpFileName = myFile.FileNstring myFileName = tmpFileName.Substring(tmpFileName.LastIndexOf(&.&));string myFileMimeType = myFile.ContentType();myFile.SaveAs(this.Server.MapPath(&../& + myFileName));
内容: 上传到数据库中SQL Server提供了一个特别的数据类型:image,它是一个包含binary数据的类型。下边这个例子就向你展示了如何将文本或照片上传到数据库中的办法。在这篇文章中我们要看到如何在SQL Server中存储和读取图片。
  1、建立一个表:
  在SQL SERVER中建立这样结构的一个表:
列名&&&&& 类型&&&&&&&& 目的& ID&&&&&&& Integer&&&&& 主键ID& IMGTITLE& Varchar(50)& 图片的标题& IMGTYPE&& Varchar(50)& 图片类型. ASP.NET要以辨认的类型 IMGDATA Image 用于存储二进制数据&
  2、存储图片到SQL SERVER数据库中
  为了能存储到表中,你首先要上传它们到你的WEB 服务器上,你可以开发一个web form,它用来将客户端中TextBox web control中的图片入到你的WEB服务器上来。将你的 encType 属性设置为:myltipart/formdata.
Stream imgdatastream = File1.PostedFile.InputSint imgdatalen = File1.PostedFile.ContentLstring imgtype = File1.PostedFile.ContentTstring imgtitle = TextBox1.Tbyte[] imgdata = new byte[imgdatalen];int n = imgdatastream.Read(imgdata,0,imgdatalen);string connstr=((NameValueCollection)Context.GetConfig(&appSettings&))[&connstr&];
SqlConnection connection = new SqlConnection(connstr);
SqlCommand command = new SqlCommand         (&INSERT INTO ImageStore(imgtitle,imgtype,imgdata)         VALUES ( @imgtitle, @imgtype,@imgdata )&, connection );
SqlParameter paramTitle = new SqlParameter         (&@imgtitle&, SqlDbType.VarChar,50 );
paramTitle.Value =command.Parameters.Add( paramTitle);
SqlParameter paramData = new SqlParameter( &@imgdata&, SqlDbType.Image );paramData.Value =command.Parameters.Add( paramData );
SqlParameter paramType = new SqlParameter( &@imgtype&, SqlDbType.VarChar,50 );paramType.Value =command.Parameters.Add( paramType );
connection.Open();int numRowsAffected = command.ExecuteNonQuery();connection.Close();
  3、从数据库中恢复读取
  现在让我们来从SQL Server中读取我们放入的数据吧!我们将要输出图片到你的浏览器上,你也可以将它存放到你要的位置。
private void Page_Load(object sender, System.EventArgs e){ string imgid =Request.QueryString[&imgid&]; string connstr=((NameValueCollection) Context.GetConfig(&appSettings&))[&connstr&]; string sql=&SELECT imgdata, imgtype FROM ImageStore WHERE id = & + SqlConnection connection = new SqlConnection(connstr); SqlCommand command = new SqlCommand(sql, connection); connection.Open(); SqlDataReader dr = command.ExecuteReader(); if(dr.Read()) {  Response.ContentType = dr[&imgtype&].ToString();  Response.BinaryWrite( (byte[]) dr[&imgdata&] ); } connection.Close();}
  要注意的是Response.BinaryWrite 而不是Response.Write.
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:3788次
排名:千里之外

我要回帖

更多关于 bugtags 上架被拒 的文章

 

随机推荐