发表于: 2018-04-07 20:34:01

1 642


今日进度:

1.首先在处理录入字符串后与之比较,之前是“==”但是没有效果,百度结果要使用equals,所以代码如下:

,但是在how2j给出答案,这些代码可以略为一步:

,略去了定义部分。

2.对于sql语言limit了解不多,在语句成功查询了十次以后,发现不能用此方式删除“delete * from hero limit 0,10”,本想在rs.next()中循环调用某特定值,将语句放入sql0-sql9中,但是百度后发现next()只是向前推进的指针,在下一个为空是返回flase,所以想要做这一点就需要在while中用for进行遍历,效率极其低下。大概要多数十倍的运行时间。百思不得解后在how2j的答案

理解为:事务不仅是在代码内堆积不发送的sql语言,通过execute可以将语句提交到准备序列上,然后通过commit进行一次性发送。不需要准备sql0-9十条空string语句为之准备。//其实how2j内例子举得很清楚,但是由于两次提交excute和两句sql,看的粗略理解不够。

3.但是对于答案部分不太理解:

答案在这里建立了两个连接对象,百度Statement得到答案:

在默认情况下,同一时间每个 Statement 对象在只能打开一个 ResultSet 对象。因此,如果读取一个 ResultSet 对象与读取另一个交叉,则这两个对象必须是由不同的 Statement 对象生成的。如果存在某个语句的打开的当前 ResultSet 对象,则 Statement 接口中的所有执行方法都会隐式关闭它。

理解:在st4Query执行完成查找,并在resultset中进行遍历的时候,statement对象仍在使用,所以如果想要传输delete语句就需要第二个statement对象来帮忙,所以在开头建立了两个statement对象以方便在查询的时候直接执行删除。

4.ORM与DAO:ORM,一个对象,对应数据库内一条数据。建立一个带有sql表内数据属性的对象,然后建立数据库连接,通过ResultSet取得某个表内数据,并挨个赋值给对象,(或根据对象对sql内数据进行赋值)就是ORM。而DAO,则是对ORM的相同步骤进行抽离,比如Connectin,Close。

明天计划的事情:

这两天首先是ORM和DAO的代码,然后开始准备spring的学习。

遇到的问题与收获:在今日完成事情中已经写过。


返回列表 返回列表
评论

    分享到