
可能有缓存,还有你的实现不好
1缓存的处理方法 可以通过过滤器,或者有response的地方(如:jsp页面)
responsesetHeader("Cache-Control", "no-cache");
responsesetHeader("Cache-Control", "no-store");
responsesetHeader("Pragma", "no-cache");
responsesetDateHeader("Expires", 0L);
2技术实现
一般情况下,都不太用responsesendRedirect("")
用这个得比较多requestgetRequestDispatcher("")forward(request,response);
具体 forward 和 redirect的区别,你可以网上查查,相信你面试前准备的时候都背过
3业务实现
你这里用了一个技巧, 获得刚刚过来的页面的路径requestgetHeader("Referer"),这样动态性确实不错
不过一般的处理方式是,:
列表 -> 删除 -> 列表 selectdo -> deletedo -> selectdo
列表->编辑->删除->列表 selectdo -> viewdo->deletedo->selectdo
这个你应该能明白
前面的没什么,就是你在删除后,再跳转到查询页面(是通过后台,不是直接jsp跳转),再查询一遍,这样就不会出现脏数据了(如果出现,可能是别的原因)
你试试
点击删除按钮时调用js,将该条记录的ID作为传入参数,js中调用表单提交。
例如表单为。
<form id="del"><input type="hidden" id="orderId" name="orderId"></form>
js中的 *** 作为。
documentgetElementById("orderId")value=1;//1为你传入的预约单号的ID
documentgetElementById("del")submit();
后台的 *** 作为。
String deleteId=(String)requestgetParameter("orderId");
//然后是调用sql语句,根据deleteId去删除该记录。
用到
using SystemDataSqlClient;//命名空间
SQL 查询
string connection_str=@"Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ChatRoom;Data Source=\sqlexpress";
string select_str="select 字段 from 表名 [where 字段=值]";//"[之间的内容]"是可选的
SqlConnection con=new SqlConnection(connection_str);//一,创建数据库连接对象
SqlCommand com=new SqlCommand(select_str,con);//二,创建数据 *** 作对象
conOpen();//现在用的是连接 *** 作方法,所以要先打开这个数据连接对象的连接
DataReader _dataReader = comExcuteReader();
while(_dataReaderNext())//遍历
{
string temp += dataReader["字段"]ToString()+"\r\n";
}
conClose();//关闭数据库连接对象
MessageBoxShow(temp);
以上这种方法是称为连接式 *** 作。
以下这种方法是称为非连接式 *** 作。
using SystemDataSqlClient;//因为要用到SQL对象
using SystemData;//要用到数据集对象,如以下将要用到:DataSet对象
string connection_str=@"Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ChatRoom;Data Source=\sqlexpress";
string select_str="select 字段 from 表名 [where 字段=值]";//"[之间的内容]"是可选的
SqlConnection con=new SqlConnection(connection_str);//一,创建数据库连接对象
SqlDataAdapter DataAdapter=new SqlDataAdapter(select_str,con);//二,创建数据 *** 作对象
DataSet ds=new DataSet();
DataAdapterFill(ds);//DataAdapterFill(填充对象)//函数是将除处理的select_str语句得来结果填充到指定的填充对象
string temp="";
foreact(DataRow dr in dsTable[0]Rows)//遍历
{
temp+=dr["字段"]ToString();
}
MessageBoxShow(temp);
至少楼主说的要增删改查。
就是修改select_str字符串就行了。
select(查询):"Select 字段 from 表名 [where 条件]";
update(更新):"Update 列名 set 字段=值 [where 条件]";
insert(插入):"Insert [into] 表名 Values(字段[,字段,,]) [where 条件]";
delete(删除):"delect from 表名 [where 条件]";
当然,除了select(查询)是有返回数据,其它update(更新),insert(插入),delete(删除)都只是返回 *** 作状态值。
我也遇到过这个问题。产生这个问题的原因是查询结果可能是0,但编程中没有考虑到这个问题。另一种可能是$result=mysql_query($str)。此公式返回的$result不能在mysql_num_row中使用。至于原因,和节目有关。
我认为更好的解决方案是建立一个数组来存储所有的查询结果,然后关闭数据库。如有必要,调用数组而不是查询数据库。
仅供参考!
清除木马和病毒的具体 *** 作步骤如下: 1)清除网页中的木马 删除现有的网页中的木马,主要有这样类似的代码: <iframe…或者 …xxxjs></script> 出现上面这些特征的代码,如果里面包含的网址不是自己网站的,那基本上就是中了木马了。我们比较常见的木马是<iframe,对网站首页以及其它主要页面的源代码进行检查,用记事本打开这些页面后,以“<iframe”为关键字进行搜索,找到后可以查看是否是挂马代码。不过碰上有经验的黑客,会编写一段代码将整句挂马代码进行加密,这样我们就很难找到网页中的挂马代码。这时可以将所有网页文件按修改时间进行排序,如果有个别网页被修改,我们可以很快地发现。 2)刺激google快速更新 木马被清除了,google上还是被屏蔽着。这时就想办法让google爬虫重新检索网站,更新检索结果。这样,网站的屏蔽才能被解除。刺激google更新的的手段有如下一些: 1)持续更新网站首页的文章; 2)重新给google提交网站地图; 3)为网站去找一些高质量的外链; 4)申请审核。当网站有病毒后,在google网站管理员工具内的“诊断”页面会有一个提示,就是说网站含有恶意代码,然后会提示你可以“申请审核”填写相关信息提交。 上面的一些手段可以让刺激google爬虫能”快速抵达现场”,快速更新网站的检索结果。 由于ASP它本身是服务器提供的一种服务功能,特别是最近由dvbbs的upfile文件出现漏洞以来,其高度的隐蔽性和难查杀性,对网站的安全造成了严重的威胁。因此针对ASP木马的防范和清除,为网管人员提出了更高的技术要求 几个大的程序全部被发现存在上传漏洞,小程序更是不计其数,让asp木马一下占据了主流,得到广泛的使用,想必如果你是做服务器的话,一定为此头疼不止吧,特别是虚拟主机的用户都遇到过网页被篡改、数据被删除的经历,事后除了对这种行径深恶痛绝外,许多客户又苦于没有行之有效的防范措施。鉴于大部分网站入侵都是利用asp木马完成的,特写此文章以使普通虚拟主机用户能更好地了解、防范asp木马。也只有空间商和虚拟主机用户共同做好防范措施才可以有效防范asp木马! 我们首先来说一下怎么样防范好了,说到防范我们自然要对asp木马的原理了,大道理我也不讲了,网上的文章有的是,简单的说asp木马其实就是用asp编写的网站程序,甚至有些asp木马就是由asp网站管理程序修改而来的。就比如说我们常见的asp站长助手,等等 它和其他asp程序没有本质区别,只要是能运行asp的空间就能运行它,这种性质使得asp木马非常不易被发觉。它和其他asp程序的区别只在于asp木马是入侵者上传到目标空间,并帮助入侵者控制目标空间的asp程序。严重的从而获取服务器管理员的权限,要想禁止asp木马运行就等于禁止 asp的运行,显然这是行不通的,这也是为什么asp木马猖獗的原因!有人要问了,是不是就没有办法了呢,不,有办法的: 第一:从源头入手,入侵者是怎么样上传asp木马的呢?一般哟几种方法,通过sql注射手段,获取管理员权限,通过备份数据库的功能将asp木马写入服务器。或者进入后台通过asp程序的上传功能的漏洞,上传木马等等,当然正常情况下,这些可以上传文件的asp程序都是有权限限制的,大多也限制了asp文件的上传。(比如:可以上传的新闻发布、管理程序,及可以上传更多类型文件的论坛程序等),如果我们直接上传asp木马的话,我们会发现,程序会有提示,是不能直接上传的,但由于存在人为的asp设置错误及asp程序本身的漏洞,给了入侵者可乘之机,实现上传asp木马。 因此,防范asp木马的重点就在于虚拟主机用户如何确保自己空间中asp上传程序的安全上,如果你是用别人的程序的话,尽量用出名一点的大型一点的程序,这样漏洞自然就少一些,而且尽量使用最新的版本,并且要经常去官方网站查看新版本或者是最新补丁,还有就是那些数据库默认路径呀,管理员密码默认呀,一定要改,形成习惯保证程序的安全性。 那么如果你是程序员的话,我还想说的一点就是我们在网站程序上也应该尽量从安全的角度上编写涉及用户名与口令的程序最好封装在服务器端,尽量少的在ASP文件里出现,涉及到与数据库连接地用户名与口令应给予最小的权限; 需要经过验证的ASP页面,可跟踪上一个页面的文件名,只有从上一页面转进来的会话才能读取这个页面。防止ASP主页inc文件泄露问题; 防止UE等编辑器生成someaspbak文件泄露问题等等特别是上传功能一定要特别注意 上面的只是对客户的一些要求,但是空间商由于无法预见虚拟主机用户会在自己站点中上传什么样的程序,以及每个程序是否存在漏洞,因此无法防止入侵者利用站点中客户程序本身漏洞上传asp木马的行为。空间商只能防止入侵者利用已被入侵的站点再次入侵同一服务器上其他站点的行为。这也更加说明要防范 asp木马,虚拟主机用户就要对自己的程序严格把关! 为此我总结了ASP木马防范的十大原则供大家参考: 1、建议用户通过ftp来上传、维护网页,尽量不安装asp的上传程序。 2、对asp上传程序的调用一定要进行身份认证,并只允许信任的人使用上传程序。 这其中包括各种新闻发布、商城及论坛程序,只要可以上传文件的asp都要进行身份认证! 3、asp程序管理员的用户名和密码要有一定复杂性,不能过于简单,还要注意定期更换。 4、到正规网站下载asp程序,下载后要对其数据库名称和存放路径进行修改,数据库文件名称也要有一定复杂性。 5、要尽量保持程序是最新版本。 6、不要在网页上加注后台管理程序登陆页面的链接。 7、为防止程序有未知漏洞,可以在维护后删除后台管理程序的登陆页面,下次维护时再通过ftp上传即可。 8、要时常备份数据库等重要文件。 9、日常要多维护,并注意空间中是否有来历不明的asp文件。记住:一分汗水,换一分安全! 10、一旦发现被入侵,除非自己能识别出所有木马文件,否则要删除所有文件。 重新上传文件前,所有asp程序用户名和密码都要重置,并要重新修改程序数据库名称和存放路径以及后台管理程序的路径。 做好以上防范措施,您的网站只能说是相对安全了,决不能因此疏忽大意,因为入侵与反入侵是一场永恒的战争
,tronclick=function(){thisremoveNode(true);}这样就可以实现删除了,如果要把数据提交的数据库,则通过的thiscells[i]指向你需要的应用,移动也简单,用swapNode()方法
var str1 = {"name": "apple", "sex": "21"}; // 参数:prop = 属性,val = 值function createJson(prop, val) { // 如果 val 被忽略 if(typeof val === "undefined") { // 删除属性 delete str1[prop]; } else { // 添加 或 修改 str1[prop] = val; }}
以上就是关于js页面通过servlet 删除一条数据之后,返回到原jsp页面,仍显示删除数据,该怎样处理全部的内容,包括:js页面通过servlet 删除一条数据之后,返回到原jsp页面,仍显示删除数据,该怎样处理、jsp页面form表单如何实现删除其中一行(连接数据库)表单是遍历输入的、angularJS结合C#怎么对sqlserver数据库中的数据进行增删改查等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)