jsp怎样将数据库数据打印在表格里

jsp怎样将数据库数据打印在表格里,第1张

由servlet将数据封装到对象并通过转发发送到要显示数据的页面

然后

<%@ taglib uri=">

给你个例子

要在vs2005中实现最基本的打印文本基本上需要以下几个步骤

1 新建项目(窗体)

2 在窗体上添加printDocument 控件 添加 Button textBox 控件

3 在 printDocument 控间的 PrintPage 事件中添加代码

eGraphicsDrawString(textBox1Text,

new Font("Arial", 20, FontStyleBold), BrushesBlack, 150, 125);

// textBox1Text 是打印的文本内容 Arial 指定打印字体 20 指定打印字体大小 150, 125 指定在页面中的打

印 位置

4 为 button 控件添加 Click 事件 在事件中添加以下代码

PrintDialog printDialog1 = new PrintDialog(); // 声明定义 打印对话框

printDialog1Document = printDocument1;

DialogResult result = printDialog1ShowDialog();

if (result == DialogResultOK)

{

printDocument1Print();

}

5 为printDocument 控件 添加 EndPrint 事件比如 在打印技术后 有一提示语

6 在msdn中有“页边距和纸张方向的设置要用到 PageSetupDialog 类“的说明 个人认为设置并不是很方便

由于前面已经创建了 printDilog的实例 printDilog1,因此可以通过改变对话框的某些默认设置来改变打印方

式,例如:下面的例子设定了默认打印方向为横向

printDialog1DocumentDefaultPageSettingsLandscape = true;

还有一些分析的就不贴了,差不多就这个原理

   应该是连接数据库吧,这是连接数据库的步骤:  

在开发环境中加载指定数据库的驱动程序。

接下来的实验中,使用数据库MySQL,所以需要下载MySQL支持JDBC的驱动程序(mysql-connector-java-5118-binjar)。

2 开发环境是MyEclipse,将下载得到的驱动程序加载进开发环境中。

3 在Java程序中加载驱动程序。

在Java程序中,通过 “ClassforName(“指定数据库的驱动程序”)”

方式来加载添加到开发环境中的驱动程序,例如ClassforName(“commysqljdbcDriver”)。

4 创建数据连接对象:通过DriverManager类创建数据库连接对象Connection。

DriverManager类作用于Java程序和JDBC驱动程序之间,用于检查所加载的驱动程序是否可以建立连接,然后通过它的getConnection方法,根据数据库的URL、用户名和密码,创建一个JDBC

