项目中要用到的小实例


动态加事件
$("#roll").delegate("dd","hover",function(e){
var e=e||window.event;
if(e.type=="mouseenter"){
$(this).find(".sus_tit").stop(true,true).slideDown(200);
}else
if(e.type=="mouseleave"){
$(this).find(".sus_tit").stop(true,true).slideUp(200);
}
});

下拉框 只读后不能操作
onfocus="this.defaultIndex=this.selectedIndex;" onchange="this.selectedIndex=this.defaultIndex;"
<select class="form-control input-sm" name="storeId" id="storeId_${status.index }" shelfId="${item.storeShelfId }" readonly="readonly" onfocus="this.defaultIndex=this.selectedIndex;" onchange="this.selectedIndex=this.defaultIndex;">
<option value="">请选择...</option>
<c:forEach var="ss" items="${store}">
<option value="${ss.id}" ${item.storeId == ss.id ? 'selected' : '' }>${ss.name}</option>
</c:forEach>
</select>


<a href="http://heisetoufa.iteye.com" onclick="return confirm('确定将此记录删除?')">删除</a>

//return 返回值为真时执行跳转

<a href="#" onclick="alert('确定将此记录删除?')">刷新</a>

// 不加return执行跳转
----------------------------------------------------------------------------------------------------------
怎么用js去掉超链接的下划线?
//当鼠标指向链接的时候下划线消失,因为加上了一个事件event.如果去去掉event事件,当页面加载的时候消失。

<a href="abc.htm" id=a1>链接</a>

<script for=a1 event="onmouseover">
a1.style.textDecoration='none'; //none下划线消失.underline有下划线
</script>

-----------------------------------------------------------------------------------------------------------
//event.srcElement 当前发生事件的对象

function showAlert(){

var obj = event.srcElement;

alert(obj.innerText);

}

<a href="#" onclick="showAlert()">中华我的家</a>
------------------------------------------------------------------------------------------------------------
setTimeout和setInterval的区别
setTimeout()只调用一种。。。
setInterval()会连续调用。。。。
------------------------------------------------------------------------------------------------------------
<A HREF="qq.jsp" onclick="javascript:location.replace(this.href);

event.returnValue=false; ">

禁止后退到本页面的链接</A> 当用户点击超链接时会把当前的地址替换为href
--------------------------------------------------------------------------------------------------------
<html>
<head>
<meta http-equiv="Expires" CONTENT="0">
<meta http-equiv="Cache-Control" CONTENT="no-cache">
<meta http-equiv="Pragma" CONTENT="no-cache">
</head>

   如果使用上面的方法强制浏览器不再缓存Web页面,必须注意以下几点:
只有在使用安全连接时“Pragma: no-cache”才防止浏览器缓存页面。对于不受安全保护的页面,“Pragma: no-cache”被视为与“Expires: -1”相同,此时浏览器仍旧缓存页面,但把页面标记为立即过期。在IE 4或5中,“Cache-Control”META HTTP-EQUIV标记将被忽略,不起作用。
   在实际应用中我们可以加上所有这些代码。然而,由于这种方法不能适用于所有的浏览器,所以是不推荐使用的。但如果是在Intranet环境下,管理员可以控制用户使用哪种浏览器,我想还是有人会使用这种方法。
----------------------------------------------------------------------------------------------------------------
当用户向数据库提交数据后,往往由于点击了F5刷新页面,造成数据的重复提交,很容易造成数据库数据混乱.
如果屏蔽了刷新按钮,二次提交的可能性会小很多!
下面是禁止页面刷新的javascript代码:

document.onkeydown = function()
{
if(event.keyCode==116) {
event.keyCode=0;
event.returnValue = false;
} //禁止按F5
}
document.oncontextmenu = function() {event.returnValue = false;} //禁止鼠标右击
-------------------------------------------------------------------------------------------------------------
提交表单的同时把按钮禁用,CSDN论坛用的就是这个方法!代码如下:

<form name="form1" method="post" action="http://www.xxx.net" onsubmit="this.s.disabled=true">
<input type="submit" name="s" value="提交">
</form>

