??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品xxx在线观看www,欧美另类一区,91精品国产91综合久久蜜臀http://www.aygfsteel.com/lilingfeng/java夜未?/description>zh-cnWed, 18 Jun 2025 11:23:04 GMTWed, 18 Jun 2025 11:23:04 GMT60JAVA中关于SPLITҎ的问?/title><link>http://www.aygfsteel.com/lilingfeng/archive/2006/09/03/67382.html</link><dc:creator>李攀</dc:creator><author>李攀</author><pubDate>Sun, 03 Sep 2006 03:34:00 GMT</pubDate><guid>http://www.aygfsteel.com/lilingfeng/archive/2006/09/03/67382.html</guid><wfw:comment>http://www.aygfsteel.com/lilingfeng/comments/67382.html</wfw:comment><comments>http://www.aygfsteel.com/lilingfeng/archive/2006/09/03/67382.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.aygfsteel.com/lilingfeng/comments/commentRss/67382.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/lilingfeng/services/trackbacks/67382.html</trackback:ping><description><![CDATA[<DIV class=posttitle><a class="singleposttitle" id="viewpost1_TitleUrl" href="/zhanglijun33/articles/split.html">java ?string .split()使用Ҏ</a> </DIV> <p>在用String.splitҎ分隔字符串时Q分隔符如果用到一些特D字W,可能会得不到我们预期的结果?br /><br />我们看jdk doc中说?br /><br />public String[] split(String regex)<br /><br />Splits this string around matches of the given regular expression. <br /><br />参数regex是一?regular-expression的匹配模式而不是一个简单的StringQ他对一些特D的字符可能会出C预想不到的结果,比如试下面的代码:<br /><br />用竖U?| 分隔字符Ԍ你将得不到预期的l果<br /><br />  String[] aa = "aaa|bbb|ccc".split("|");<br />  //String[] aa = "aaa|bbb|ccc".split("\\|"); q样才能得到正确的结?br /><br />  for (int i = 0 ; i <aa.length ; i++ ) {<br />    System.out.println("--"+aa<i>);<br />  }<br /><br />用竖 * 分隔字符串运行将抛出java.util.regex.PatternSyntaxException异常Q用加号 + 也是如此?br /><br />  String[] aa = "aaa*bbb*ccc".split("*");<br />  //String[] aa = "aaa|bbb|ccc".split("\\*"); q样才能得到正确的结?  <br /><br />  for (int i = 0 ; i <aa.length ; i++ ) {<br />    System.out.println("--"+aa<i>);<br />  }<br /><br />昄Q? * 不是有效的模式匹配规则表辑ּQ用"\\*" "\\+"转义后即可得到正的l果?br /><br />"|" 分隔串时虽然能够执行Q但是却不是预期的目的,"\\|"转义后即可得到正的l果?br /><br />q有如果惛_串中使用"\"字符Q则也需要{?首先要表?aaaa\bbbb"q个串就应该?aaaa\\bbbb",如果要分隔就应该q样才能得到正确l果Q?br /><br />String[] aa = "aaa\\bbb\\bccc".split(<a>\\\\</a>);</i></i></p><h4 class="TextColor1" id="subjcns!94407A6582AF46B7!300" style="MARGIN-BOTTOM: 0px">JAVA中关于SPLITҎ的问?/h4><DIV id=msgcns!94407A6582AF46B7!300><DIV>今天发现一个简单的问题Q就是用SPLITҎ获取的数l元素个C实际应该得到的不相同Q真是百思不其解?lt;/DIV><DIV>  l过大量试和猜惻Il于得出问题出在Ҏ本n。实例:</DIV><DIV>      q序自动生成了一个中为:</DIV><DIV>      String xx = "100000004768262367, 梁旭, ? 2147, 0, 2147, 1745.00, 402.00,, 1000.00,,,,,";</DIV><DIV>      以上语句实际上应该返?5个元素,但用SPLITҎ却只q回?0元素(?000.00为止)?lt;/DIV><DIV>      照以上语句看只能怀疑是Ҏ本n的问题,但从何着手呢Q?lt;/DIV><DIV>      呵呵Q再一ơ证明了灉|是你无法L捉的Q是无法勉强获得的,它就是想来就来,惌p的?lt;/DIV><DIV>      逗号Q就是它Q不了先试试。把后面的几个全部去除,l果正确Q再向前截取Q结果还是正,问题只会出现在后面的几个逗号上?lt;/DIV><DIV>     但这几个单明了的逗号会出什么问题呢Q难道是跟得太紧了呀Q不会吧。这L话ؓ什?000.00前面的两个能正确?lt;/DIV><DIV>      看似扑ֈ问题所在,却又好像是找了一个死胡同?lt;/DIV><DIV>      l过漫长的思考后q是一愁莫展。最后还是决定试试唯一惛_的问题所在,把后面每个逗号都间隔一个空D试,天啦Q没惛_奇迹是这样出现的Q结果竟然正了Q!Q?lt;/DIV><DIV>      l箋试了几种情况Q?lt;/DIV><DIV>      String xx = " , , , ,, ";<br />      System.out.println(xx.split("<a><font color="#b6385d">,").length</font></a>);</DIV><DIV>      以上语句输出?Q与实际l果相符?lt;/DIV><DIV><DIV>      String xx = ",,,,, ";<br />      System.out.println(xx.split("<a><font color="#b6385d">,").length</font></a>);</DIV><DIV>      以上语句输出?Q与实际l果相符?lt;/DIV><DIV><DIV>      String xx = " , , , ,,";<br />      System.out.println(xx.split("<a><font color="#b6385d">,").length</font></a>);</DIV><DIV>      以上语句输出?Q与实际l果相符?lt;/DIV><DIV><DIV>      String xx = " , , , , ,";<br />      System.out.println(xx.split("<a><font color="#b6385d">,").length</font></a>);</DIV><DIV>      以上语句输出?Q与实际l果相符?lt;/DIV><DIV>l上以上试Q发C问题在于最后一个逗号?lt;/DIV><DIV>如果最后没有间隔字W则不能正确的返回元素?lt;/DIV></DIV></DIV></DIV></DIV><br /><br /><img src ="http://www.aygfsteel.com/lilingfeng/aggbug/67382.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/lilingfeng/" target="_blank">李攀</a> 2006-09-03 11:34 <a href="http://www.aygfsteel.com/lilingfeng/archive/2006/09/03/67382.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>jspq接数据库大?/title><link>http://www.aygfsteel.com/lilingfeng/archive/2006/09/03/67381.html</link><dc:creator>李攀</dc:creator><author>李攀</author><pubDate>Sun, 03 Sep 2006 03:30:00 GMT</pubDate><guid>http://www.aygfsteel.com/lilingfeng/archive/2006/09/03/67381.html</guid><wfw:comment>http://www.aygfsteel.com/lilingfeng/comments/67381.html</wfw:comment><comments>http://www.aygfsteel.com/lilingfeng/archive/2006/09/03/67381.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.aygfsteel.com/lilingfeng/comments/commentRss/67381.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/lilingfeng/services/trackbacks/67381.html</trackback:ping><description><![CDATA[一、jspq接Oracle8/8i/9i数据库(用thin模式Q?<br />testoracle.jsp如下Q?<br /><%@ page contentType="text/html;charset=gb2312"%> <br /><%@ page import="java.sql.*"%> <br /><html> <br /><body> <br /><%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); <br />String url="jdbc:oracle:thin:@localhost:1521:orcl"; <br />//orclZ的数据库的SID <br />String user="scott"; <br />String password="tiger"; <br />Connection conn= DriverManager.getConnection(url,user,password); <br />Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); <br />String sql="select * from test"; <br />ResultSet rs=stmt.executeQuery(sql); <br />while(rs.next()) {%> <br />您的W一个字D内容ؓQ?lt;%=rs.getString(1)%> <br />您的W二个字D内容ؓQ?lt;%=rs.getString(2)%> <br /><%}%> <br /><%out.print("数据库操作成功,恭喜?);%> <br /><%rs.close(); <br />stmt.close(); <br />conn.close(); <br />%> <br /></body> <br /></html> <p><br />二、jspq接Sql Server7.0/2000数据?<br />testsqlserver.jsp如下Q?<br /><%@ page contentType="text/html;charset=gb2312"%> <br /><%@ page import="java.sql.*"%> <br /><html> <br /><body> <br /><%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); <br />String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"; <br />//pubsZ的数据库?<br />String user="sa"; <br />String password=""; <br />Connection conn= DriverManager.getConnection(url,user,password); <br />Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); <br />String sql="select * from test"; <br />ResultSet rs=stmt.executeQuery(sql); <br />while(rs.next()) {%> <br />您的W一个字D内容ؓQ?lt;%=rs.getString(1)%> <br />您的W二个字D内容ؓQ?lt;%=rs.getString(2)%> <br /><%}%> <br /><%out.print("数据库操作成功,恭喜?);%> <br /><%rs.close(); <br />stmt.close(); <br />conn.close(); <br />%> <br /></body> <br /></html> </p><p><br />三、jspq接DB2数据?<br />testdb2.jsp如下Q?<br /><%@ page contentType="text/html;charset=gb2312"%> <br /><%@ page import="java.sql.*"%> <br /><html> <br /><body> <br /><%Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance(); <br />String url="jdbc:db2://localhost:5000/sample"; <br />//sampleZ的数据库?<br />String user="admin"; <br />String password=""; <br />Connection conn= DriverManager.getConnection(url,user,password); <br />Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); <br />String sql="select * from test"; <br />ResultSet rs=stmt.executeQuery(sql); <br />while(rs.next()) {%> <br />您的W一个字D内容ؓQ?lt;%=rs.getString(1)%> <br />您的W二个字D内容ؓQ?lt;%=rs.getString(2)%> <br /><%}%> <br /><%out.print("数据库操作成功,恭喜?);%> <br /><%rs.close(); <br />stmt.close(); <br />conn.close(); <br />%> <br /></body> <br /></html> </p><p><br />四、jspq接Informix数据?<br />testinformix.jsp如下Q?<br /><%@ page contentType="text/html;charset=gb2312"%> <br /><%@ page import="java.sql.*"%> <br /><html> <br /><body> <br /><%Class.forName("com.informix.jdbc.IfxDriver").newInstance(); <br />String url = <br />"jdbc:informix-sqli://123.45.67.89:1533/testDB:INformIXSERVER=myserver; <br />user=testuser;password=testpassword"; <br />//testDBZ的数据库?<br />Connection conn= DriverManager.getConnection(url); <br />Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); <br />String sql="select * from test"; <br />ResultSet rs=stmt.executeQuery(sql); <br />while(rs.next()) {%> <br />您的W一个字D内容ؓQ?lt;%=rs.getString(1)%> <br />您的W二个字D内容ؓQ?lt;%=rs.getString(2)%> <br /><%}%> <br /><%out.print("数据库操作成功,恭喜?);%> <br /><%rs.close(); <br />stmt.close(); <br />conn.close(); <br />%> <br /></body> <br /></html> </p><p><br />五、jspq接Sybase数据?<br />testmysql.jsp如下Q?<br /><%@ page contentType="text/html;charset=gb2312"%> <br /><%@ page import="java.sql.*"%> <br /><html> <br /><body> <br /><%Class.forName("com.sybase.jdbc.SybDriver").newInstance(); <br />String url =" jdbc:sybase:Tds:localhost:5007/tsdata"; <br />//tsdataZ的数据库?<br />Properties sysProps = System.getProperties(); <br />SysProps.put("user","userid"); <br />SysProps.put("password","user_password"); <br />Connection conn= DriverManager.getConnection(url, SysProps); <br />Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); <br />String sql="select * from test"; <br />ResultSet rs=stmt.executeQuery(sql); <br />while(rs.next()) {%> <br />您的W一个字D内容ؓQ?lt;%=rs.getString(1)%> <br />您的W二个字D内容ؓQ?lt;%=rs.getString(2)%> <br /><%}%> <br /><%out.print("数据库操作成功,恭喜?);%> <br /><%rs.close(); <br />stmt.close(); <br />conn.close(); <br />%> <br /></body> <br /></html> </p><p><br />六、jspq接MySQL数据?<br />testmysql.jsp如下Q?<br /><%@ page contentType="text/html;charset=gb2312"%> <br /><%@ page import="java.sql.*"%> <br /><html> <br /><body> <br /><%Class.forName("org.gjt.mm.mysql.Driver").newInstance(); <br />String url ="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1" <br />//testDBZ的数据库?<br />Connection conn= DriverManager.getConnection(url); <br />Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); <br />String sql="select * from test"; <br />ResultSet rs=stmt.executeQuery(sql); <br />while(rs.next()) {%> <br />您的W一个字D内容ؓQ?lt;%=rs.getString(1)%> <br />您的W二个字D内容ؓQ?lt;%=rs.getString(2)%> <br /><%}%> <br /><%out.print("数据库操作成功,恭喜?);%> <br /><%rs.close(); <br />stmt.close(); <br />conn.close(); <br />%> <br /></body> <br /></html> </p><p><br />七、jspq接PostgreSQL数据?<br />testmysql.jsp如下Q?<br /><%@ page contentType="text/html;charset=gb2312"%> <br /><%@ page import="java.sql.*"%> <br /><html> <br /><body> <br /><%Class.forName("org.postgresql.Driver").newInstance(); <br />String url ="jdbc:postgresql://localhost/soft" <br />//softZ的数据库?<br />String user="myuser"; <br />String password="mypassword"; <br />Connection conn= DriverManager.getConnection(url,user,password); <br />Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); <br />String sql="select * from test"; <br />ResultSet rs=stmt.executeQuery(sql); <br />while(rs.next()) {%> <br />您的W一个字D内容ؓQ?lt;%=rs.getString(1)%> <br />您的W二个字D内容ؓQ?lt;%=rs.getString(2)%> <br /><%}%> <br /><%out.print("数据库操作成功,恭喜?);%> <br /><%rs.close(); <br />stmt.close(); <br />conn.close(); <br />%> <br /></body> <br /></html> <br /></p><img src ="http://www.aygfsteel.com/lilingfeng/aggbug/67381.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/lilingfeng/" target="_blank">李攀</a> 2006-09-03 11:30 <a href="http://www.aygfsteel.com/lilingfeng/archive/2006/09/03/67381.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>数据库中数据表三范式http://www.aygfsteel.com/lilingfeng/archive/2006/09/03/67380.html李攀李攀Sun, 03 Sep 2006 03:28:00 GMThttp://www.aygfsteel.com/lilingfeng/archive/2006/09/03/67380.htmlhttp://www.aygfsteel.com/lilingfeng/comments/67380.htmlhttp://www.aygfsteel.com/lilingfeng/archive/2006/09/03/67380.html#Feedback0http://www.aygfsteel.com/lilingfeng/comments/commentRss/67380.htmlhttp://www.aygfsteel.com/lilingfeng/services/trackbacks/67380.html所谓第一范式Q?NFQ是指数据库表的每一列都是不可分割的基本数据,同一列中不能有多个|卛_体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间ؓ一对多关系。在W一范式Q?NFQ中表的每一行只包含一个实例的信息。例如,对于?-2 中的员工信息表,不能员工信息都攑֜一列中昄Q也不能其中的两列或多列在一列中昄Q员工信息表的每一行只表示一个员工的信息Q一个员工的信息在表中只出现一ơ。简而言之,W一范式是无重复的列?/p>


