关闭顶部展开顶部

JSP初级教程之跟我学JSP(七)_JSP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:JSP初级教程之跟我学JSP(六)
第六章 jsp 实现画柱状统计图 这一节的内容是用jsp生成一个统计——统计一年内每个月完成的报修任务量。 Java里和画图有关的是java.awt包,由于我构想的图只是由矩形组成,那么用到的方法也就这么几个:fillRect,drawRect,setColor,setFont,drawString。

第七章 “备注型”超长文本的操作——Clob类型数据的存取

存放oracle留言板的正文内容,用VARCHAR2()是不行的,VARCHAR2()(可变长度的字符串)只能存4000字节,也就是2000个汉字,这也太少了啊,查一下数据库类型的资料,发现有这么几个类型:
LONG,2G(要是我没记错的话,它是为了向前兼容,不推荐使用);
CLOB,4G,字符;
BLOB,4G,二进制。
看来超长文本应该使用CLOB了,图片自然是用BLOB了,询问了一下别人,知道这两种类型是不能像VARCHAR2()那样直接存的,只好作罢,先用VARCHAR2()顶一阵。
后来我终于有空了,决心要完成这个任务,在网上查了一番资料,看了别人的例子,总算是无师自通看明白了:存的时候需要使用empty_clob()(这个不是Java的函数)先存一个空的标识(用我的理解就是先初始化一下),然后通过“流”将数据写入。下面是代码,其中try里面的是CLOB类型的存操作:
-----------------------------------save_new.jsp------------------------------------------
<%@ include file="include.inc"%>
<%@ page contentType="text/html;charset=gb2312" errorPage="request_error.htm"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
<%
String title = request.getParameter("title");
String kind=request.getParameter("kind");
String newtitle=title.replaceAll("’","’’");//用replaceAll()将text字串中所有的单引号改成连续两个单引号

String text = request.getParameter("text");
//String text1=text.replaceAll("’","’’");存clob时不需将单引号改成连续两个单引号
String text2=text.replaceAll("<","<");//用replaceAll()将字串中所有的<改成<
String newtext=text2.replaceAll(">",">");//用replaceAll()将字串中所有的>改成>
//replace只能处理单个字符!!
//改’是为了不影响数据库的查询语句
//改<>是防止网页把他们生成标签,比如:<table>,<form>等
String author=session.getAttribute("name").toString();
out.println(author);
long ID=System.currentTimeMillis();//取得一个时间,从1970-1-1 0:00:00开始到当前时间的毫秒数,用这个数作为该文章的ID标识
java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //格式化日期
java.util.Date currentTime_1 = new java.util.Date();//得到当前系统时间
String strdate = formatter.format(currentTime_1); //将日期时间转换成字符串形式

