??xml version="1.0" encoding="utf-8" standalone="yes"?>国产传媒在线,成人动漫一区,中文字幕免费在线http://www.aygfsteel.com/PariScamper/category/26370.htmlzh-cnMon, 19 Nov 2007 05:24:22 GMTMon, 19 Nov 2007 05:24:22 GMT60java web开发,bean数据攑֜request、responseq是servletcontext中?(zz)http://www.aygfsteel.com/PariScamper/archive/2007/11/19/161582.htmlPariScamperPariScamperMon, 19 Nov 2007 05:18:00 GMThttp://www.aygfsteel.com/PariScamper/archive/2007/11/19/161582.htmlhttp://www.aygfsteel.com/PariScamper/comments/161582.htmlhttp://www.aygfsteel.com/PariScamper/archive/2007/11/19/161582.html#Feedback0http://www.aygfsteel.com/PariScamper/comments/commentRss/161582.htmlhttp://www.aygfsteel.com/PariScamper/services/trackbacks/161582.htmlservlet规范本nQ数据可以放?个地方:request、session、servletContext.

requestQ?/strong>
好处Q用完就仍,不会D资源占用的无限增ѝ?
弊处Q每ơ要用都从数据库中抓Q多做操作,自然会对性能有一些媄响?

sessionQ?/strong>
好处Q不用每ơ都L据库抓,做操作?
弊处Q每个客户都有一个sessionQ只能自׃用,不同session可能保存大量重复数据Q?
可能耗费大量服务器内存;
另外session构徏在cookie和url重写的基上,所以用session实现会话跟踪Q会用掉一点点服务器带宽和客户端保持联l,
当然session多Q耗费的带宽越多,理论上也会对性能造成影响?
集群的session同步会是个问题?

servletContextQ?/strong>
好处Q不用每ơ都L据库抓,做操作?
存储的数据所有客户都可以用?
可减重复在内存中存储数据造成的开销?
弊处Q很多时候相同的数据可能不多(相当于cache的命中率很低Q?


其实以上3中方法都有利有弊Q各自的好处在某U条件下Q也都会转变为弊处。所以不妨综合用,相当于一?#8220;W三方用?#8221;Q只讲一下思\Q否则太q繁琐,涉及到的相关技术点请参考有x术资料)Q?

request不说了,重点说说session和servletContextQ?

--session的可控应?/strong>
session的最大问题是资源回收Q两cd收方?
d回收Q浏览器被关闭,而ؓ提交触发清理动作的请求时Q该Ҏ(gu)失效Q而且很常见?
时回收Q设|session的setMaxInactiveInterval属性或在web.xml中配|超时时_然后交给jvm的垃圑֤理器处理?
不过不要报太大希望,jvm的垃圾收集器q不灵光?
可以用另一U替代方法缓解该问题Q比如限制session的数量,可以用HttpSessionListener实现Q这样可以缓解session带来的吃内存问题Q当然这U做法每ơ都需要判断session数量Q当session辑ֈ限定数量时还必须用其他方法处理了Q这些细节繁琐,而且要}慎处理?

--servletContext
如果说session是一?#8220;局部缓?#8221;Q那servletContext是一?#8220;全局~存”了,不妨把它当作cacheQ这里不讲究用词的严谨性,仅ؓ了更好说明问题)。cache的大是当前应用可用的最大内存。cache的最大问题是提高命中率,命中率高Q内存占用少Q效率高Q命中率低,则内存占用多而且效率低。这U应用的技术实现比“session的可I应?#8221;要简单,适用于相同数据多的地方,q个要事先有所判断Q如果用不好则有弊无利?

如果仅用servlet规范l出?U机ӞM一U都达不到好处兼收的效果Q所以要发挥3U方法的好处、摒弃弊处,必须l合q用Q做一些技术框架的构徏工作Q而且有些地方q比较繁琐(q好框架是可重用的)?/span> 

有时候寻求或实现“q”Q或者说取其利而摒其害Q,要付出很大代PҎ(gu)不同的情况,q些代h(hun)或是值得Q或是不值得。也可以“两害相权取其?#8221;Q或许是最便捷的方法?/span>



