随笔 - 312, 文章 - 14, 评论 - 1393, 引用 - 0
数据加载中……

我的评论

共7页: 上一页 1 2 3 4 5 6 7 下一页 
@上善
是的,一个笔误,已经改过来了,多谢提醒。如果还有什么地方写的有错误,欢迎大家指正。
用表变量好象效率不高。采用哪种方法,读者可以实际情况而定
re: Struts2教程7:上传任意多个文件 银河使者 2008-06-30 10:27  
是upload没错
re: Struts2教程7:上传任意多个文件 银河使者 2008-06-27 17:31  
文章的代码里有啊,如果是多个文件,将每个文件作为一个java.io.File对象保存在List中,实际上,每一个File对象就是一个已经上传到服务器的临时文件了。

public class UploadMoreAction extends ActionSupport
{
private java.util.List<File> uploads;
...
}
re: 何谓精通 银河使者 2008-06-16 09:18  
I following my heart.
re: 何谓精通 银河使者 2008-06-15 20:31  
还有楼主第三阶段问到保存大量的数据应用Java的什么数据结构。其实Java中的数据结构没有一种适合于保存大量的数据(如搜索引擎所需的以T为单位的数据),要想保存,就只有自己设计了。可以采用键树或更复杂的数据结构。也可采用分布试的存储方式(就象google后台的几十万台服务器),但这就需要互相协调了。但可以肯定,曾经成功解决这些问题的人一定是凤毛麟角了。要是有的话,早就被那些超级公司给挖走了,或是自己去创业了。基本上不会到处去投简历了。因为他(她)们所要的报酬是大多数公司无法支付的。
re: 何谓精通 银河使者 2008-06-15 20:26  
楼主的四组面试问题有的确实有一定的深度。如果没仔细研究过,确实很难给出准确的答案。不过在面试时应主要考察应聘者的理解能力和应变能力。至于某种技术如何使用,如setTcpNoDelay方法是用来决定是否采用Nagle算法的,但我们可以换一种更广义的问法。如果在使用TCP传输数据时,如果传输的数据大多数是小数据量的数据,为了更有效地节省带宽,可以采取什么办法呢? 这个问题并未涉及具体的技术,但确考察了分析问题和解决问题的能力。个人认为这种问题更可以判断应聘者的能力。至于setTcpNoDelay方法,只要在网上查查,几秒种就可知道答案。但如果应聘者在没有使用过setTcpNoDelay方法的前提下,也可以从理论上解决setTcpNoDelay能解决的问题,那么说明应聘者有这个意识,至于具体如何用java或其他技术来实现,这根本不是问题。而如果认为用不用Nagle都一样,就算知道了setTcpNoDelay方法是做什么的,也压根不打算用,并且认为只要把数据发出去了,就万事大吉,那才是非常可怕地。
re: 何谓精通 银河使者 2008-06-15 20:07  
所谓精通,可以分开来看。先来看精。

所谓“精”就是指对于一种技术有很深入的了解,如java的网络技术(socket等),不仅要对上层知识了解,还要对底层的实现细节有很深入的了解。那么如何来判断是否对某种技术(转指软件编程技术)精呢? 其实这个很简单,只需要编写一个任意复杂的程序(一个人在有限的时间可以读完的),无需上机调试,就可以即快速,又准确地说出结果。如果这个程序有bug,也不需要上机运行,就可以知道如何改进这个程序。 要想达到这种程度,必须对相关的每一个方法、函数,甚至参数所起的作用,以及在不同的情况下可以达到什么效果了如指掌。这样还会在不运行程序的情况下,非常有把握地知道程序的运行结果。 但真正达到这种程度的人并不多,如果要真达到了这个程序,是不会为工作犯愁的。

下面再来说说“通”,通一般指范围,如神通广大、博古通今等就是这个意思。也就是说,要达到“通”,就必须掌握范围很广的知识,如精通Java,就要了解和Java相关的所有知识,如J2EE、J2SE、J2ME这三大块和一些边缘的知识(可以不包括框架等技术)。能达到这种程度的人也是非常少的。

从上面所述看,单是“精”或"通“就已经是很难达到了,如果将它们组合成”精通“,那几乎没人能真正达到。 所以简历上写的”精通“基本就成了客套话了,千万别当真。 我曾经看过一个简历,竟然把目前大多数主流的技术都写出来了,而且竟然都是精通。最后一问这个人多大年纪,结果才20多岁,于是惊呼,奇才也。粗略算一下,他写的那些技术,如果要都弄得基本上算是精通(只是接近),至少需要几百年。而且必须夜以继日地学习。