W二范式Q?NFQ要求数据库表中的每个实例或行必d以被惟一地区分。ؓ实现区分通常需要ؓ表加上一个列Q以存储各个实例的惟一标识。如
?-2 员工信息表中加上了员工编Pemp_idQ列Q因为每个员工的员工~号是惟一的,因此每个员工可以被惟一区分。这个惟一属性列被称Z关键字或主键、主码?br />    W二范式Q?NFQ要求实体的属性完全依赖于d键字。所谓完全依赖是指不能存在仅依赖d键字一部分的属性,如果存在Q那么这个属性和d键字的这一部分应该分离出来形成一个新的实体,新实体与原实体之间是一对多的关pRؓ实现区分通常需要ؓ表加上一个列Q以存储各个实例的惟一标识。简而言之,W二范式是非主属性非部分依赖于主关键字?br />

W三范式Q?NFQ要求一个数据库表中不包含已在其它表中已包含的非d键字信息。例如,存在一个部门信息表Q其中每个部门有部门~号Qdept_idQ、部门名U、部门简介等信息。那么在?-2
的员工信息表中列出部门编号后׃能再部门名U、部门简介等与部门有关的信息再加入员工信息表中。如果不存在部门信息表,则根据第三范式(3NFQ也应该构徏它,否则׃有大量的数据冗余。简而言之,W三范式是属性不依赖于其它非d性?



李攀 2006-09-03 11:28 发表评论
]]>
վ֩ģ壺 | ֥| ũ| ʯ| | | ں| | | | | | | | | ̫| ֹ| | ¹| | | | տ| | | | ԫ| | | | | ʦ| ػ| ˫| ³ľ| ²| | ̩| | | |