PariScamper 2007-11-19 13:18 发表评论
]]>
使用hibernate像oracle插入数据出现java.sql.BatchUpdateException: ORA-01400: 无法?NULL 插入 的解军_?/title><link>http://www.aygfsteel.com/PariScamper/archive/2007/10/23/155306.html</link><dc:creator>PariScamper</dc:creator><author>PariScamper</author><pubDate>Tue, 23 Oct 2007 07:29:00 GMT</pubDate><guid>http://www.aygfsteel.com/PariScamper/archive/2007/10/23/155306.html</guid><wfw:comment>http://www.aygfsteel.com/PariScamper/comments/155306.html</wfw:comment><comments>http://www.aygfsteel.com/PariScamper/archive/2007/10/23/155306.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/PariScamper/comments/commentRss/155306.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/PariScamper/services/trackbacks/155306.html</trackback:ping><description><![CDATA[<p>注意如果该字D在Oracle中设定非I性ؓYESQ则即是插入String a=""或者String a=new String()也是相对于空倹{?/p> <img src ="http://www.aygfsteel.com/PariScamper/aggbug/155306.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/PariScamper/" target="_blank">PariScamper</a> 2007-10-23 15:29 <a href="http://www.aygfsteel.com/PariScamper/archive/2007/10/23/155306.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用Hibernate像Oracle插入数据出现ORA-01747: invalid user.table.column, table.column, or column specification的解x?/title><link>http://www.aygfsteel.com/PariScamper/archive/2007/10/12/152478.html</link><dc:creator>PariScamper</dc:creator><author>PariScamper</author><pubDate>Fri, 12 Oct 2007 15:05:00 GMT</pubDate><guid>http://www.aygfsteel.com/PariScamper/archive/2007/10/12/152478.html</guid><wfw:comment>http://www.aygfsteel.com/PariScamper/comments/152478.html</wfw:comment><comments>http://www.aygfsteel.com/PariScamper/archive/2007/10/12/152478.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/PariScamper/comments/commentRss/152478.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/PariScamper/services/trackbacks/152478.html</trackback:ping><description><![CDATA[<p>|上说是数据库的列名与oracle的保留字重名Q的如此?br /> 比如我的有一列叫user是Q另外我验证叫level也是?br /> |上有的说叫start和end也不行,但经我试验,是可以的Q也是start和end不是保留字?br /> 另外Q这个错误只在用hibernate才出玎ͼ使用jdbc也可能出玎ͼ没试q)?br /> 直接用oracle的客LEnterprise Manager Console却没有这个问题,是列名叫user和levelQ照样可以插入数据?/p> <img src ="http://www.aygfsteel.com/PariScamper/aggbug/152478.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/PariScamper/" target="_blank">PariScamper</a> 2007-10-12 23:05 <a href="http://www.aygfsteel.com/PariScamper/archive/2007/10/12/152478.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何使用Log4jQ?/title><link>http://www.aygfsteel.com/PariScamper/archive/2007/10/11/152147.html</link><dc:creator>PariScamper</dc:creator><author>PariScamper</author><pubDate>Thu, 11 Oct 2007 13:06:00 GMT</pubDate><guid>http://www.aygfsteel.com/PariScamper/archive/2007/10/11/152147.html</guid><wfw:comment>http://www.aygfsteel.com/PariScamper/comments/152147.html</wfw:comment><comments>http://www.aygfsteel.com/PariScamper/archive/2007/10/11/152147.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/PariScamper/comments/commentRss/152147.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/PariScamper/services/trackbacks/152147.html</trackback:ping><description><![CDATA[<font size="2"><strong>1?Log4j是什么?<br /> </strong>  Log4j可以帮助调试Q有时候debug是发挥不了作 用的Q和分析Q要下蝲和了解更详细的内容,q是讉K其官方网站吧Q?/font> <a ><font size="2">http://jakarta.apache.org/log4j</font> </a><font size="2">?br /> <br /> <strong>2、Log4j的概?/strong><br />   <!--startfragment --> Log4j中有三个主要的组Ӟ它们分别?/font> <font size="2">Logger、Appender和LayoutQL<!--startfragment -->og4j 允许开发h员定义多个LoggerQ每个Logger拥有自己的名字,Logger之间通过名字来表明隶属关pR有一个LoggerUCؓRootQ它永远存在Q且不能通过名字索或引用Q可以通过Logger.getRootLogger()Ҏ(gu)获得Q其它Logger通过 Logger.getLogger(String name)Ҏ(gu)?br />    Appender则是用来指明所有的log信息存放C么地方,Log4j中支持多UappenderQ如<!--startfragment --></font> <font size="3"></font><font size="2">console、files、GUI components、NT Event Loggers{,一个Logger可以拥有多个AppenderQ也是你既可以Log信息输出到屏q,同时存储C个文件中?br />    Layout的作用是控制Log信息的输出方式,也就是格式化输出的信息?br />    Log4j中将要输出的Log信息定义?U别,依次为DEBUG、INFO、WARN、ERROR和FATALQ当输出Ӟ只有U别高过配置中规定的U别的信息才能真正的输出Q这样就很方便的来配|不同情况下要输出的内容Q而不需要更改代码,q点实在是方便啊?br /> <br /> <strong>3、Log4j的配|文?/strong><br />   虽然可以不用配置文gQ而在E序中实现配|,但这U方法在如今的系l开发中昄是不可取的,能采用配|文件的地方一定一定要用配|文件。Log4j支持两种格式的配|文ӞXML格式和Java的property格式Q本人更喜欢后者,首先看一个简单的例子吧,如下Q?br /> <br /> </font><font color="#614db3"><font size="2">  log4j.rootLogger=debug, <strong>stdout, R</strong><br />   log4j.appender.<strong>stdout</strong>=org.apache.log4j.ConsoleAppender<br />   log4j.appender.stdout.layout=org.apache.log4j.PatternLayout<br /> <br />   # Pattern to output the caller's file name and line number.<br />   log4j.appender.stdout.layout.ConversionPattern=%5p [%t] <strong>(%F:%L)</strong> - %m%n<br /> <br />   log4j.appender.<strong>R</strong>=org.apache.log4j.RollingFileAppender<br />   log4j.appender.R.File=example.log<br />   log4j.appender.R.MaxFileSize=</font> <font size="2"><strong>100KB<br /> </strong><br />   # Keep one backup file<br />   log4j.appender.R.MaxBackupIndex=1<br /> <br />   log4j.appender.R.layout=org.apache.log4j.PatternLayout<br />   log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n         <br /> <br /> </font><font color="#000000"><font size="2">  首先Q是讄rootQ格式ؓ<!--startfragment --> log4j.rootLogger=[level],appenderName, ...Q其中level是讄需要输Z息的U别Q后面是appender的输出的目的圎ͼ<!--startfragment -->appenderName是指定日志信息输出到哪个地斏V?zhn)可以同时指定多个输出目的地?/font> <font size="2">配置日志信息输出目的地AppenderQ其语法?br /> </font><font size="2">  log4j.appender.appenderName = fully.qualified.name.of.appender.class<br />   log4j.appender.appenderName.option1 = value1<br />   ...<br />   log4j.appender.appenderName.option = valueN</font> <br /> <font size="2">Log4j提供的appender有以下几U:<br />   org.apache.log4j.ConsoleAppenderQ控制台Q?br />   org.apache.log4j.FileAppenderQ文Ӟ<br />   org.apache.log4j.DailyRollingFileAppenderQ每天生一个日志文Ӟ<br />   org.apache.log4j.RollingFileAppenderQ文件大到达指定尺寸的时候生新文gQ?br />   org.apache.log4j.WriterAppenderQ将日志信息以流格式发送到L指定的地方)<br /> </font></font></font><font color="#614db3"><font color="#000000"><font size="2">配置日志信息的格式(布局Q,其语法ؓQ?br /> </font><font size="2">  log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class<br />   log4j.appender.appenderName.layout.option1 = value1<br />   ....<br />   log4j.appender.appenderName.layout.option = valueN</font> <br /> <font size="2">Log4j提供的layout有以下几U:<br />   org.apache.log4j.HTMLLayoutQ以HTML表格形式布局Q,<br />   org.apache.log4j.PatternLayoutQ可以灵zd指定布局模式Q,<br />   org.apache.log4j.SimpleLayoutQ包含日志信息的U别和信息字W串Q,<br />   org.apache.log4j.TTCCLayoutQ包含日志生的旉、线E、类别等{信息) <br /> <br /> </font></font></font><font color="#000000"><span style="font-size: 10.5pt"><font size="2"><span lang="EN-US">Log4J采用cMC语言中的printf函数的打印格式格式化日志信息Q打印参数如下: %m 输出代码中指定的消息<O:P></O:P></span> </font></span></font> <p><font color="#000000"><span style="font-size: 10.5pt"><font size="2">  </font> <span lang="EN-US"><font size="2">%p 输出优先U,即DEBUGQINFOQWARNQERRORQFATAL <br />   %r 输出自应用启动到输出该log信息耗费的毫U数 <br />   %c 输出所属的cȝQ通常是所在类的全?<br />   %t 输出产生该日志事件的U程?<br />   %n 输出一个回车换行符QWindowsq_?#8220;\r\n”QUnixq_?#8220;\n” <br />   %d 输出日志旉点的日期或时_默认格式为ISO8601Q也可以在其后指定格式,比如Q?d{yyy MMM dd HH:mm:ss,SSS}Q输出类|</font> </span></span><ST1:CHSDATE isrocdate="False" islunardate="False" day="18" month="10" year="2002"><span lang="EN-US" style="font-size: 10.5pt"><font size="2">2002q?0?8?/font> </span></ST1:CHSDATE><span lang="EN-US" style="font-size: 10.5pt"><font size="2">22Q?0Q?8Q?21 <br />   %l 输出日志事g的发生位|,包括cȝ名、发生的U程Q以及在代码中的行数。D例:Testlog4.main(TestLog4.java:10)</font> </span></font></p> <br /> <font color="#614db3"><font color="#000000"><font size="2"><br /> <strong>4、Log4j在程序中的?/strong> </font></font></font><font color="#614db3"><font color="#000000"><br /> </font><font color="#a0a0a0"><font color="#090909" size="2">  要在自己的程序中使用Log4jQ首先需要将commons-logging.jar和logging-log4j-1.2.9.jar导入到构\径中。然后再log4j.properties攑ֈsrc根目录下。这样就可以在程序中使用log4j了。在cM使用log4jQ?/font> </font></font><font color="#614db3"><font color="#a0a0a0"><font color="#090909" size="2">首先声明一个静态变?/font> </font></font><font color="#614db3"><font color="#a0a0a0"><font color="#090909" size="2">Logger logger=Logger.getLog("classname")Q现在就可以使用了,用法如下Qlogger.debug("debug message")或者logger.info("info message")Q看下面一个小例子Q?/font> </font></font><font color="#614db3"><font color="#a0a0a0"><br /> </font><br /> <font size="2">  import com.foo.Bar;<br />   import org.apache.log4j.Logger;<br />   import org.apache.log4j.PropertyConfigurator;<br />   public class MyApp {<br />     static Logger logger = Logger.getLogger(MyApp.class.getName());<br />     public static void main(String[] args) {<br />       // BasicConfigurator replaced with PropertyConfigurator.<br />       PropertyConfigurator.configure(args[0]);<br />       logger.info("Entering application.");<br />       Bar bar = new Bar();<br />       bar.doIt();<br />       logger.info("Exiting application.");<br />     }<br />   }<br /> </font></font> <img src ="http://www.aygfsteel.com/PariScamper/aggbug/152147.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/PariScamper/" target="_blank">PariScamper</a> 2007-10-11 21:06 <a href="http://www.aygfsteel.com/PariScamper/archive/2007/10/11/152147.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>tomcat启动出现Cannot create JDBC driver of class '' for connect URL 'null'的解x?/title><link>http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151574.html</link><dc:creator>PariScamper</dc:creator><author>PariScamper</author><pubDate>Tue, 09 Oct 2007 15:10:00 GMT</pubDate><guid>http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151574.html</guid><wfw:comment>http://www.aygfsteel.com/PariScamper/comments/151574.html</wfw:comment><comments>http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151574.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/PariScamper/comments/commentRss/151574.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/PariScamper/services/trackbacks/151574.html</trackback:ping><description><![CDATA[<p>肯定是tomcat的数据库q接池没配置对,ltomcat配置mysql数据库连接池Ҏ(gu)如下<br /> 1Q用<span>Tomcat</span><span>的管理界?/span>建立Data SourceQ此时会在conf/server.xml生成如下片段Q?br />     <Resource<br />       name="jdbc/game"<br />       type="javax.sql.DataSource"<br />       maxActive="4"<br />       maxIdle="2"<br />       username="root"<br />       maxWait="5000"<br />       driverClassName="com.mysql.jdbc.Driver"<br />       password="3306"<br />       url="jdbc:mysql://localhost:3306/game"/><br /> 2Q在<span><span>server.xml</span><span> <Host></span><span>?/span><span></Host></span><span>之间配置下面代码Q?br /> </span></span><span><span>        <Context path="/game" debug="5" reloadable="true" crossContext="true"><br />          <ResourceLink name="jdbc/game" global="jdbc/game" type="javax.sql.DataSource"/><br />         </Context><br /> </span></span><span><span>其中path="/game"是部|供讉K的url<br /> </span></span><span><span><br /> </span></span><span><span>其中1Q?步也可以合ؓ一步在server.xmld如下代码Q但我没验证?br /> </span></span><span><span>  <Context path="/game" debug="5" reloadable="true" crossContext="true"><br /> </span></span><span><span>        <Resource name="jdbc/game" auth="Container" type="javax.sql.DataSource" <br />         driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/game" username="root" password="3306" <br />         maxActive="20" maxIdle="10" maxWait="10000"/><br />   </Context><br /> </span></span><span><span>3Q在project的web.xml?lt;/web-app>前加?nbsp;<br /> </span></span><span><span> <resource-ref><br />     <res-ref-name>jdbc/game</res-ref-name><br />     <res-type>javax.sql.DataSource</res-type><br />     <res-auth>Container</res-auth><br />   </resource-ref><br /> <br /> </span></span><span><span>另外Q如果tomcat启动出现java.lang.NoClassDefFoundError: **********错误Q有可能是因Z断的用myeclipsedlibrary比如Hibernate 3.2 Core LibrarysQSpring 2.0 AOP LibrarysQSpring 2.0 Core LibrarysQSpring 2.0 Persistence Core Librarys{之后,deploy时myeclipse所有这些包都拷到WEB-INF的lib下但其中有一些jar包重复或不兼定w成的?/p> </span></span> <p><span><span>也可参考这网?br /> </span></span><span><span></p> <div> <p>昨天Q配|了一整天EclipseQ终于搞定。不q在配置好Tomcat的连接池之后Q测试与SQL Server2000的连接的时候出CCannot create JDBC driver of class '' for connect URL 'null'的错误。下面把我的解决Ҏ(gu)写出Q?font face="宋体" color="#ff0000">注意Q我使用的是JTDS驱动Q?/font></p> <p>1.<font color="#ff6600">请保证你的SQL Server 2000已经打过SP4的补丁了?/font>之前我出现Cannot create JDBC driver of class '' for connect URL 'null'的问题,原因是没打SP4的补丁!</p> <p>2.正确配置q接池!</p> <p><span>常用的配|?/span><span>Tomcat</span><span>q接池有两种Ҏ(gu)Q一是利?/span><span>Tomcat</span><span>的管理界面。二是修?/span><span>Tomcat</span><span>的配|文件?/span><span>q里单介l通过修改</span><span>Tomcat</span><span>的配|文仉|连接池的方法?/span><span>配置</span><span>Tomcat</span><span>q接<span>池需?/span>修改两个个地方,一?/span><span>$<span>Tomcat_HOME/conf/server.xml</span><span>Q?/span><span>$<span>Tomcat_HOME</span><span>是指</span><span>Tomcat</span><span>的安装目录,?/span><span><span>server.xml</span><span> <Host></span><span>?/span><span></Host></span><span>之间配置下面代码?/span></p> <p><span>例程</span> <span>1-3 </span><span>配置</span><span><span>server.xml</span><span>文g</span></p> <div> <p><span><Context path="/<span>Blog</span>" <span>docBase</span>="<span>Blog</span>" debug="5" <span>reloadable</span>="true" <span>crossContext</span>="true"></span></p> </div> <p><span>           </span><Resource name="<span>jdbc/blog</span>" auth="Container"</span></p> <p><span>           </span><span>type</span>="<span>javax.sql.DataSource</span>" <span>driverClassName</span>="<span>net.sourceforge.jtds.jdbc.Driver</span>"</span></p> <p><span>           </span><span><span>url</span>="jdbc:jtds:sqlserver://localhost:1305;DatabaseName=<span>blog</span>"</span></p> <p><span>           </span>username="<span>sa</span>" password="" <span>maxActive</span>="20" <span>maxIdle</span>="10" <span>maxWait</span>="-1"/></span></p> <div><span> </span></Context></span></div> <p><span>另外一个需要修改的地方?/span><span>$<span>Tomcat_HOME/webapps/bookshop/WEB-INF/web.xml</span><span>Q在?/span><span><span>web.xml</span><span>文g里增加下面代码:</span></p> <p><span>例程</span><span>1-4 </span><span>?/span><span><span>web.xml</span><span>文g里要增加的内?/span></p> <div> <p><span><<span>resource-ref</span>></span></p> </div> <div> <p><span>                  </span><<span>description></span><span>blog</span> DB connect pool</description></span></p> <p><span>                  </span><<span>res</span>-ref-name><span>jdbc/blog</span></<span>res</span>-ref-name></span></p> <p><span>                  </span><<span>res</span>-type><span>javax.sql.DataSource</span></<span>res</span>-type></span></p> <p><span>                  </span><<span>res</span>-auth>Container</<span>res</span>-auth></p> <p><span>         </span></resource-ref></span></p> </div> <div> <p><span>下面是测试代码:<br /> <%@ page <span>contentType</span>="text/<span>html<span>;charset</span>=GBK"%> <br /> </span><span><%@ page import="<span>java.sql</span>.*"%> <br /> </span><span><<span>html</span>> <br /> </span><span><<span>body</span>> <br /> </span><span><%<br />    </span><span>Context <span>ctx</span>=null;<br /> </span><span>   </span>Connection <span>cnn</span>=null;<br /> </span><span>  </span><span> </span>Statement stmt=null;<br /> </span><span>   </span><span>ResultSet</span> <span>rs</span>=null;<br /> </span><span>   </span><span>try</span><span>   </span>{<br /> </span><span>    </span><span><span>ctx</span><span>=</span>new <span>InitialContext</span>();<br /> </span><span>    </span>if(<span>ctx</span>==null) throw new Exception("</span><span>没有匚w的环?/span><span>");<br /> </span><span>    </span><span>DataSource</span> <span>ds</span><span>=(</span><span>DataSource</span>)<span>ctx.lookup</span>("<span>java:comp/env/jdbc/connectDB</span>");<br /> </span><span>    </span>if(<span>ds</span>==null) throw new Exception("</span><span>没有匚w数据?/span><span>");<span>    <br /> </span><span>   </span><span><span>cnn</span><span>=</span><span>ds.getConnection</span>();<span>    </span>stmt=<span>cnn.createStatemen</span>(<span>ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY</span>); <br /> </span><span>String <span>sql</span>="select * from <span>blog_user</span>"; <br /> </span><span><span><span>rs</span></span><span><span>=</span><span><span>stmt.executeQuery</span><span>(<span>sql</span>); <br /> </span><span><%<span>out.print</span>("</span><span>数据库操作成功,恭喜?/span><span>");%> <br /> </span><span><%<br /> </span><span><span>}catch</span><span>(Exception <span>ee</span>){<br /> </span><span>     </span><span><span>System.out.println</span><span>(</span>"connect db <span>error:"+ee.getMessage</span>());<br /> </span><span>     </span><span>return</span> false;<br /> </span><span>}</span><span><span>finally<br /> </span><span>   </span>{<br /> </span><span>    </span><span>if(</span><span>rs</span>!=null)<span>rs.close</span>();<br /> </span><span>    </span><span>if(</span>stmt!=null)<span>stmt.close</span>();<br /> </span><span>    </span><span>if(</span><span>cnn</span>!=null)<span>cnn.close</span>();<br /> </span><span>    </span><span>if(</span><span>ctx</span>!=null)<span>ctx.close</span>();<br /> </span><span>   </span>} <br /> </span><span>%> <br /> </span><span></body> <br /> </span><span></html></span></p> </div> </div> <p><br />  </p> </span></span><span></span> <img src ="http://www.aygfsteel.com/PariScamper/aggbug/151574.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/PariScamper/" target="_blank">PariScamper</a> 2007-10-09 23:10 <a href="http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151574.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>tomcat启动时出现java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor的解x?/title><link>http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151557.html</link><dc:creator>PariScamper</dc:creator><author>PariScamper</author><pubDate>Tue, 09 Oct 2007 14:22:00 GMT</pubDate><guid>http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151557.html</guid><wfw:comment>http://www.aygfsteel.com/PariScamper/comments/151557.html</wfw:comment><comments>http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151557.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/PariScamper/comments/commentRss/151557.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/PariScamper/services/trackbacks/151557.html</trackback:ping><description><![CDATA[<div>在用Spring的AOP~程Ӟ会用到这几个libQ?br /> asm-2.2.2.jar<br /> asm-commons-2.2.2.jar<br /> asm-util-2.2.2.jar</div> <div>Hibernate使用如下libQ?/div> <div>asm.jar<br /> asm-attrs.jar</div> <div>其中asm-2.2.2.jar与asm.jar存在cM的冲H!Q!<br /> 使用其中之一或两者都使用Q可能会出现如下错误Q?br /> java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor<br /> java.lang.NoClassDefFoundError: org/objectweb/asm/commons/EmptyVisitor<br /> java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit。。。。。?br /> 解决办法是:<br /> 1.Lc\径上的关于Hibernate?个lib<br /> asm.jar<br /> asm-attrs.jar<br /> cglib-2.1.3.jar<br /> 2.加入Spring中的以下4个lib<br /> asm-2.2.2.jar<br /> asm-commons-2.2.2.jar<br /> asm-util-2.2.2.jar<br /> cglib-nodep-2.1_3.jar<br /> </div> <img src ="http://www.aygfsteel.com/PariScamper/aggbug/151557.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/PariScamper/" target="_blank">PariScamper</a> 2007-10-09 22:22 <a href="http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151557.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>web应用下文件\径问?/title><link>http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151524.html</link><dc:creator>PariScamper</dc:creator><author>PariScamper</author><pubDate>Tue, 09 Oct 2007 12:14:00 GMT</pubDate><guid>http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151524.html</guid><wfw:comment>http://www.aygfsteel.com/PariScamper/comments/151524.html</wfw:comment><comments>http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151524.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/PariScamper/comments/commentRss/151524.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/PariScamper/services/trackbacks/151524.html</trackback:ping><description><![CDATA[<p>一般我们把文g比如名叫proxool.xml攑֜src目录下,q样deploy的时候myeclipse会自动拷贝到WEB-INF\classes\目录下,如果代码中需要对文gq行讉KQ那么如何在web应用中得到该文g路径?<br /> 可以<br /> String path=HibernateException.class.getClassLoader().getResource("/proxool.xml").getPath();<br /> 但没有部|直接在myeclipse下debugӞq样得到的path会出现错误,此时可以path设ؓl对路径q行?/p> <img src ="http://www.aygfsteel.com/PariScamper/aggbug/151524.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/PariScamper/" target="_blank">PariScamper</a> 2007-10-09 20:14 <a href="http://www.aygfsteel.com/PariScamper/archive/2007/10/09/151524.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ϲ</a>| <a href="http://" target="_blank">Ϫ</a>| <a href="http://" target="_blank">Ȫ</a>| <a href="http://" target="_blank">ƽ</a>| <a href="http://" target="_blank">¡</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ѱ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͤ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">߷</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ϲ</a>| <a href="http://" target="_blank">ƽ</a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">»Ȱ</a>| <a href="http://" target="_blank">ʡ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">˼é</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͳ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">书</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ʯ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ƽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>