所以简历上还是尽量别写”精通“,如果要写某种技术,可以按着如下方式写:
主要使用的语言或技术:Java、C#
或是直接写使用过Java、C#多长时间,如使用过C#三年,至于到达什么水平,就由考管来判断吧。

反正按着我的习惯,如果简历上写着很多精通,基本上一概不通过,因为,没有人可以在短短几年时间精通这么多技术。

re: 实现Java Web程序的自动登录 银河使者 2008-06-06 18:55  
现在我想知道的是除了将用户名和密码保存在cookie中,或使用session,还有没有别的方法。
re: 实现Java Web程序的自动登录 银河使者 2008-06-06 18:16  
要保存用户的信息,只能在客户端或服务端来保存,如果在客户端的cookie保存,有些信息无法保存,或比较麻烦,如对象等。

在本例中因为我要实现当出现用户登录界面时,显示用户名,而这在可能要保存一年时间,而我又不想在一年内都自动登录,所以用了session,并设了两个小时。


第二个问题。当然可以只使用cookie来保存用户名和密码。只因为我要实现短时间的自动登录,所以才用了session。
建议你做个简单的程序,用记事本写个程序,最简单的,按着步骤写,看看到底是哪个地方出错了。用struts做这些东西稍有不注意,就可能出错。
我没用过netbeans6.1开发过基于struts的程序,用的是myeclipse6.x。

但我想netbeans6.1应该差不多。至于没出来错误提示的原因可能是某些资源没找到,如资源文件、验证文件(可能路径不对)、或是要验证的属性写的不正确。具体的只有调程序才能出来,原因很多。
有几点你可以看一下。
1. 类名是loginAction吗?一般类名单词第一个字母都是大写,如LoginAction。看看是不是名子弄错了。是区分大小写的。
2. 验证xml文件名为:类名-validation.xml,如类名为LoginAction,xml文件名为LoginAction-validation.xml,注意大小写。
3. LoginAction-validation.xml和LoginAction.class必须在同一个目录下。看看这些文件的位置
@Jeanvixue

有可能是你的用于验证的xml文件名不对。或是嵌套字段写的不对。如下面的所示:

<s:textfield name="user.name" label="姓名1" />
<s:textfield name="user.age" label="年龄1"/>

再仔细检查一下。
re: PHP生成XML注意的事项 银河使者 2008-06-02 19:29  
客户端的XMLHttpRequest控件是需要检测content-type地。但是如果没设content-type,仍然可以通过获得文本方式进行解析。
re: 透视MySQL数据库之更新语句 银河使者 2008-06-02 19:12  
中小网站应用比较广泛,尤其服务端是非windows操作系统的
re: AJAX从服务端获取数据的三种方法 银河使者 2008-05-30 20:45  
只要适合自己的,就是好的。
还有在循环里尽量不要使用“+”连接字符串,而要在循环外使用StringBuilder,并且在循环里使用append来连接字符串的结论,并不是我首先提出来的,而是由某位大师提出的。我只是在这里分析了一下这个结论,并验证它的正确性。

还是原创的比贴的文章多。贴的都是转载的文章,很多都是非计算机的,总不能给它们也加上原创吧。^-^。只是感觉有意思。哈哈,至于评论吗?多少也无所谓。只是做个备份。

编译码是可以帮助分析,但是有时编译码是很愚蠢的。就象编译器虽然可以优化代码,但是使用编译器生成的汇编代码永远不可能和手工编写的代码相比。

还有就是为什么有的基于java的软件,如某些桌面软件,office等,的速度或性能不如同类的软件,虽然它们实现的功能类似,但是如果不注意这些细节的地方。就会量变引起质变。从而将自己的程序拖跨。学习一门语言很容易,但要是充分了解这门语言,也许要花很多精力和时间。
re: AJAX从服务端获取数据的三种方法 银河使者 2008-05-29 18:45  
ajax从原理上讲很简单。其实任何技术从基本原理上看都很简单。但实现起来,确是另外一回事。
re: Dudu老大,给你提个大Bug 银河使者 2008-05-29 16:25  
一直也没改啊。这个二级域名不知怎么着,有时不太好使
re: AJAX从服务端获取数据的三种方法 银河使者 2008-05-29 12:39  
我一般安装任何软件都是完全安装的,没办法,硬盘就是大。^-^,要说漏掉是不可能的,我都是全选的。单位的机器也是按着同样的方法安的,没有问题,就是家里的dell笔记本出这种事。昨天安了个vs2008的patch,也不好使。
re: B/S,C/S架构混合使用 银河使者 2008-05-28 17:55  
另外,开发一个大的软件系统不仅需要开发人员有团队精神。所使用的技术也应团队合作。没有哪一种技术可以适合于所有的领域和应用。如进行数据迁移,就可以利用数据库本身的技术,如sql server的DTS技术。
re: B/S,C/S架构混合使用 银河使者 2008-05-28 17:52  
@for_the_king

