??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品久久久久三级,欧美成人猛片aaaaaaa,天堂在线视频 http://www.aygfsteel.com/wqhtomcat/???/description>zh-cn Thu, 19 Jun 2025 05:22:58 GMT Thu, 19 Jun 2025 05:22:58 GMT 60 事务QTransactionQ的一些研I?/title> http://www.aygfsteel.com/wqhtomcat/archive/2006/12/08/86401.htmlwqhtomcat wqhtomcat Fri, 08 Dec 2006 08:56:00 GMT http://www.aygfsteel.com/wqhtomcat/archive/2006/12/08/86401.html http://www.aygfsteel.com/wqhtomcat/comments/86401.html http://www.aygfsteel.com/wqhtomcat/archive/2006/12/08/86401.html#Feedback 0 http://www.aygfsteel.com/wqhtomcat/comments/commentRss/86401.html http://www.aygfsteel.com/wqhtomcat/services/trackbacks/86401.html
关于事务Q?/span>
Transation
Q,大家肯定都不陌生了,因ؓ作ؓ一?/span>
Web
E序开发h员来_我们一般都会和数据库打交道Q然后对数据库中的数据进行一pd的操作,那么Z保证我们Ҏ(gu)据操作的合理性我们就不能不用C务,虽然事务的实C需要我们去操心Q但是我们还是需要对事务q行一些了解,q样我们才能够明白我们日常所使用的东西,比如我们常用的开源框?/span>
Spring
?/span>
Hibernat
{都会涉及到事务的问题,虽然事务有很多不同的实现Q如W合
JTA
的事先,
JDBC
的实现等{,但是其原理都是差不多的?/span>
对于事务的理解,q个我觉得有必要说一下,一般大家看到的理解都是很正式的、书面的Q有时候让得有些ؕQƈ且细节的东西太多Q在q里我就不说说课贴书了,呵呵Q那我就把我自己的一点理解说一下:刚接触到事务的时候,感觉q有些模p,慢慢的感觉清C一些,事务是ؓ了什么而生的呢?是Z对付q发而造成的对数据的修改以及读取时的错误(或者说是一些不正常的现象)Q如果没有ƈ发,没有资源的同时访问,估计也就用不C务这个玩意了Q呵呵,像我们在单M使用的单用户的Y件一P应该不会用到事务吧,一般又没有你争Q控制个啥子啊!我觉得事务就可以q么理解?/span>
而对于事务的分类Q一般分为本C务,即一个数据库的情况;再一个就是全局事务Q也是多个数据库的情况Q其数据库事务的控制UCؓ
XA
Q,具体的情况可以看下面几个链接的介l:
http://blog.csdn.net/ladofwind/archive/2006/09/08/1194812.aspx
关于数据库事务的基本概念
http://www.huihoo.com/middleware/trade_middleware.html
里面有介l关?/span>
XA
的内?/span>
http://www.javaeye.com/topic/6302
对跨数据库事务的一些讨论(ȝ一下就是一般采用两阶段提交的方式来解决跨数据库的事务问题)
http://msdn2.microsoft.com/zh-cn/library/ckawh9ct(VS.80).aspx MS
的关于单阶段和多阶段事务的提交的一些说明文?/span>
q且q要支持
XA
的数据库q接池,开源的?/span>
XAPool
{?/span>
要说的就是这么多了,估计也基本够?/span>
Web
开发中对其有一个了?/span>
~
如果有更加深入的内容再进行讨论和补充?/span>
]]>JAVA REFLECTION 学习(fn) http://www.aygfsteel.com/wqhtomcat/archive/2006/12/07/86108.htmlwqhtomcat wqhtomcat Thu, 07 Dec 2006 07:55:00 GMT http://www.aygfsteel.com/wqhtomcat/archive/2006/12/07/86108.html http://www.aygfsteel.com/wqhtomcat/comments/86108.html http://www.aygfsteel.com/wqhtomcat/archive/2006/12/07/86108.html#Feedback 0 http://www.aygfsteel.com/wqhtomcat/comments/commentRss/86108.html http://www.aygfsteel.com/wqhtomcat/services/trackbacks/86108.html
今天感觉q是有必要再理解一?/span>
Java Reflection
?/span>
在说
Reflection
之前Q我感觉q是先对静态语a和动态语a有一个了解比较好Q下面来看一下一些资料:
1
?/span>
http://cavingdeep.cnblogs.com/archive/2005/08/03/206374.html
说明了什么是静态的Q什么是动态的Qȝ一下就是:
动态语aQ准地_是指E序在运行时可以改变其结构:新的函数可以被引q,已有的函数可以被删除{在l构上的变化。比如众所周知?/span>
ECMAScript(JavaScript)
便是一个动态语a。除此之外如
Ruby
?/span>
Python
{也都属于动态语aQ?/span>
C
?/span>
C++
{语a则不属于动态语a。(通俗的说法就是:静态的是事先进行规划,考虑到后面需要做的一些事情;而动态的是管他后面会是怎么样呢Q先开始再_要的是速度Q呵呵,q有点和我们生活中做人做事的方式有些怼
~
Q?/span>
2
?/span>
http://www.javaeye.com/topic/35763
对动态语a和静态语a的一个比较新颖的认识Q主要从内存的分配和利用情况来说的,也就是说Q动态语a不事先分配内存,到用的时候再_而静态语a会先分配内存Qƈq行查,大了放不下啊Q呵?/span>
3
?/span>
http://robbin.javaeye.com/blog/33971
讨论了静态语a和动态语a在开发方面的优势和用情늭Q还在讨ZQ不好定论?/span>
注:一般来_静态语a比较Ҏ(gu)调试Q而动态语a不太Ҏ(gu)调试Q因为变数太多,呵呵?/span>
׃静态语a不够灉|Q再加上现在随着pȝ的扩大,以及框架建立的需要,所以说静态语a也需要越来越多的动态的Ҏ(gu),而作为现在首当其冲的
Java
语言Q也要通过反射Q在执行期间做一些动态的调整以适应多变的需求?/span>
?/span>
Reflection
机制中,最重要的一个类是
Class
c,q里面记录了我们所定义?/span>
class
中的一些信息,我们可以通过其获得我们定义的
变量、方法、构造函C及父cȝ{,q且可以动态的对其q行调用Q这样就可以在某些时候将我们没有事先设计的代码在q行期间执行Q而不对原有的E序q行改变?/span>
具体的用样例可以参考:
Core Java 2
W六、七版,或者侯L(fng)
java Reflection
教程Q下载地址Q?a href="/Files/wqhtomcat/Java">http://www.aygfsteel.com/Files/wqhtomcat/Java反射机制-javatwo-2004-reflection.rarQ?/span>
]]> TASK LIST http://www.aygfsteel.com/wqhtomcat/archive/2006/12/06/85974.htmlwqhtomcat wqhtomcat Wed, 06 Dec 2006 15:09:00 GMT http://www.aygfsteel.com/wqhtomcat/archive/2006/12/06/85974.html 1?font style="BACKGROUND-COLOR: #ff0000">Java Reflection 2、Hibernate 3、Spring 4、Struts/WebWork/Struts2 5?font style="BACKGROUND-COLOR: #ffa500">事务控制 6、App Server 7、Java基础深入 8、设计模?br />9、Unix/Linux操作pȝ 10、JUnit 11、SVN/CVS 12、敏捷开发(XPQ?br />13、快速构?br />14、Oracle 待箋...... =================================================== 学习(fn)无止境~ ]]>Java5范型研究 http://www.aygfsteel.com/wqhtomcat/archive/2006/12/06/85961.htmlwqhtomcat wqhtomcat Wed, 06 Dec 2006 14:27:00 GMT http://www.aygfsteel.com/wqhtomcat/archive/2006/12/06/85961.html http://www.aygfsteel.com/wqhtomcat/comments/85961.html http://www.aygfsteel.com/wqhtomcat/archive/2006/12/06/85961.html#Feedback 0 http://www.aygfsteel.com/wqhtomcat/comments/commentRss/85961.html http://www.aygfsteel.com/wqhtomcat/services/trackbacks/85961.html
1?span style="FONT: 7pt 'Times New Roman'">
java
范型的实现原理:
Java
语言中的泛型基本上完全在~译器中实现Q由~译器执行类型检查和cd推断Q然后生成普通的非泛型的字节码。这U实现技术称为擦除(
erasure
Q(~译器用泛型类型信息保证类型安全,然后在生成字节码之前其清除Q,所以说其实
java
的所谓的范型知识形式上的Q仅仅是在编译期做了手脚Q生成了一些标明范型的变量Q应些都是编译期的行为,那么引用
buaawhl
的一句话是_
java
只能支持
Field, Method
?/span>
generic type
信息Q这些信息存攑֜
class
文g?/span>
contant pool
中,作ؓ字符串常量出玎ͼ标志?/span>
signature
?/span>
2?span style="FONT: 7pt 'Times New Roman'">
׃
Java
范型的实现采用的?/span>
Erasure
方式Q仅仅是在编译期q行查,所以在q行q程中我们就不能q行范型的实例化Q因为我们不知道到底要实例化什么类型的对象Q与原来我们手动q行强制cd转换的一P我们如果知道我们能够转换成什么对象,那么我们可以将我们知道的类型的信息传递过去,也就是吧
XX.class
传递过去,q样
jvm
q道我们要实例化什么样的对象了?br />
3?span style="FONT: 7pt 'Times New Roman'">
原来
Class<T>
表示的是一个范型的
Class
cdQؓ什么搞的像
List<T>
样式的范型声明呢Q搞得我qL(fng)了好长时_一致以为是一个类似容器的东西呢,q个语法感觉到有些奇怪,见笑了:Q,q个cM般用来接?/span>
XX.class
q回的对象?/span>
4?span style="FONT: 7pt 'Times New Roman'">
要想?/span>
java
中范型用得爽Q还得配合用反才行啊。由?/span>
Java
采用了擦拭法q行范型的支持,所以我们依旧不能在q行期获取到具体的类型的信息Q而至能够在我们进行设计的时候对其类型信息进行指定,那么我们指定的类型的信息可以存攑֜~译后生成的
class
文g中了Q我们可以通过反射来获取到具体的存攄信息Q要获取到动态的传入的信息就不行了?/span>
如下所C:
定义一个超c:
1
public
class
SuperClass
<
T
extends
Number
>
{
2
}
3
再定义一个子c:
import
java.lang.reflect.ParameterizedType;
public
class
MyTest
<
T
>
extends
SuperClass
<
Integer
>
{
private
Class clazz
=
null
;
public
void
printClassInf()
{ System. out .println(
this
.getClass().getName()); System. out .println(
this
.getClass().getTypeParameters()[
0
].getName()); System. out .println(
this
.getClass().getSuperclass().getTypeParameters()[
0
].getName()); clazz
=
(Class) ((ParameterizedType)
this
.getClass().getGenericSuperclass()).getActualTypeArguments()[
0
]; String out
=
clazz .getName(); System. out .println(out); }
public
static
void
main(String[] args)
{ MyTest test
=
new
MyTest
<
Shit
>
(); test.printClassInf(); }
}
那么我们只能够获得我们实现定义好的要传入?/span>
SuperClass
cM?/span>
Integer
cd的范型信息,而不能得到我们在E序中传入的
Shit
cȝcd信息Q因?/span>
java
范型的信息不记录的实例中Q仅仅在cMq行了记录(q点感觉
java
的范型还不够成熟Q可能因向后兼容{原因吧Q?/span>
参考资料:
http://www.duduwolf.com/wiki/2006/51.html
http://calvin.javaeye.com/blog/33139
白衣?/span>
SpringSide
中对范型使用的说?/span>
http://www-128.ibm.com/developerworks/cn/java/j-jtp01255.html
Java
理论和实践关于范型的讲解
http://www.nirvanastudio.org/java/dont-repeat-the-dao.html
范型实现可重?/span>
DAO
的文?/span>
http://gceclub.sun.com.cn/Java_Docs/html/zh_CN/api/java/lang/reflect/ParameterizedType.html#getActualTypeArguments()
http://buaawhl.javaeye.com/blog/22020
范型的实现原理,讲的比较清楚
]]> 你的团队够高效吗Q?/title> http://www.aygfsteel.com/wqhtomcat/archive/2006/12/06/85837.htmlwqhtomcat wqhtomcat Wed, 06 Dec 2006 06:19:00 GMT http://www.aygfsteel.com/wqhtomcat/archive/2006/12/06/85837.html http://www.aygfsteel.com/wqhtomcat/comments/85837.html http://www.aygfsteel.com/wqhtomcat/archive/2006/12/06/85837.html#Feedback 0 http://www.aygfsteel.com/wqhtomcat/comments/commentRss/85837.html http://www.aygfsteel.com/wqhtomcat/services/trackbacks/85837.html 1、团队的文化。听着好像很大Q又是一大帽子Q空而无呻I不过q个实是必不可的。有时候团队的文化q不是谁能够说的的Q他和团队的成员Q团队的气氛以及团队的方向有着直接的关pR?br /> 2、团队的学习(fn)气氛。这里我惛_表一下自q观点Q我比较d的是知识׃n型的团队学习(fn)气氛Q大家各有所长,能够怺交流Q相互帮助,形成一U定期交技术的氛围Q在q一点上Q一个团队的主要负责人应该v到领导和推进的作用,比如_可以让团队的成员自己感兴趣的技术汇报上来,然后q行归类整理Q可以在目的技术考察期进行技术研I的d分配Q如果能够有_的h手进行Pair研究是最好的了,然后q行技术的交流和培训,使团队中的每个h都能够有一U参与感和成感?br /> 3、团队共享知识^台。h见多了,很容易就C觉得十分怼的hQ程序写多了Q相似的E序也就很常见了Q呵呵,q就是我们常说的软g的复用,但是真正能够q行完全照搬的复用的情况很少Q大部分q是需要感觉实际的情况q行调整和优化的Q然而我觉得思想的复用或者相关知识的复用是很常见的。比如说团队内部有h已经对Log技术进行了比较深入的研IӞ可能大家q都不知道,而另外一为成员也惛_该技术进行一些研IӞ但是他却不知道他的队友已l对其进行了比较全面的研IӞq时候我们采取的方式一般都是利用搜索引擎进行相关信息的搜烦Q然后进行知识收集和整理Q这样存在的一个问题就是,我们不能和文章的作者进行有效及时的交流。如果们有了一个知识共享的q_Q那么我们就可以在这个^C扑ֈ我们团队中对其掌握较好的人员Q然后进行更加直接有效的交流。共享^台的方式可以采用团队内部的Blog或者Wiki{?br /> 未完待箋...... ]]> LOG4J原理以及配置的研I?/title> http://www.aygfsteel.com/wqhtomcat/archive/2006/12/05/85702.htmlwqhtomcat wqhtomcat Tue, 05 Dec 2006 14:32:00 GMT http://www.aygfsteel.com/wqhtomcat/archive/2006/12/05/85702.html http://www.aygfsteel.com/wqhtomcat/comments/85702.html http://www.aygfsteel.com/wqhtomcat/archive/2006/12/05/85702.html#Feedback 0 http://www.aygfsteel.com/wqhtomcat/comments/commentRss/85702.html http://www.aygfsteel.com/wqhtomcat/services/trackbacks/85702.html
Log4J
原理以及配置的研I?/span>
在进?/span>
Log4J
的用过E中Q我对下面的两个问题比较敏感Q?/span>
1?span style="FONT: 7pt 'Times New Roman'">
Log4J
是如何进行工作的Q?/span>
q是?/span>
Log4J
目中对
Log4J
的介l中的一D话
With log4j it is possible to enable logging at runtime without modifying the application binary. The log4j package is designed so that these statements can remain in shipped code without incurring a heavy performance cost. Logging behavior can be controlled by editing a configuration file, without touching the application binary.
对于
Log4J
的具体如何进行工作的原理Q在
javaeye
?/span>
buaawhl
l出了一个解释:
http://buaawhl.javaeye.com/blog/6450
ȝ一下就是利?/span>
JDK
提供?/span>
new Throwable().getStackTrace()
Ҏ(gu)q回当前q行栈的l构层次Q然后对q回的调用栈的信息进行分析,扑ֈ调用该类的类的名U。(也就是Log4J自己说的Runtime期间实现LogQ?/span>
׃?/span>
Log4J
?strong>只存在一个根
Logger
Qƈ?/span>
Logger
之间存在l承的关p?/strong>Qƈ且我们可?strong>在配|文Ӟ
log4J.proerties
或?/span>
XML
Q中q行配置Q可以初始化指定?/span>
Logger
Qƈ且对指定?/span>
Logger
q行一些相关的配置 Q如讄如何q行输出Q以及如何将输出q行布局。ƈ且由?/span>
Logger
之间会存在承的关系Q会找一个最q的
Logger
q行l承Q如果没有就以根
Logger
作ؓ父类Q共享父cȝ配置信息Q,以及父子cM间初始化没有先后的顺序,所以我们可以在配置文g中,对各个程序以及不同的包中使用?/span>
Log4j
?/span>
Log
U录方式q行配置?/span>
如果在同一?/span>
APPLICATION
对相同名U的
Logger
q行调用Q那么只会返回一?/span>
Logger
实例?/span>
2?span style="FONT: 7pt 'Times New Roman'">
Log4J
会不会对pȝ的性能造成大的影响Q?/span>
q是?/span>
Log4J
性能的一些描qͼ看来q是不错的,呵呵Q在调整一?/span>
Log
的等U就可以了?/span>
On an AMD Duron clocked at 800Mhz running JDK 1.3.1, it costs about 5 nanoseconds to determine if a logging statement should be logged or not. Actual logging is also quite fast, ranging from 21 microseconds using the SimpleLayout, 37 microseconds using the TTCCLayout. The performance of the PatternLayout is almost as good as the dedicated layouts, except that it is much more flexible.
注:对于
Common Logging
?/span>
Log4J
的关pd以参?/span>
Q其?/span>
JCL
是一个规范,对一?/span>
Log
工具q行了包装,我们怼使用到的具体实现q是
Log4j
Q当然也可以使用其他的实玎ͼ
http://hedong.3322.org/archives/000316.html
参考资料:
http://www-128.ibm.com/developerworks/cn/java/l-log4j/index.html
使用
Log4J
q行日志操作
http://zooo.51.net/heavyz_cs/notebook/log4j.html Log4J
学习(fn)W记Q推荐)
http://www.dingl.com/view.shtml?xh=485 log4j
配置
http://hedong.3322.org/archives/000193.html
竹笋炒肉?/span>
Log4J
学习(fn)W记
http://forum.springside.org.cn/redirect.php?fid=3&tid=382&goto=nextoldset SpringSide
?/span>
Log4j
的用要?/span>
]]> 应该规划一下了~ http://www.aygfsteel.com/wqhtomcat/archive/2006/12/05/85664.htmlwqhtomcat wqhtomcat Tue, 05 Dec 2006 12:04:00 GMT http://www.aygfsteel.com/wqhtomcat/archive/2006/12/05/85664.html http://www.aygfsteel.com/wqhtomcat/comments/85664.html http://www.aygfsteel.com/wqhtomcat/archive/2006/12/05/85664.html#Feedback 0 http://www.aygfsteel.com/wqhtomcat/comments/commentRss/85664.html http://www.aygfsteel.com/wqhtomcat/services/trackbacks/85664.html 甭管怎么_我们要做一行爱一行,只有培养了这U踏t实实的_Q才有可能在其他的领域获得成功,不然Q一切都是惘Ӟ没有什么可说的?br /> 话到q䆾上了Q也需要自己斟酌一下了Q感觉前一D|间自q心态十分不好,L特别的Qw,静不下来Q再加上工作的事情也搞得自己有些焦头烂额了,现在是需要反思的时候了。别Ld一些自׃应该q的事情Q还是应该好好的把心思放在提高自q水^上,不要把自己搞的太低,什么事情只要用心,M有收L(fng)。Bless myselfQ?br /> 下面对于学习(fn)斚wQ?br /> 1、要做到看书学习(fn)的时候要q行深入的思考,不然的话q于没看,什么都没有印象和收P要培养自己思考后做记录的?fn)惯Q现在忘性太大了QL原来看过的东西就Ch了,不过看到原来的记录还是能回想h的)?br /> 2、踏t实实的把自׃Z个java斚wWeb开发h员所应该_N的知识真正的精通v来,不懂问Q别搞个模棱两可Q这样对一些系l在设计上会有很不好的媄响,因ؓ有些东西你想不到?br /> 3、提高自qp水^Q不要L有抵触心里,p是程序员成长道\上必不可的工具Q只有英语能够用了,才能够更快的接触到国外的先进的知识和l验Q以保持自己的知识水q?br /> 注:主要q行研究的内容包括(Java核心技术、Hibernate、Spring、Struts、WebWork以及Web开发的相关技术,在学?fn)和ȝ后要留下文档以便备忘Q) ]]>数据库设计备忘录 http://www.aygfsteel.com/wqhtomcat/archive/2006/09/12/69134.htmlwqhtomcat wqhtomcat Tue, 12 Sep 2006 05:23:00 GMT http://www.aygfsteel.com/wqhtomcat/archive/2006/09/12/69134.html http://www.aygfsteel.com/wqhtomcat/comments/69134.html http://www.aygfsteel.com/wqhtomcat/archive/2006/09/12/69134.html#Feedback 0 http://www.aygfsteel.com/wqhtomcat/comments/commentRss/69134.html http://www.aygfsteel.com/wqhtomcat/services/trackbacks/69134.html 1、关p: 1Q?Q?QNQNQN 2、注意在使用多对多关pȝ时候,׃关系型数据库的限Ӟ我们必须建立一个中间表Q用来表明两者之间的关系 3、具体的原因是数据库中的表的主键应该是唯一的,但是如果在两个存在多对多关系的数据表之间表明两者之间的关系的话Q就不能够保证数据主键的唯一性了Q比如说Q书c和作者之间的关系Q我们假设他们之间是多对多的关系Q一本书c可以有多个作者,一个作者可以写多本书籍Q如果我们是用两个表来表明他们之间的关系Q结构如下: 书籍表: 主键 作者外键 ?名称 {其它属?br /> 作者表Q?br /> 主键 书籍外键 姓名{其它属?br /> 如果我们要向表中存入数据Q那么就会如下所C: 书籍表: 1 1 应用Railsq行敏捷Web开?br />1 2 应用Railsq行敏捷Web开?br /> 作者表Q?br /> 1 1 Dave Thomas 2 1 David Heinemeier Hansson q样出现问题了Q书c表中出C重复的主键,q个可是不行的哦 如果加入一个中间连接表Q那么问题就解决了,书籍表和作者表只管负责存储他们各自的信息,不需要存储他们的关系信息Q关pM息让q接表进行存储就好了~Q表的结构如下: 书籍表: 主键 名称 {其它属?br />1 应用Railsq行敏捷Web开?br />2 Ant使用手册 作者表Q?br /> 主键 姓名{其它属?br />1 Dave Thomas 2 David Heinemeier Hansson q接表: 主键 书籍外键 作者外?br />1 1 1 2 1 2 q样Q问题就解决了~ ]]>
վ֩ģ壺
|
|
|
Ϫ |
|
|
|
ľ |
|
|
|
|
Ρɽ |
ƽ |
ͼʲ |
|
Զ |
ֲ |
|
ƽ |
|
Է |
|
|
|
|
鴨 |
|
|
|
ض |
ƽ |
Ϲ |
ͭ |
|
|
|
|
Ѯ |
|
|