??xml version="1.0" encoding="utf-8" standalone="yes"?> q时候只要简单的对要限制的控件加上一个ime-mode的css属性即可,?span style="COLOR: #0000ff"><input style="ime-mode:disabled">
ime-mode CSS提议属?/p>
语法Q?br>ime-mode : auto | active | inactive | disabled
原因Qie默认不接受没有标识ؓ安全的第三方cookieQ造成不能保存cookie及session?/p>
]]>
参数Q?br>auto : 不媄响IME的状态。与不指定ime-mode属性时相同
active : 指定所有用IME输入的字W。即ȀzL地语a输入法。用户仍可以撤销ȀzIME
inactive : 指定所有不使用IME输入的字W。即Ȁz非本地语言。用户仍可以撤销ȀzIME
disabled : 完全用IME。对于有焦点的控Ӟ如输入框Q,用户不可以激zIME
说明Q?br>讄或检索是否允许用hz输入中文,韩文Q日文等的输入法QIMEQ状态?br>对应的脚本特性ؓimeMode?br>
CZQ?br><input type=text style='ime-mode: disabled; '>
]]>
传统的JSP技术ؓWeb表现层技术提供了灉|、丰富的功能支持。然而,站在工程的角?br>而言Q过于凌qJSP Script也成为系l维护的头号大敌?br>JSP 代码几乎{同于Java 代码Q在提供了最丰富的特性支持的同时Q也为系l的开发带
来一些隐患,E序员往往天马行空Q不为羁束,在JSP 中将业务逻辑、数据逻辑、表现逻辑?br>码相hQ代码重用性、系l可l护性极低?u>特别是在参与开发h员众多,技术水q莠不?br>的情况下Q纵使技术经理一再强调设计规范的U束Q但人本的约束L难以控制Q随着开发过
E进展和产品上线压力的增大,规范U束逐渐薄弱Q于是难以避免的造成代码的乱,可维?br>性的下降?br>面对q个问题Q众多组l和厂商开始研发自q表现层框Ӟ试图通过一个隔ȝ表现?br>框架Q强行将表现层和逻辑层相剥离。时间似乎退回到了最初Web 端只支持Servlet 技术的
时代Q那时候或多或各个公叔R有自q模板实现Q。不q,现在的模板技术经q长旉?br>发展Q已l将表现层的能力发挥得淋漓尽_不失为JSP技术之外的一个明智选择?/p>
模板技术相对传lJSP技术有以下三个主要优势Q?br>1Q?在技术层面,表现逻辑与业务逻辑相分R?br>2Q?Zh员之间的分工提供了一个良好的分界炏V页面美工只需专著兛_模板的设计,而程序员则专注于业务逻辑的实现。二者重合点明显减少?br>3Q?如果需要,模板引擎可脱Web 容器单独q行Q这为系l可能的UL需求提供了更多的弹性空_q一Ҏ在应用中也许ƈ不会有太大的实际意义Q只是提供了一U附加选择Q?/u>
目前Spring支持一下几U模板技术:
1Q?XSLT
XSLT是基于XML的表现层模板技术,伴随着XML的大量用。XSLT也日渐成熟,q?br>q速成Z表现层技术之一?u>XSLT作ؓ一个通用表现层框Ӟ拥有最好的q_适应性,
几乎所有的LE序设计语言都提供了XLST支持Q现有的XLST模板可以单的ULC
同的语言q_Q如J2EE应用中的XSLTUL?netq_Q这L可移植性是其他专用
模板技术,如Velocity和Freemarker难以辑ֈ的?br>W者在2001q在一个原型项目中采用了XSLT作ؓ表现层实玎ͼ׃当时XSLT不
成熟QXSLT解析器效率低下,因此在正式品开发中使用其他技术作为替代。在2003q?br>中,l过技术探讨,军_再次在项目实施中引入XSLT 技术,相对两年前,此时的XSLT
技术已l相当成熟,解析器的效率也大大改善。经q半q时间的目研发Q品上U,q?br>取得了o人满意的表现?u>不过Q在之后的项目回过E中Q笔者认为,目前在项目中大量
采用XSLT技术尚不可取,上述目开发过E中QXSLT技术提供了极佳的扩展性和重用性,
也保证了业务逻辑和表C逻辑的清晰划分,然而,最大的问题是,XSLT~Z强有力的~辑
器支持。虽焉过XML/XSLT 技术成全了设计上近乎完的表现Q但却ؓ界面开发带来了
极大隑ֺQ以臛_期复杂界面的修改都需要消耗极大的人力Q得不偿失?/u>
W者在目开发中所用的XSLT ~辑器ؓStylusStudio 和XmlSpyQ目前这两款~?br>辑器可以是XSLT开发的首选,提供了丰富的Ҏ和可视化编辑功能。但即便如此QXLST
J杂苛刻的语法和调试上的隑ֺ也ؓ开发工作带来了极大的障?br>此外Q也许是最重要的一点,xslt在性能上的表现不如人意。经q多q的发展Q?br>XSLT解析/合成器的性能相对最初已l大为改观,但依然与其他模板技术存在着较大差距?br>据实地测试,FreeMarker和Velocity对于同等复杂度的表现层逻辑Q^均处理速度?br>XSLT ?0 倍以上,q是一个不得不正视的性能沟壑?/u>同时Q?u>XSLT 的内存占用也?br>FreeMarker 和Velocity 的数倍有余(XSLT 中,每个节点都是一个Java 对象Q大?br>对象的存储对内存占用极大Q同时大量对象的频繁创徏和销毁也对JVM 垃圾攉产生了较
大负面媄响)?/u>在上q项目中Q由于硬件上的充分冗余(8G RAM, 4CPUQ,才得这?br>性能上的影响相对微弱?br>因此Q目前在目中大量引入XSLT技术尚需仔细考量?br>2Q?Velocity
Velocity是Apache Jakarta目中的一个子目Q它提供了丰富强大的模板功能?br>作ؓ目前最为成熟的模板支持实现QVelocity 在诸多项目中得到了广泛应用,不仅
限于Web 开发,在众多代码生成系l中Q我们也可以看到Velocity 的n影(?br>Hibernate中的代码生成工具Q?br>3Q?FreeMarker
FreeMarker是Velocity之外的另一个模板组件?br>与Velocity 相比QFreeMarker 对表现逻辑和业务逻辑的划分更Z|
Freemarker在模板中不允许对Servlet APIq行直接操作Q而Velocity可以Q,
如FreeMarker 中禁止对HttpServletRequest 对象直接讉KQ但可以讉K
HttpServletRequest对象中的AttributeQ。通过更加严格的隔LӞ牉|?br>辑处理的操作被强制{Ud逻辑层。从而完全保证了层次之间的清晰性?br>另外一个Velocity无法实现的特性,也是最具备实际意义的特性:FreeMarker?br>JSP Tag提供了良好支持?/u>q一点可能存在一点争议,JSP技术的最大问题就是容?br>在页面中混入逻辑代码。而FreeMarker 对JSP Tag 的支持似乎ؓq个问题又打开
了大门。这一点上Q我们可以将FreeMarker看作是仅允许使用TAG的JSP面Q实
际上QFreeMarker的表辑ּ语法与EL语法也非常类|?br>从开发角度而言Q只允许使用TAG的JSP面Q已l在很大E度上保证了面表现?br>辑与业务逻辑的分R?/u>E序员在JSP Script中杂逻辑代码的原因,大部分是Z
慉|Q只要无法在面模板中直接编写Java代码Q相信程序员也不会去专门~写一?br>JSP TAG来刻意违反层ơ划分原则?br>对JSP TAG 的支持ؓFreeMarker 带来了极大的zdQ目前开源社Z已经有了?br>C多的成熟TaglibQ如DisplayTag、Struts Menu{,q些功能丰富Q成熟可
靠的TaglibQ将Z品开发提供极大的便利。另一斚wQ这也ؓ代码重用提供了另一
个可选途径Q避免了大部分模板实现在q一点上的不?br>q者的l验Q对于Web开发而言QFreeMarker在生产效率和学习成本上更具优势,
而Velocity 的相对优势在于更多第三方工具的支持和更广泛的开发和用户团体Q然
而对于一个轻量模板cd而言Q这L优势q不是十分明显)?br>如果没有Velocity的技术储备,而又需要通过技术上的限定解册?模型的划分问
题,q里推荐采用FreeMarker作ؓSpring MVC中的表现层实现。以获得最好的Q学
习、开发)成本受益?br>
2007-5-16 10:47:42 org.apache.coyote.http11.Http11AprProtocol init
信息: Initializing Coyote HTTP/1.1 on http-9090
2007-5-16 10:47:42 org.apache.coyote.ajp.AjpAprProtocol init
信息: Initializing Coyote AJP/1.3 on ajp-8009
2007-5-16 10:47:42 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 2164 ms
2007-5-16 10:47:43 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2007-5-16 10:47:43 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/
2007-5-16 10:47:43 org.apache.catalina.core.StandardHost start
信息: XML validation disabled
log4j:WARN No appenders could be found for logger (org.apache.commons.digester.Digester.sax).
log4j:WARN Please initialize the log4j system properly.
2007-5-16 10:47:50 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2007-5-16 10:47:50 org.apache.catalina.core.StandardContext start
严重: Context [/BookManage] startup failed due to previous errors
2007-5-16 10:47:51 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2007-5-16 10:47:51 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2007-5-16 10:47:52 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2007-5-16 10:47:52 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2007-5-16 10:47:57 org.apache.catalina.loader.WebappClassLoader validateJarFile
信息: validateJarFile(C:\Tomcat 5.5\webapps\TopHyTree\WEB-INF\lib\servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section
log4j:WARN No appenders could be found for logger (org.apache.commons.digester.Digester.sax).
log4j:WARN Please initialize the log4j system properly.
2007-5-16 10:48:01 org.apache.coyote.http11.Http11AprProtocol start
信息: Starting Coyote HTTP/1.1 on http-9090
2007-5-16 10:48:02 org.apache.coyote.ajp.AjpAprProtocol start
信息: Starting Coyote AJP/1.3 on ajp-8009
2007-5-16 10:48:03 org.apache.catalina.storeconfig.StoreLoader load
信息: Find registry server-registry.xml at classpath resource
2007-5-16 10:48:03 org.apache.catalina.startup.Catalina start
信息: Server startup in 20835 ms
U色字体为出错信息,原来以ؓ是用FilterQ过滤器或者拦截器Q出错,因ؓ?font color=#333333>?span lang=EN-US style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: Verdana; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">web.xml里的filter配置LQ就正常h了,在网上查扑֏CU情况:
1?/font>q用Filte包不齐全
2?/font>W二U情况:
google里搜?/span>Error filterStart里有个文章说tomcat里的bug,没有实现javax.servlet.Filter?/span>Filter会报q样的错误:
看来tomcat在启动就初始?/span>Filter实例了,可能?/span>Filter里的啥东东执行出错导致可能,看看Filter?/span>init里用C?/span>
mServ = (ModuleService)WebUtils.getApplicationContext(config.getServletContext()).getBean("moduleService");
是最可能发生错误了,因ؓq里用到?/span>spring?/span>org.springframework.web.context.ContextLoaderServletQ如果启动这时还没有建立?/span>servlet实例Q务必导致获取失败,抛出错误。先屏蔽一下这句话Q果真启动正怺Q修改一下代码,?/span>init里的q句话丢CdoFilter里面
if(mServ==null)
mServ = (ModuleService)WebUtils.getApplicationContext(filterConfig.getServletContext()).getBean("moduleService");
不过Tomcat也真是,解析web.xml的顺序上q是太僵了?/span>
我的出错情况Q?/span>
l仔l推敲查扑֏现是配置文gstruts.xml配置时候action文g名错?/span>
原因Q?/span>tomcat启动时会通过web.xml文gLstruts.xml文g?/span>又因struts2.0默认有拦截器的,所以如果这里的有错误信息,׃?/span>Filter错误Q很Ҏ引v误导?/span>
用法Q?br>
<div id="test">
<span style="color:red">test1</span> test2
</div>
在JS中可以用:
test.innerHTML:
也就是从对象的v始位|到l止位置的全部内?包括Html标签?/p>
上例中的test.innerHTML的g是“<span style="color:red">test1</span> test2 ”?br>
test.innerText:
从v始位|到l止位置的内? 但它去除Html标签
上例中的text.innerTest的g是“test1 test2”, 其中span标签去除了?/p>
test.outerHTML:
除了包含innerHTML的全部内容外, q包含对象标{本w?/p>
上例中的text.outerHTML的g是<div id="test"><span style="color:red">test1</span> test2</div>
完整CZQ?/strong>
<div id="test">
<span style="color:red">test1</span> test2
</div>
<a href="javascript:alert(test.innerHTML)">innerHTML内容</a>
<a href="javascript:alert(test.innerText)">inerHTML内容</a>
<a href="javascript:alert(test.outerHTML)">outerHTML内容</a>
特别说明Q?/strong>
innerHTML是符合W3C标准的属性,而innerText只适用于IE览器,因此Q尽可能地去使用innerHTMLQ而少用innerTextQ如果要输出不含HTML标签的内容,可以使用innerHTML取得包含HTML标签的内容后Q再用正则表辑ּ去除HTML标签Q下面是一个简单的W合W3C标准的示例:
<a href="javascript:alert(document.getElementById('test').innerHTML.replace(/<.+?>/gim,''))">无HTML,W合W3C标准</a>
unsigned int
auto_increment 自动增长
not null 非空
tinyint(m)
float(m,n) m 总长 n 数点后的位?br>mysqld --console 开?br>Mysqld (start)
Mysqld-nt
CREATE DATABASE db_name 创徏数据?br>USE db_name(选取数据?
Mysql 理
mysqladmin
Show databases 查看
mysql -h(hostname) -u(username) -p(要求输入密码?
quit 退?/p>
1、show tables
2、mysqladmin shutdown 关闭
3、mysql --h=hostname --u=username --p
4、DROP DATABASE db_name 删除
5、DROP TABLE 表的名字
6、CREATE TABLE 表的名字 SELECT Q要选择的列Q?FROM 原来的表 WHERE condition;
7、CREATE TABLE new_table SELECT id,name,sex FROM
8、INSERT INTO 表的名字 VALUES 跟的|‘列的?#8217;Q?#8216;列的?#8217;Q;
9、drop database name(数据库的名字Q?删除数据?br>10、CREATE TABLE name (id int,name varchar(20),sex ENUM('male','female'))创徏?/p>
11、DESCRIBE TABLE(表的名字Q?/p>
12、ALTER TABLE nameQ表的名字)ADD PRIMARY KEY Qindex_col_nameQ; 的主?/p>
13、ALTER TABLE nameQ表的名字)MODIFY id int(11) unsuptaigned(非负Q?not nullQ非I) auto_intcrementQ自动增长);
14、select * from 表的名字Q?/p>
SELECT Name, Population FROM City ORDER BY Population DESC LIMIT 5;
15、update 表的名字 set 列的名字='数据' where id=LQ?修改和增加数?/p>
16、ALTER TABLE 表的名字 ADD 列名 cd Q?增加一个列
17、LOAD DATA INFILE ‘路径Q文件名’INTO TABLE 表名Q?nbsp; 导入数据
修改记录QUPDATE table_name SET column_name_1=column_value_1[,column_name2=column_value2] [WHERE where_statement] [LIMIT n];
? UPDATE xscj SET YuWen=80 WHERE id=101 (int型不?#8216;’Qchar 型要’‘Q?br>删除记录QDELETE FROM table_name [WHERE where_statements][LIMIT n];
DELETE FROM xscj WHERE id=101;
CREATE TABLE 表的名字 SELECT 要选择的列? FROM 原表?WHERE id=..(只提取一条记录)默认为全?
INSERT INTO 表名 VALUES Q与表对应的数|Q插入多个|Q,Q)SELECT * FROM 表名Q?br>有些关键字可以用``标v?nbsp; 例如Q`all`
18、创建烦引:
CREATE TABLE 表名 (id init,name varchar(20)) INDEX idx_id(id) PRIMARY KEY id
CREATE INDEX part_of_name ON customer (name(10));
19、ALTER TABLE 表名 ADD INDEX idx_id (id,name); 修改索引Q?/p>
20、ALTER TABLE 表名 DROP INDEX idx_id(索引的名? 删除索引
order by (DESC(降序)) 排序
select TOP 3(前三? student_id,name from xscj where student_id between 123 AND 1323 order by students_id ,name desc
SELECT student_id , count(*) AS ss FROM xscj GROUP BY student_id;
count(*) 记录行数
ab[123].com=ab1.com or ab2.com or ab3.com
mysql mytest < c:\study.txt 导入文g
临时?br>可用CREATE TEMPORARY TABLE 来创Z时表Q这些表在会话结束时会自动消失。用时表很方便,
因ؓ不必费心发布DROP TABLE 语句明确地删除这些表Q而且如果您的会话不正常结束,q些表不会滞?br>。例如,如果某个文g中有一个用mysqlq行的查询,您决定不{到其结束,那么可以在其执行的中途停
止这个查询,而且毫无问题Q服务器删除所创徏的Q意时表。在旧版的MySQL中,没有真正的时表
Q除了您在自q头脑中认为它们是临时的除外。对于需要这L表的应用E序Q必自p住删除这?br>表。如果忘了删除,或在前面使其存在的客h中出现错误时Q这些表在有人注意到q删除它们以前会一
直存在。时表仅对创徏该表的客h可见?/p>
DROP TABLE tb1_name1,tb1_name2,......
? ? 其次Q如果不能肯定一个表是否存在Q但希望如果它存
在就删除它。那么可在此语句中增加IF EXISTS?/p>
SELECT a,b,a+b INTO OUTFILE 'c:/result.text' FIELDS TERMINATED BY "" LINES TERMINATED BY "\n" FROM test_table;
SELECT user,MAX(salary) AS sum FROM users group by user HAVING sum>10 LIMIT 95,-1(95到最?;
@c:\study.sql 可以查看pȝ
SELECT * FROM table1 USE INDEX (key1,key2) WHERE key1=1 AND key2=2 AND key3=3;
主键与负键的联系?references
mysql数据库的授权
mysql>grant select,insert,delete,create,drop
on *.* (或test.*/user.*/..)
to 用户名@localhost
identified by 密码Q?
如:新徏一个用户帐号以便可以访问数据库Q需要进行如下操作:
mysql> grant usageQ没有权限)
-> ON test.*
-> TO testuser@localhost;
Query OK, 0 rows affected (0.15 sec)
此后创Z一个新用户叫:testuserQ这个用户只能从localhostq接到数据库q可以连接到test 数据库。下一步,我们必须指定testuserq个用户可以执行哪些操作Q?
mysql> GRANT select, insert, delete,update
-> ON test.*
-> TO testuser@localhost;
Query OK, 0 rows affected (0.00 sec)
此操作testuser能够在每一个test数据库中的表执行SELECTQINSERT和DELETE以及UPDATE查询操作。现在我们结束操作ƈ退出MySQL客户E序Q?
mysql> exit
Bye
登陆Qmysql -u 用户?-p
删除用户 delete from user where user='名字1' [or user='名字2']Q?br> user 数据库是pȝ?br>
q行脚本Q?br>修改密码Q?br>USE mysql;
UPDATE user SET Password(字段?=PASSWORDQ一个函敎ͼ('new_password') WHERE user='root'
FLUSH PRIVILEGESQ(你必d诉服务器再次d授权表)
Mysqldump 数据库备?br>mysqldump -u -p 数据库名[表名]>Q重定向Q?br>mysqldump <
严重: Servlet.service() for servlet webwork threw exception
java.lang.NoClassDefFoundError: com/uwyn/rife/continuations/ContinuationConfig
at com.opensymphony.webwork.dispatcher.mapper.ActionMapperFactory.getMapper(ActionMapperFactory.java:32)
at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:93)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:834)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:640)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1286)
at java.lang.Thread.run(Thread.java:595)
刚开始以为是配置问题Q后来把所有的jar包导q去Qok了,l查看少包:rrife-continuations.jar