Connection con = null;
PreparedStatement stmt = null;//不能用Statement,我也不知道为什么,查了API,说这个PreparedStatement可以用于
//高效的多次执行语句,没查到Statement这个类
ResultSet rs = null;
try
{
Class.forName(CLASSFORNAME);//载入驱动程式类别
con=DriverManager.getConnection(SERVANDDB);//建立数据库连接
con.setAutoCommit(false);//设置不自动提交
String sql="insert into article(id,author,title,time,kind,text_clob) values (’"+ID+"’,’"+author+"’,’"+newtitle+"’,’"+strdate+"’,’"+kind+"’,empty_clob())";//我的数据库中存文本的CLOB型字段名为:text_clob
stmt=con.prepareStatement(sql);//添加一条clob字段为空的记录,
stmt.executeUpdate();//执行
stmt=null;//下次使用前清空
sql="select text_clob from article where id=’"+ID+"’ for update";//正是由于这条语句,id这个标识就必须得唯一!!!!
//如果数据库中已有一条记录的id与当前的id值相同,那么会查到那条记录,也就无法向新插入的记录中的clob字段进行写入!
stmt=con.prepareStatement(sql);//查找刚刚添加的那条记录
rs=stmt.executeQuery();

分享:JSP初级教程之跟我学JSP(五)
第五章 jsp 分页功能的实现 经过上面的学习我渐渐熟悉了对 数据库 的操作,留言板的功能也不断的完善,随着留言的增加信息的目录越来越长了,现在需要实现一个分页功能了,我尝试自己解决这个问题。 1、我应该把它的关键部分封装成一个bean,使它尽可能的能

共2页上一页12下一页
来源:模板无忧//所属分类:JSP教程/更新时间:2010-03-10
loading.. 评论加载中....
相关JSP教程
闂佹眹鍩勯崹閬嶆偤閺囶澁缍栭柛鈩冪⊕閳锋帗銇勯弴妤€浜惧銈忕秶閹凤拷
濠电偛顕慨顓㈠磻閹炬枼妲堥柡鍌濇硶婢ф稒淇婇懠顒夆偓婵嬫煟閵忊晛鐏查柟鍑ゆ嫹
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径瀣閻庣懓瀚竟鍡欐崲娑斾線鏌i姀鈺佺伈闁瑰嚖鎷�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径濠勵吋闂佽鍨庨崟顓фК闂佽閰eḿ褍螞濞戙垺鍋夐柨鐕傛嫹
闂備胶枪缁绘劙骞婃惔銊ョ劦妞ゆ帒鍊哥敮鍫曞箹鐎涙ḿ鐭掔€规洘绻堥弫鎾绘晸閿燂拷
闂備胶枪缁绘劙骞婃惔銊ョ劦妞ゆ巻鍋撻柛姘儑缁﹪鏁傞崜褏鐓撻柣搴岛閺呮繈鎯屽▎鎴犵=濞撴艾锕ョ€氾拷
闂備浇銆€閸嬫挻銇勯弽銊р槈闁伙富鍣i弻娑樷攽閹邦亞鑳虹紓浣靛妽濡炶棄顕i妸鈺婃晬婵炲棙鍨电粭锟犳⒑閸濆嫬鈧骞婇幘鑸殿潟闁跨噦鎷�
闂備礁鎼崯鐗堟叏妞嬪海绀婂鑸靛姈閻擄綁鎮规潪鎷岊劅婵炲眰鍊曢湁闁挎繂妫欑粈鈧梺鍛娚戦悧鐘茬暦閹扮増鏅搁柨鐕傛嫹
婵犵妲呴崹顏堝礈濠靛棭鐔嗘俊顖氬悑鐎氱粯銇勯幘瀵哥畺閻庢熬鎷�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓奸崶銊ヮ伕濡炪倖鎸荤换鍐偓姘虫珪娣囧﹪顢涘Δ鈧晶鍙夌節椤喗瀚�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎规洦鍓熼、娆撳礂閻撳簶鍋撻悽鍛婄厸闁割偅绻勫瓭婵犳鍣幏锟�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾闁哄苯鎳橀崺鈧い鎺嗗亾闁宠閰i獮鎴﹀箛闂堟稒顔嗛梻浣告惈鐎氭悂骞忛敓锟�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎规洩缍侀獮瀣攽閸偂绱�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径濠勭厬闂佺懓鐡ㄧ换鍕敂鐎涙ü绻嗘い鏍殔婢у弶绻濋~顔藉
闂佽楠搁崢婊堝礈濠靛鍋嬮柟鎯版閻鈹戦悩鎻掓殭闁奸潧缍婇弻銈夋嚍閵夈儱顫嶉梺缁樼壄缂嶄礁鐣峰▎鎾存櫢闁跨噦鎷�
UB闂備礁婀辩划顖炲礉濡ゅ懐宓侀柛銉㈡櫆鐎氭岸鎮楀☉娅虫垿锝為敓锟�
闂備浇澹堟ご绋款潖婵犳碍鐒鹃悗鐢电《閸嬫捇鐛崹顔句痪濠电姭鍋撻柨鐕傛嫹
闂佽楠哥粻宥夊垂閸濆嫸鑰块柛銏㈠殰
闂備礁鎲″缁樻叏妞嬪海绀婂璺虹灱閸楁碍绻涢崱妤€顒㈤柛鐐差槹缁绘稓绱欓悩鍝勫帯闂佺ǹ楠忛幏锟�
缂傚倸鍊烽悞锕傛偡閿曞倸鍨傛繝濠傚椤╅攱銇勯幒宥囶槮缂佹彃婀遍埀顒傚仯閸婃繄绱撳棰濇晩闁跨噦鎷�
©2017 www.mb5u.com婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎殿噮鍣i幃鈺呭箵閹烘挸鐦�
闂備浇銆€閸嬫捇鏌熼婊冾暭妞ゃ儻鎷�&闂備礁鎲$敮鎺懳涢弮鍫燁棅闁跨噦鎷