高手坐镇(43)
数字职场
编程开发领域很广,开发途中遇到的问题千奇百怪,碰到问题找不到解决方法怎么办?需要高人指点!为此,我们特意开设此栏目,邀请四方开发高手来帮助大家。如果你在开发途中遇到问题,如果你有能力解决这些问题,欢迎与我们联系,来信请发到pcw-chendx@vip.sina.com。
学Java的前途
题目难度:★★☆
读者提问:我工作几年,薪水一直不高,我想换一个工作,但不知道做什么好。后来看到网上有人说学习Java前途无限,所以我想问问学习Java的要求是什么?报酬高吗?谢谢!
软件开发者 周凯:如果只是想追求高薪,嵌入式开发也许是更好的选择,目前看来,水平差不多的嵌入式工程师的底薪一般高于Java软件工程师。需要注意的是,只是为了高薪而对编程并无兴趣,是很难学有所成的。
学Java的人很多,但竞争压力也大,不少人最终还是转向销售或者其他工作,所以要学就要有决心和毅力。一般公司对Java软件工程师的要求是:两年以上Java开发经验,有行业大中型应用软件开发实施经验,熟悉一门数据库(不同公司对数据库的选择可能不同,但是只要熟悉SLQ语句,从一门数据库语言转向另一门并不难)。
在数动连线编程板块中,网名为“弟妹”的Java资深人士说过,Java程序员在小城市月薪一般在1500元~2500元之间,基本没有什么发展空间,而北京、上海情况好得多,如果人够牛,月薪过万也是有可能的。
此外,学习Java你一定要熟悉英语和了解日语,至少要看得懂,因为很多外包服务都需要用到这两种语言,你要是看不懂就麻烦了。加油吧,祝你好运!
挂机程序出错
题目难度:★★★★
读者提问:我想编写一个在论坛挂机的程序,所以在网上搜索相关的代码,我找到一段类似的代码,但编译不成功,希望高手给一点提示。
void CENEASYDlg::OnBnClickedButtonlogin()
{
/ TODO: 在此添加控件通知处理程序代码
CInternetSession* psession;
CString head="http://www.baidu.com";
CInternetFile* pFile=NULL;
psession=new CInternetSession;
m_listfile.AddString("开始挂机...");
m_listfile.AddString("试图连接并登录站点...");
try
{
pFile=(CInternetFile*)psession->OpenURL(head);
}
catch(CInternetException* e)
{
pFile=NULL;
e->Delete();
}
软件开发者 爱上狗的猫:这段代码的确来自网上,有一点点小问题,那就是要把m_listfile.AddString("开始挂机...")改为m_listfile.AddString(_T("***")),这样程序就没有问题了,赶紧试试吧!
添加图片验证码
题目难度:★★★★
读者提问:我的网站常常有人用灌水机刷屏,非常讨厌,我想在用户登录处做一点手脚,要输入图片中的验证码,才能登录,这样灌水机就不能用了。但怎么添加图片验证码?希望高手指点一下。
网页设计师 冬雷:用图片验证码来对付灌水机确实是一种比较有效的办法,我们需要在登录页面添加一个文本框,再加一个动态验证码的图片,用户点击按钮后,系统先判断用户输入的验证码是否和系统随机产生的验证码一致,然后再判断用户名和密码是不是存在。完整代码下载地址http://www.icpcw.com/bzsoft。
登录页面中增加:
function refreshimg(){
document.all.checkcode.src='CheckCode.asp?'+Math.random();
}
服务器验证页面需要判断:
Request.Form("CheckCode") = Session("CheckCode")
增加生成验证码文件:
添加生成验证码的文件CheckCode.asp,代码如下:
<%
Option Explicit
Const CodeType = 8 '注:1,4,7,10,13,16为黑白型;2,5,8,11,14,17为彩色背景型;3,6,9,12,15,18为噪点型
Const listcode = "0123456789abcdefghijklmnopqrstuvwxyz"
Response.buffer = True
Response.Expires = -1
Response.AddHeader "Pragma", "no-cache"
Response.AddHeader "cache-ctrol", "no-cache"