谁说delphi、vc做的东西不能自动升级。我不知道你用过瑞星或其他的杀毒软件没。也是用VC或其他的语言写的,不是也可以自动升级。还有微软的smallclient(智能客户端),用C#或VB.net写的C/S程序。不是也可以很好的自动升级吗!至于通过tcp协议访问,当然,用delphi做的程序不一定直接使用tcp。就象ajax可以使用json一样,做个通用的映射组件,类似于web services,解决的方法非常多。

但是web程序却无法做到C/S的某些功能,至少很复杂。如做个树、菜单。这些用delphi、vb,只要几分钟就可以做个很好的程序。还有更复杂的效果。
最烦人的是web程序并不真正跨平台,ie6、ie7、firefox都得单独考虑。除非你可以强迫用户必须使用自己指定的浏览器。而C/S程序则是真正意义上的跨平台。(只限于windows,客户端是非windows时除外),在win98、win2000、winxp,2003,vista,windows2008上,只要能运行起来,界面效果都一样。


至于什么是企业级应用,我认为没有必要非得强调必须有什么,不能有什么。只要能满足用户的需要,其他的一切都不重要。主要得用户满意、然后才能老板满意,最后才能自己满意。

re: B/S,C/S架构混合使用 银河使者 2008-05-28 17:42  
@懒人

不是有很多语言,而是所有支持网络技术(TCP协议)的语言或技术都可以做客户端。包括flash、office。

如果需要非常绚丽的效果,我看flash就很好,flash做动画可以其他语言比不了的啊。而且flash的script也可以使用TCP协议。这就足够了。如果谁用flash做一个msn或QQ的客户端,那效果远比msn或QQ要好的多了。
要什么结果。 就是在循环里连接字符串时,最好要在循环外建立一个StringBuilder对象,然后在循环中使用StringBuilder.append方法连接,而不用直接使用“+”进行连接字符串
re: UFO目击报告[照片] 银河使者 2008-05-27 22:44  
按常理推断,这应该是数码相机的对焦灯照在飞机的玻璃窗上留下的。这几张照片很明显是透过飞机的窗户照的。谁有相机,可以对着汽车玻璃照几张看看。但要使用有对焦灯的相机哦! ^-^
re: AJAX从服务端获取数据的三种方法 银河使者 2008-05-27 21:58  
重装软件可是最后一招。 这最后一招杀手锏我可不想这么快就用。 还是研究一下vs2008的设计视图为什么不好使吧。要是一不好使就重装,那不是要把人弄疯了。vs2008很大的,如果重装还不行,是不是要重装xp啊。^-^
re: AJAX从服务端获取数据的三种方法 银河使者 2008-05-27 08:49  
并不是所有的html标签的innerHTML都有bug。我碰到的是<select>标签的innerHTML有一些bug。

不信通过getElementById获得<select>对象后,使用下面的代码试试,看看会发生什么效果

var select = getElementById("selectid");
select.innerHTML = "<option>abc</option><option>ddd</option>";

上面的代码是出不来的选项的,不知怎么着,IE6把第一个<option>弄没了。
只有用下面的代码才好使:


var select = getElementById("selectid");
select.outerHTML = "<select id='selectid' ><option>abc</option><option>ddd</option></select>";
re: it人35岁时 转型不能转行 银河使者 2008-05-26 20:25  
没有人会比自己更了解自己。一切得靠自己努力啊!let's go!
re: it人35岁时 转型不能转行 银河使者 2008-05-26 20:23  
没有哪个老板是慈善家(包括微软、google等大公司的老板),经常有人抱怨,所有的老板都是混蛋,但是奇怪的是,每一个人都想做这个“混蛋”。 也许我们做了老板后,也会和他们一样成为“混蛋”。 但在我们成为“混蛋”之前,关于自身的发展问题,还得劳自己的大架想着,不要期望某位老板或某家公司会主动为我们铺一条金光大道。 要想铺路,就得我们自己亲自动手了。 ^-^
re: AJAX从服务端获取数据的三种方法 银河使者 2008-05-26 10:39  
不过我认为第3种方法比较好,可以使客户端编程更容易,也更直观。如果返回的xml比较复杂,使用第一种方法,javascript代码会很多。

但在实现项目中,这三种方法可以混合使用。
re: Struts2教程7:上传任意多个文件 银河使者 2008-05-22 17:24  
那是因为最后一个文件将前两个文件覆盖了,你需要为每一个文件起不同的名子。
re: Struts2教程10:国际化 银河使者 2008-05-20 22:13  
to 小鱼