Connection 对象。代码如:Connection connection =  DriverManagergetConnection(“连接数据库的URL", "用户名",

"密码”)。

其中,URL=协议名+IP地址(域名)+端口+数据库名称;用户名和密码是指登录数据库时所使用的用户名和密码。具体示例创建MySQL的数据库连接代码如下:

Connection connectMySQL  =

DriverManagergeiConnection(“jdbc:mysql://localhost:3306/myuser","root"

,"root" );

5 创建Statement对象:Statement 类的主要是用于执行静态 SQL

语句并返回它所生成结果的对象。

通过Connection 对象的 createStatement()方法可以创建一个Statement对象。例如:Statement statament =

connectioncreateStatement(); 具体示例创建Statement对象代码如下:Statement statamentMySQL =connectMySQLcreateStatement();

6 调用Statement对象的相关方法执行相对应的 SQL

语句:通过execuUpdate()方法用来数据的更新,包括插入和删除等 *** 作,例如向staff表中插入一条数据的代码:

statementexcuteUpdate( "INSERT INTO

staff(name, age, sex,address, depart, worklen,wage)" + " VALUES ('Tom1', 321,

'M', 'china','Personnel','3','3000' ) ") ;

7 通过调用Statement对象的executeQuery()方法进行数据的查询,而查询结果会得到

ResulSet对象,ResulSet表示执行查询数据库后返回的数据的集合,ResulSet对象具有可以指向当前数据行的指针。通过该对象的next()方法,使得指针指向下一行,然后将数据以列号或者字段名取出。如果当next()方法返回null,则表示下一行中没有数据存在。使用示例代码如下:

ResultSet resultSel =

statementexecuteQuery( "select from staff" );

8 关闭数据库连接:使用完数据库或者不需要访问数据库时,通过Connection的close() 方法及时关闭数据连接。

出现这种情况应该是打印时电脑excel中该文档有记忆的设置了打印区域,而粘贴的区域超出了设置的打印区域。

解决方法:

1、打印——打印预览——页面设置,在界面中选择横向或者对表格进行调整,点击确定。

2、点“文件”——“设置打印区域”——“取消打印区域”

标签打印数据库的方法:

1、在条码打印软件数据库设置中添加一个Excel数据源。

2、添加Excel数据源后,会d出一个“Excel数据源管理”窗口,然后点“浏览”按钮添加Excel文件,“编码”一般选默认的不需要修改,“首行含列名”可以根据自己Excel表判定是否勾选,若Excel表首行是列名称就勾选,如首行是数据不需要勾选。然后点“测试连接”。

3、测试连接后可以看到Excel表的相关信息,选择需要连接的“表”,“字段”默认是全选(浅蓝色是选中状态),若是此时直接点“添加”按钮,说明条码打印软件连接Excel表中的所有列数据。那么在添加对象的时候(文字,条码二维码,等等),数据库导入对应的“字段”即可。

4、若是自己手动点了一下“Excel数据源管理”窗口中的字段,就出现全选取消的情况,导致只选中了点的字段,那么添加后,会只有这一列数据,Excel表中其他列数据无法调用。若是不想全部导入,只想只导入某些字段(如导入设备名称和设备编号这两个字段),可以利用键盘上的“Ctrl”键进行部分选中, *** 作方法:按着Ctrl键,鼠标点击对应的字段。那么导入的时候就会只有选中的这两个字段。

5、若是不想全部导入,只想只导入某些字段(如导入设备名称和设备编号这两个字段),可以利用键盘上的“Ctrl”键进行部分选中, *** 作方法:按着Ctrl键,鼠标点击对应的字段。那么导入的时候就会只有选中的这两个字段。

6、“数据过滤”是对Excel表中的数据进行过滤后再导入,“所有”是全部导入,“范围”是只导入所选的范围数据(如设置1-3是只导入前三个数据,2-3就是导入第二个和第三个数据)。

直接用sql处理就行了

if exists (select from dbosysobjects where id = object_id(N'[dbo][p_exporttb]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)

drop procedure [dbo][p_exporttb]

GO

create proc p_exporttb

@sqlstr varchar(8000), --查询语句,如果查询语句中使用了order by ,请加上top 100 percent

@path nvarchar(1000), --文件存放目录

@fname nvarchar(250), --文件名

@sheetname varchar(250)='' --要创建的工作表名,默认为文件名

as

declare @err int,@src nvarchar(255),@desc nvarchar(255),@out int

declare @obj int,@constr nvarchar(1000),@sql varchar(8000),@fdlist varchar(8000)

--参数检测

if isnull(@fname,'')='' set @fname='tempxls'

if isnull(@sheetname,'')='' set @sheetname=replace(@fname,'','#')

--检查文件是否已经存在

if right(@path,1)<>'\' set @path=@path+'\'

create table #tb(a bit,b bit,c bit)

set @sql=@path+@fname

insert into #tb exec masterxp_fileexist @sql

--数据库创建语句

set @sql=@path+@fname

if exists(select 1 from #tb where a=1)

set @constr='DRIVER={Microsoft Excel Driver (xls)};DSN='''';READONLY=FALSE'

+';CREATE_DB="'+@sql+'";DBQ='+@sql

else

set @constr='Provider=MicrosoftJetOLEDB40;Extended Properties="Excel 80;HDR=YES'

+';DATABASE='+@sql+'"'

--连接数据库

exec @err=sp_oacreate 'adodbconnection',@obj out

if @err<>0 goto lberr

exec @err=sp_oamethod @obj,'open',null,@constr

if @err<>0 goto lberr

--创建表的SQL

declare @tbname sysname

set @tbname='##tmp_'+convert(varchar(38),newid())

set @sql='select into ['+@tbname+'] from('+@sqlstr+') a'

exec(@sql)

如果想直接打印,只能写代码,一条一条输出到printer(打印机)上,还要排版,设置字体,字号,边距。等等,比较麻烦,看具体的数据,要慢慢测试。

输出到打印机的代码是:

printerprint "数据"

以上就是关于jsp怎样将数据库数据打印在表格里全部的内容,包括:jsp怎样将数据库数据打印在表格里、有一个excel数据库,要用打印机把数据库的信息打印到纸张上,且纸张有表格,我怎么把相应的数据打上去、c# 打印数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9518998.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存