<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>机械境-信永软件工程师培训学校 &#187; undefind</title>
	<atom:link href="http://code.oseschool.com/index.php/archives/category/peixun/feed" rel="self" type="application/rss+xml" />
	<link>http://code.oseschool.com</link>
	<description>世界：男人、女人、程序员</description>
	<lastBuildDate>Sun, 07 Mar 2010 02:43:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>spring tips!</title>
		<link>http://code.oseschool.com/index.php/archives/79</link>
		<comments>http://code.oseschool.com/index.php/archives/79#comments</comments>
		<pubDate>Fri, 05 Mar 2010 02:40:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[undefind]]></category>

		<guid isPermaLink="false">http://code.oseschool.com/?p=79</guid>
		<description><![CDATA[1、关于Spring的xml配置文件，文件命名是否固定，文件位置可以放在什么地方？
文件名可以随便书写，只要是文件名就可以，不能包含特殊符号。  文件位置可以放置在src，web路径，系统路径，ftp，http等。。只要可能是一个url就可以进行装载。
具体查看spring文档第四章的resource
2、在用xml配置bean的时候，用指定方法注入，方法参数为可变长的的可以不？
不可，属性注入只能为单一属性注入。
具体查看spring文档的3.3.1.2
3、注入数组？
使用list节点具体查看spring文档的3.3.2.4 collections
4、&#60;rel&#62;节点的local属性和name属性的区别？
local必须指定同一文件下的bean的id ，如果不为同一个xml文件会报错。
name为指定同一容器下或者父容器的bean的name（包含id）且可以不为同一个xml文件。
具体查看spring文档的3.3.2.2
5、关于监听器和事件（具体的题目没听清楚，记得是阎总问的）
applicationContext有5个默认事件，程序员也可以自定义事件和驱动事件，实现ApplicationEvent接口，和
使用ctx.publishEvent(event)方法。   监听事件的类必须实现ApplicationListener接口，而且为spring管理的类。
具体查看spring文档的3.8.3
6、注解可以直接作用在属性上？注解都可以作用在什么地方？
根据不同的注解有不同的域，详细可以看java 注解的使用。注解可以使用在类，属性，方法等。
7、使用注解注入，scope是单例还是？
默认为单例，也可以是用@scope指定
具体查看spring文档的3.12.5
8、在xml配置的时候， exclude-filter 和include-filter 所是使用的表达式是同一个的时候，结果如何。（
具体的标签名我不知道，你自己补充完整下）
当加入一个bean和去除一个bean冲突的时候，去除一个bean为优先。
具体查看spring文档的3.12.3
9.如果一个bean是person，他在构造函数中注入自己（person对象）是不是不能注入。有时候在外部建了一个
person，赋值过去，spring可以吗？
在构造函数中注入自己是不行的，因为会导致死锁。
外部建了一个person是什么意思？
可以考虑这么做
在xml中配置两个person的bean ，比如 a 和b ， a需要注入一个person ， b 不要求注入person， 这样子，就注入b就可以了，
10.属性注入时，能不能利用spring传参，在setter里做很多操作，这样子像印象了bean的规范，是不是可以骗
过spring，它只是传参。
可以，spring只是负责调用你的方法，把属性注入进去而已，你里面想写任何操作都可以，不影响javabean规
范，只要有setter方法就行。。
11.在工学项目里每次修改配置文件都需要重启tomcat，如果项目已上线，所有人都在用，又不得不改里头的类
1-》类2，那怎么办，配置文件不是在启动时就加载吗，spring可以设置修改xml的监听器吗。
第一个：现阶段的框架只能进行修改后重新启动，不过spring3.0已经实现了osgi，分模块管理，使用osgi就可
以实现模块的热插拔，不用重新启动服务器，如淘宝就是一个例子。如果我们想简单的实现的话，可以操作
webapplicationContext进行close和重新加载。。这个比较土。
第二个：现在spring还没有能直接扫描xml改变的组件，也没有这个事件，如果时间允许，也可以自己写个。
有兴趣可以去研究一下spring3.0。
12.spring事件方面可以补充讲下。
详细内容在spring文档的3.8.3，第三章，第8节的第三小节，application节下。
12.是否可以注入空值？若可以，注入空值，@request是什么效果。
可以注入空值。使用 &#60;value /&#62;的话效果等于 setName(&#8221;) 。使用&#60;null /&#62;的话效果等于  setName(null);
@Required 注解不会报错，因为它只要有调用到方法就已经满足了。。不管是注入null还是&#8221;
详细内容查看spring文档的3.3.2.5
13.aop的原理，与hibernate的集成，在项目中是否常用
技术原理底层使用了AspectJ 组件。与hibernate的集成可以具体查看spring文档12.2
aop最常用使用在事务等。
14.spring 与 struts2.X的集成。
具体查看struts2文档的Plugin Developers Guide下的spring Plugin
]]></description>
			<content:encoded><![CDATA[<p><strong>1、关于Spring的xml配置文件，文件命名是否固定，文件位置可以放在什么地方？</strong><br />
文件名可以随便书写，只要是文件名就可以，不能包含特殊符号。  文件位置可以放置在src，web路径，系统路径，ftp，http等。。只要可能是一个url就可以进行装载。<br />
具体查看spring文档第四章的resource</p>
<p><strong>2、在用xml配置bean的时候，用指定方法注入，方法参数为可变长的的可以不？</strong><br />
不可，属性注入只能为单一属性注入。<br />
具体查看spring文档的3.3.1.2</p>
<p><strong>3、注入数组？</strong><br />
使用list节点具体查看spring文档的3.3.2.4 collections</p>
<p><strong>4、&lt;rel&gt;节点的local属性和name属性的区别？</strong><br />
local必须指定同一文件下的bean的id ，如果不为同一个xml文件会报错。<br />
name为指定同一容器下或者父容器的bean的name（包含id）且可以不为同一个xml文件。<br />
具体查看spring文档的3.3.2.2</p>
<p><strong>5、关于监听器和事件（具体的题目没听清楚，记得是阎总问的）</strong><br />
applicationContext有5个默认事件，程序员也可以自定义事件和驱动事件，实现ApplicationEvent接口，和<br />
使用ctx.publishEvent(event)方法。   监听事件的类必须实现ApplicationListener接口，而且为spring管理的类。<br />
具体查看spring文档的3.8.3</p>
<p><strong>6、注解可以直接作用在属性上？注解都可以作用在什么地方？</strong><br />
根据不同的注解有不同的域，详细可以看java 注解的使用。注解可以使用在类，属性，方法等。</p>
<p><strong>7、使用注解注入，scope是单例还是？</strong><br />
默认为单例，也可以是用@scope指定<br />
具体查看spring文档的3.12.5</p>
<p><strong>8、在xml配置的时候， exclude-filter 和include-filter 所是使用的表达式是同一个的时候，结果如何。（<br />
具体的标签名我不知道，你自己补充完整下）</strong></p>
<p>当加入一个bean和去除一个bean冲突的时候，去除一个bean为优先。<br />
具体查看spring文档的3.12.3</p>
<p><strong>9.如果一个bean是person，他在构造函数中注入自己（person对象）是不是不能注入。有时候在外部建了一个<br />
person，赋值过去，spring可以吗？</p>
<p><span style="font-weight: normal;">在构造函数中注入自己是不行的，因为会导致死锁。<br />
外部建了一个person是什么意思？</p>
<p>可以考虑这么做<br />
在xml中配置两个person的bean ，比如 a 和b ， a需要注入一个person ， b 不要求注入person， 这样子，就注入b就可以了，</span></strong></p>
<p><strong>10.属性注入时，能不能利用spring传参，在setter里做很多操作，这样子像印象了bean的规范，是不是可以骗<br />
过spring，它只是传参。</strong><br />
可以，spring只是负责调用你的方法，把属性注入进去而已，你里面想写任何操作都可以，不影响javabean规<br />
范，只要有setter方法就行。。</p>
<p><strong>11.在工学项目里每次修改配置文件都需要重启tomcat，如果项目已上线，所有人都在用，又不得不改里头的类</strong></p>
<p><strong>1-》类2，那怎么办，配置文件不是在启动时就加载吗，spring可以设置修改xml的监听器吗。</strong><br />
第一个：现阶段的框架只能进行修改后重新启动，不过spring3.0已经实现了osgi，分模块管理，使用osgi就可<br />
以实现模块的热插拔，不用重新启动服务器，如淘宝就是一个例子。如果我们想简单的实现的话，可以操作<br />
webapplicationContext进行close和重新加载。。这个比较土。<br />
第二个：现在spring还没有能直接扫描xml改变的组件，也没有这个事件，如果时间允许，也可以自己写个。<br />
有兴趣可以去研究一下spring3.0。</p>
<p><strong>12.spring事件方面可以补充讲下。</strong><br />
详细内容在spring文档的3.8.3，第三章，第8节的第三小节，application节下。</p>
<p><strong>12.是否可以注入空值？若可以，注入空值，@request是什么效果。</strong><br />
可以注入空值。使用 &lt;value /&gt;的话效果等于 setName(&#8221;) 。使用&lt;null /&gt;的话效果等于  setName(null);<br />
@Required 注解不会报错，因为它只要有调用到方法就已经满足了。。不管是注入null还是&#8221;<br />
详细内容查看spring文档的3.3.2.5</p>
<p><strong>13.aop的原理，与hibernate的集成，在项目中是否常用</strong><br />
技术原理底层使用了AspectJ 组件。与hibernate的集成可以具体查看spring文档12.2<br />
aop最常用使用在事务等。</p>
<p><strong>14.spring 与 struts2.X的集成。</strong></p>
<p>具体查看struts2文档的Plugin Developers Guide下的spring Plugin</p>
]]></content:encoded>
			<wfw:commentRss>http://code.oseschool.com/index.php/archives/79/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JAVA正则表达式 与 JS的正则表达式有何区别</title>
		<link>http://code.oseschool.com/index.php/archives/77</link>
		<comments>http://code.oseschool.com/index.php/archives/77#comments</comments>
		<pubDate>Fri, 05 Mar 2010 01:56:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[undefind]]></category>
		<category><![CDATA[正则表达式]]></category>

		<guid isPermaLink="false">http://code.oseschool.com/?p=77</guid>
		<description><![CDATA[1.[a-z]在java中匹配一个英文字母。在javascript中，被测试字符串中包含一个英文字幕都被被接受。
2。[a-z]*java匹配纯英文字母。^[a-z]$在javascript中匹配纯英文字母。
主要区别为，一个正则表达式，在java中要求被测试字符串完全匹配，在javascript中要求，只要字符串中有一部分匹配就可以。
上边的这个结论对java和javascript中的理解不透彻：
javascript:
match和exec的函数的目的是找到字符串中，符合模式的字符串
match和exec找到尽可能多的字符串
对字符串!取得的是false，对null进行!取得的是true
而java直接得到的就是true或false。
关于javascript的正则表达式。
field.value.match(&#8217;[a-z]&#8216;)与（Struts2 Validation这么使用的）
field.value.match([a-z])含义相同（有的资料上这么说的）
有的资料在讲的时候说正则表达式必须包含在\之间，有的没说。
关于转义字符
javascript
field = &#8216;_jimjimf112gds&#8217;
alert(field.match(/w+/))这样匹配所有字符串。但当使用&#8221;时，必须对\进行转义。也就是说 alert(field.match(&#8217;\w+&#8217;))匹配所有字符串。alert(field.match(&#8217;w+&#8217;))匹配的是w字母。这是因为字符串 使用斜线作为转义字符。&#8217;w'中的被忽略。也就是：alert(field.match(&#8217;w+&#8217;))匹配的是w字母。这就体现出在使用\包含表达式时的 优势了——不必转义
在java中也有字符串转义的问题：
System.out.println(Pattern.matches(&#8217;\w+&#8217;,'dfsasdf&#8217;));
为true，而System.out.println(Pattern.matches(&#8217;w+&#8217;,'dfsasdf&#8217;));是不能被编译的。
所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符，可以用来规定其前导字符（即位于元字符前面的字符）在目标对象中的出现模式。
限定符可以指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。
定位符用于规定匹配模式在目标对象中的出现位置。
field = &#8216;jimwtoo,totooaztA3213142jimtof112gds&#8217;
alert(field.match(/[^a-c]+/))=jimwtoo,totoo
而alert(field.match(/[^a-c]/))=j
结论是：匹配尽可能多的字符串，是在含有+或*的情况下。
关于javascript优先级：
1． 转义符
2．(), (?:), (?=), [] 圆括号和方括号
3．*, +, ?, {n}, {n,}, {n,m} 限定符
4．^, $, anymetacharacter 位置和顺序
5．&#124;“或”操作
]]></description>
			<content:encoded><![CDATA[<p>1.[a-z]在java中匹配一个英文字母。在javascript中，被测试字符串中包含一个英文字幕都被被接受。<br />
2。[a-z]*java匹配纯英文字母。^[a-z]$在javascript中匹配纯英文字母。<br />
主要区别为，一个正则表达式，在java中要求被测试字符串完全匹配，在javascript中要求，只要字符串中有一部分匹配就可以。<br />
上边的这个结论对java和javascript中的理解不透彻：<br />
javascript:<br />
match和exec的函数的目的是找到字符串中，符合模式的字符串<br />
match和exec找到尽可能多的字符串<br />
对字符串!取得的是false，对null进行!取得的是true<br />
而java直接得到的就是true或false。</p>
<p>关于javascript的正则表达式。<br />
field.value.match(&#8217;[a-z]&#8216;)与（Struts2 Validation这么使用的）<br />
field.value.match([a-z])含义相同（有的资料上这么说的）<br />
有的资料在讲的时候说正则表达式必须包含在\之间，有的没说。</p>
<p>关于转义字符<br />
javascript<br />
field = &#8216;_jimjimf112gds&#8217;<br />
alert(field.match(/w+/))这样匹配所有字符串。但当使用&#8221;时，必须对\进行转义。也就是说 alert(field.match(&#8217;\w+&#8217;))匹配所有字符串。alert(field.match(&#8217;w+&#8217;))匹配的是w字母。这是因为字符串 使用斜线作为转义字符。&#8217;w'中的被忽略。也就是：alert(field.match(&#8217;w+&#8217;))匹配的是w字母。这就体现出在使用\包含表达式时的 优势了——不必转义<br />
在java中也有字符串转义的问题：<br />
System.out.println(Pattern.matches(&#8217;\w+&#8217;,'dfsasdf&#8217;));<br />
为true，而System.out.println(Pattern.matches(&#8217;w+&#8217;,'dfsasdf&#8217;));是不能被编译的。</p>
<p>所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符，可以用来规定其前导字符（即位于元字符前面的字符）在目标对象中的出现模式。<br />
限定符可以指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。<br />
定位符用于规定匹配模式在目标对象中的出现位置。</p>
<p>field = &#8216;jimwtoo,totooaztA3213142jimtof112gds&#8217;<br />
alert(field.match(/[^a-c]+/))=jimwtoo,totoo<br />
而alert(field.match(/[^a-c]/))=j<br />
结论是：匹配尽可能多的字符串，是在含有+或*的情况下。</p>
<p>关于javascript优先级：<br />
1． 转义符<br />
2．(), (?:), (?=), [] 圆括号和方括号<br />
3．*, +, ?, {n}, {n,}, {n,m} 限定符<br />
4．^, $, anymetacharacter 位置和顺序<br />
5．|“或”操作</p>
]]></content:encoded>
			<wfw:commentRss>http://code.oseschool.com/index.php/archives/77/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>鲜果来吧</title>
		<link>http://code.oseschool.com/index.php/archives/53</link>
		<comments>http://code.oseschool.com/index.php/archives/53#comments</comments>
		<pubDate>Mon, 24 Aug 2009 14:15:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[undefind]]></category>

		<guid isPermaLink="false">http://code.oseschool.com/?p=53</guid>
		<description><![CDATA[BANG67D9B58B528B0DDFCE678FE3XIANGUO
]]></description>
			<content:encoded><![CDATA[<p>BANG67D9B58B528B0DDFCE678FE3XIANGUO</p>
]]></content:encoded>
			<wfw:commentRss>http://code.oseschool.com/index.php/archives/53/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello world！</title>
		<link>http://code.oseschool.com/index.php/archives/1</link>
		<comments>http://code.oseschool.com/index.php/archives/1#comments</comments>
		<pubDate>Tue, 18 Aug 2009 12:48:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[undefind]]></category>

		<guid isPermaLink="false">http://code.oseschool.com/?p=1</guid>
		<description><![CDATA[这里是信永国际技术人员的部落格,关于信永国际你可以按此链接查看，同时，我们也是信永国际软件工程师培训学校的IT教师，总的说来，我们是一群死程序员.
]]></description>
			<content:encoded><![CDATA[<p>这里是<a href="http://www.oseschool.com" target="_blank">信永国际技术人员的部落格</a>,关于信永国际你可以按<a href="http://www.sinyee.com" target="_blank">此链接</a>查看，同时，我们也是<a href="http://www.oseschool.com" target="_blank">信永国际软件工程师培训学校</a>的IT教师，总的说来，我们是一群死程序员.</p>
]]></content:encoded>
			<wfw:commentRss>http://code.oseschool.com/index.php/archives/1/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