你可以发现按钮按下后变灰了。
------------------------------------------------------------------------------------------------------------------
function searchs(){
var doc=document.fo.musicName.value;
if(doc!=null&&doc!=""){
document.fo.action="music.do?submit=dispSearch";
//fo为表单的名字也可以写成document.froms[第几个表单].action="music.do?submit=dispSearch";
document.fo.method="post";
document.fo.submit();
}else{
alert("搜索内容不能为空!");
}
}
js提交表单。。。。。
----------------------------------------------------------------------------------------------------------------
js正则匹配日期
<script>
var regM =/^(0[1-9]|1[0-2])$/; //匹配月
alert(regM.test("12"));
var regD =/^(0[1-9]|[1-2]\d|3[0-1])$/; //匹配日
alert(regD.test("10"));
</script>
------------------------------------------------------------------------------------------------------
var chineseNameReg = /^[\u4E00-\u9FA5]{1,}$/;//中文名字的正则表达式
var englishNameReg = /^[a-zA-Z]{1,}\/[a-zA-Z]{1,}[\sa-zA-Z]{0,}$/;//英文名字的正则表达式
开始结束符号/^和$
{1,}表示重复一次以上

--------------------------------------------------------------------------------------------------------
var table=document.getElementById("table1");
for(var i=0;i<table.rows.length;i++){
for(var j=0;j<table.rows[i].cells.length;j++){
alert(table.rows[i].cells[j].innerHTML);
} //获得一个表的每个元素的值。。。。
--------------------------------------------------------------------------------------------------------
disabled 不可用的。。。readonly 只读的 文本框属性
--------------------------------------------------------------------------------------------------------
java 生成随机数策略

Math.random()方法生成0.0至1.0(不包含1.0)的double型随机数,一般地, a + Math.random() * b可以返回a到a+b之间的随机数,不包括a+b.
---------------------------------------------------------------------------------------------------------------
struts1 中的attribute属性的作用
为<action>中name属性制定的ActionForm制定一个key关键字,这样就可根据scope属性指定的范围获取该ActionForm:
如:
<action
name="userForm"
attribute="user"
scope="request"
……
/>
则可通过request.getAttribute("user")获取"userForm"指定的ActionForm。
如果省略attribute属性,则可通过request.getAttribute("userForm")获取ActionForm
attribute属性当然如跟actionform取了一个别名

-----------------------------------------------------------------------------------------------------------------
js禁止按钮 x.disabled=true; //document.getElementById(x).disabled=true;
-----------------------------------------------------------------------------------------------------------------
<a href="javascript:window.parent.document.URL='/CustomerRelationshipManagementSystem/Login.do?method=exitUser'" onclick="return confirm('真的注销吗?')">退出系统</a>
-------------------------------------------------------------------------------------------------------------------//公共测试方法 map集合 list集合
<script type="text/javascript">
function basicTest1(){
//定义一个map集合存放对象
var maps={t1:{id:"1"},t2:{id:"2"}};
//遍历map集合中的key值与value值
for(var key in maps){
alert("key:"+key+"--value:"+maps[key].id);
}
//定义一个list集合存放对象
var lists=[{id:"1"},{id:"2"}];
//遍历list集合值
for(var p in lists){
alert(lists[p].id);
}
}
</script>
-------------------------------------------------------------------------------------------------
利用DWR框架动态给Table加数据

dwr.util.removeAllRows("userTab");
for(var i in dates){
//arrays必须是个数组,数组里面放对象,javabean的信息组装成一个简单的数组,然后显示到页面上
var user=[{id:dates[i].id,name:dates[i].name,sex:dates[i].sex,passWord:dates[i].passWord,remark:dates[i].remark}];
DWRUtil.addRows("userTab",user,[function(item){return item.name},
function(item){return item.passWord},
function(item){return item.sex},
function(item){return item.remark},
function(item){
var userDelete="<a href=javascript:onclick=deleteUsers("+item.id+","+"'"+item.name+"'"+")>刪除</a>";
return userDelete},
function(item){
var userUpdate="<a href='javascript:onclick=updateUser("+item.id+")'"+">更新</a>";
return userUpdate}
],{escapeHtml:false});
}
-------------------------------------------------------------------------------------------------------------
<%=request.getRealPath("/") %> 当前发布项目的绝对路径 如:D:\软件\JAVA开发工具\apache-tomcat-5.5.20\webapps\item
-------------------------------------------------------------------------------------------------------------
获得下拉列表选中的值
<script>
function show(){
alert(document.myform.mysel.options[document.myform.mysel.selectedIndex].text);
}
</script>
<form name="myform">
<select name="mysel" onchange="show()">
<option value="1">上海</option>
<option value="2" selected="selected">天津</option>
<option value="3">北京</option>
</select>
</form>
----------------------------------------------------------------------
重定向中文乱码问题的解决

<1>jsp页面间传输要在tomcat里边的server.xml文件里边加入下面的语句
<Connector port="8080"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true"
URIEncoding="GBK" />


URIEncoding="GBK"这句是加进去的

<2>servlet/jsp页面间的传输要在所传输的文字前用到如下的语句
当然修改server.xml是必不可少的

例如
response.sendRedirect("MessageShow.jsp?message=" + URLEncoder.encode("成功发送邮件至","GBK") + to + URLEncoder.encode("信箱","GBK"));

URLEncoder.encode()这个方法是必不可少的

java.net.URLEncoder.encode()

----------------------------------------------------------------------
利用CSS让容器的溢出部分内容隐藏起来,smarty就可以不用截取字

在网页设计中,会遇到文本超过固定长度导致整体的网页变形的情况。程序员往往需要截取固定的长度来实现某些固定长度的控制。介绍一种直接采用CSS的代码控制来实现文本截取的方法。与程序员的直接字符截取的方式有点区别,其优势是可以自动控制文本显示的长度;缺点是不同浏览器的兼容性并不完美。使用到 overflow,text-overflow,white-space 这三个主要的属性,其他的代码属于修饰作用。
CSS代码: <style>
.texthidden{
width:200px;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
border:1px solid #ddd;
}
</style>

HTML代码:
<div class="texthidden"> CSS让容器的溢出部分内容隐藏起来 </div>

代码分析:
1. width:200px; //指定宽度:
2. overflow:hidden; //将超出内容隐藏
3. text-overflow:ellipsis; //IE专用属性,文本溢出时显示省略标记();其他浏览器不支持。
4. white-space:nowrap; //强制内容不换行。

强制在同一行内显示所有文本,直到文本结束或者遭遇 br 元素 目前使用这种方法比较成功的示例是Gmail的内容显示,在IE下达到最好的效果。如果是FF那就比较糟糕,总是会出现截取半个中文的效果。其中涉及到最主要的原因是 text-overflow 这个属性只在IE下有效,目前很多CSS属性也存在这个问题,特别重要的是Margin和Padding这两个属性,往往导致页面出现各种不同的效果;在页面设计的时候,需要注意这些属性在不同浏览器的显示效果。
----------------------------------------------------------------------
用 showModalDialog 打开的窗口获得父窗口对象

showModalDialog( "tt.htm ",window,"font-size:20px;dialogWidth:400px;dialogHeight:400px;scrollbars=no;status=no"); //把父网页的 window 对象传给对话框

在 tt.htm 里:
var w = window.dialogArguments; //获得父窗口对象
alert(w.document.all.IDshowwhatprop.value);
---------------------------------------------------------------------
hibernate 查询返回指定的字段 把返回的字段封装到object数组中。。。
List list=session.createQuery("select r.user.loginid,r.menu.title,count(r.menu.title),max(startTime) from ReportForm r where r.user.loginid='admin' group by r.menu.title,r.user.loginid order by count(r.menu.title) desc").list();
System.out.println(list.size());
Iterator iterator = list.iterator();
while(iterator.hasNext()){
//你返回的结果集都封装到了Object数组中。
Object[] obj = (Object[])iterator.next();
System.out.println(obj[0]+"-"+obj[1]+"-"+obj[2]+"-"+obj[3]);

}
----------------------------------------------------------------------




oracle 操作
如果是exp导出的文件,可以用:
imp user/pass@database file=c:\backup.mdf full = y;

----------------------------------------------------------------------
C:\Users\Administrator>exp system/123456@192.168.1.120:1521/file=oralce e:\data.d
mp owner=(user)


C:\Users\Administrator>imp system/123456@192.168.1.120:1521/oralce file=e:\data.d
mp fromuser=user touser=user1

exp oracleuser/passwd file=(/mydata/dat1.dmp,/mydata/dat2.dmp,mydata/dat3.dmp) tables=(table1,table2,table3)

说明
1.如果加上“full=y”,将整个数据库全部导出,需要特殊的权限(具体什么权限没研究过),一般用system用户就足够了,普通用户是不可以的
2.不加“full=y”,默认导出连接数据库的用户数据库对象,比如:exp aaa/abc@oracle file=a.dmp,导出aaa模式下的所有数据库对象
3.你说的有多个用户,可以使用system来指定导出哪个用户的数据库对象,比如:exp aaa/abc@oracle file=a.dmp owner=(bbb,ccc),普通用户是不可以指定owner的
4.数据有多个实例的情况,这个要看你“@”后面是什么,如果@oracle,则在oracle实例上进行导出,@ora,则在ora实例上进行导出


创建 用户 权限


创建用户:
create user user1 identified by user1 default tablespace tspace1;

可以省略 default tablespace tspace1

最高授权:
grant connect,resource ,dba to user1;
基本授权:
grant connect,create view ,resource to TEST;

CONNECT角色: --是授予最终用户的典型权利,最基本的

ALTER SESSION --修改会话
CREATE CLUSTER --建立聚簇
CREATE DATABASE LINK --建立数据库链接
CREATE SEQUENCE --建立序列
CREATE SESSION --建立会话
CREATE SYNONYM --建立同义词
CREATE VIEW --建立视图


RESOURCE角色: --是授予开发人员的

CREATE CLUSTER --建立聚簇
CREATE PROCEDURE --建立过程
CREATE SEQUENCE --建立序列
CREATE TABLE --建表
CREATE TRIGGER --建立触发器
CREATE TYPE --建立类型

但是实际查找 oracle 10 2.0.1.0 系统时,发现两个角色的权限如下:

用sys登陆到oracle中,执行以下两条语句:


select * from role_sys_privs WHERE ROLE LIKE 'CONNECT'; --查询connect角色的权限

select * from role_sys_privs WHERE ROLE LIKE 'RESOURCE'; --查询 RESOURCE角色的权限


CONNECT角色: --是授予最终用户的典型权利,最基本的
CREATE SESSION --建立会话


RESOURCE角色: --是授予开发人员的
CREATE CLUSTER --建立聚簇
CREATE PROCEDURE --建立过程
CREATE SEQUENCE --建立序列
CREATE TABLE --建表
CREATE TRIGGER --建立触发器
CREATE TYPE --建立类型

CREATE OPERATOR --创建操作者

CREATE INDEXTYPE --创建索引类型

CREATE TABLE --创建表
-------------------------------------------------------------------------
启动 实例,监听
service oracle start
lsnrctl start


sqldeveloper查找TNS文件的顺序如下: 1,$HOME/.tnsnames.ora 2,$TNS_ADMIN/tnsnames.ora 3,TNS_NAMES lookup key in the registry 4,/etc/tnsnames.ora ( non-windows ) 5,$ORACLE_HOME/network/admin/tnsnames.ora 6,LocalMachine\SOFTWARE\ORACLE\ORACLE_HOME_KEY 7,LocalMachine\SOFTWARE\ORACLE\ORACLE_HOME 如果sqldeveloper没有找到合适的TNS文件,可以这样来给它设定需要的TNS文件: 1)配置环境变量TNS_ADMIN,让其指向TNS文件所在的目录,如:D:\Program Files\sqldeveloper; 2)在CMD中查看环境变量值是否正确,可使用命令:echo %TNS_ADMIN%,并重启sqldeveloper; 3)在sqldeveloper中,点击创建新链接按钮,Connection Type选择 TNS,Network Alias 中的下拉框中会显示出所有定义在TNS文件中的所有条目。
-------------------------------------------------------------------------
memcached 启动
/usr/local/bin/memcached -d -m 200 -u root restart

----------------------------------------------------------------------
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值