只要你使用了struts2,就可以生效。 处理属性文件是由jdk完成的,而寻找属性文件,是由struts2完成的。

但如果你不用struts2,spring也支持国际化,不防使用spring的国际化功能。
re: Struts2教程7:上传任意多个文件 银河使者 2008-05-20 15:27  
to 小哥
我再试一下,
re: Java SE 6之GUI:让界面更加绚丽(下) 银河使者 2008-05-20 15:26  
绚丽是要自己做的,哈哈,只是演示了功能而已,没做那么复杂。
re: Struts2教程9:实现自已的拦截器 银河使者 2008-05-20 15:25  
是这样的,struts2在调用所定义的拦截器的doIntercept方法后,最后会调用相应的动作类的执行方法,默认是execute。abcd只是修改了默认值,将执行方法由execute变成了abcd。如果在includeMethods参数中包含了abcd,那么Struts2在调用完所有的doIntercept方法后,就不会再调用abcd方法了。
re: Struts2教程7:上传任意多个文件 银河使者 2008-05-20 11:46  
如果文件中有中文名,只要服务端能成功获得中文文件名,就可以直接保存,关键是在服务端能否获得中文文件名
re: Struts2教程7:上传任意多个文件 银河使者 2008-05-20 11:44  
to muboy
struts2的上传需要一些jar文件,如common-fileupload.jar,不知你加到classpath里没
补充一句,采用任何技术不是目的,关键要看采用这种技术能给我们带来什么。 正所谓“软件创造客户价值”。
首先说明一下,本文只是谈一种思想,并不是说在项目中一定要采用,或是在项目中的所有模块都采用这种方法,就象ajax的项目中,有很多方法实现,如可采用以数据为中心的方法,或是xml+XSLT,或是其他方式。但是我们完全有理由采用自定义的方法,或只采用最原始的方法。或是它们的组合。

至于mvc模式的采用,或采用到什么程度,要看具体的需求,但有一点。采用任何一种技术或设计思想,一定要清楚地知道能为自己带来什么好处(时间、效率或金钱上的收益)。且不可盲目跟风。除非是以学习为目的,否则最好不要采用这种并不明朗,或使用后果无法预料的技术。

对于本文的方法,并不一定完全采用,也不必一定要采用。即使采用,也应尽量使用一些现成的framework、如json、jquery等。这样会降低bug数。提高开发效率。但即使采用framework,知道如何手工实现也会对使用framework有很大的帮助。这也是本文的主要目的。

re: Struts2教程7:上传任意多个文件 银河使者 2008-05-19 16:13  
出现什么错误,请详细说一下,
re: 在Firefox中通过AJAX跨域访问Web资源 银河使者 2008-05-16 12:20  
现在国内已经有很多人用firefox了,但在国外很多。哈哈,我现在一直用firefox。自从用了以后,再没中过基于web转播的病毒。-^-
to dreamingnest

谢谢提醒,是写错了,i+48,从数字0开始。改过来了。如果有更好的解决方案,请跟贴。谢谢!
re: Java SE6调用Java编译器的两种新方法 银河使者 2008-05-13 19:13  
最近只是将我在其他媒体发表过的或以前写过的文章都放到blogjava和我在博客园的blog:nokiaguy.cnblogs.com上。做一个备份和总结,也希望对想学习相关知识的朋友有所帮助。 如果大家有什么意见,尽管提。哈哈!!!
re: 拆半查找的递归和非递归算法 银河使者 2008-05-12 21:48  
没错 i = (b + e) / 2; 这句有隐患,当b+e大于int范围时就会溢出。解决的方法是i = b/2 + e/2。这样用2先除一下,就不会溢出了。
re: Tomcat6.x 数据源配置 银河使者 2008-05-12 19:41  
在tomcat6.x中有很多位置可以配置数据源。如在<tomcat安装目录>\conf\Catalina\localhost目录中放一个和上下文路径同名的xml文件,并使用如下的格式配置:

<Context path="/samples" docBase="samples" debug="0">
<Resource name="jdbc/jdbcdemo" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/mydb?characterEncoding=GBK"
username="root"
password="1234"
maxActive="200"
maxIdle="50"
maxWait="3000"/>

</Context>

虽然是用Function类可以调用部分api,但要使用swt,是不是还得带上swt的库和dll(linux是.so)啊。

如果想使用JNI的话,可以选择使用自己熟悉的语言调用api,然后再用jni调用。如delphi也可以编写api。不一定非得要c++。

这个不绝对,根据自己掌握的知识、能力以及喜好做出选择吧。多元化世界当然得有多元化的选择了。只有适合自己的才是最好的!!
共7页: 上一页 1 2 3 4 5 6 7 下一页