androidjavamail
A. 学习java软件工程师未来有哪些就业方向
一、Java软件工程师就业前景
Java软件工程师就业前景如何?主要从Java的应用领域来看,Java语言的应用方向主要表现在以下三个方面:大中型的商业应用、桌面应用、再次是移动领域应用。
二、学习Java开发的就业方向
Java行业是一个大方向,岗位不同工作内容也多有不同,掌握一门Java技术之后就业的机会是很广泛的,现在根据已入职工作的千锋广州Java学员的就业方向,给大家提供参考:
Java开发的就业方向一:Java企业级应用开发目前Java在许多行业的企业信息应用方面的应用非常多,比如OA、邮箱、股票、金融、考试、物流、医疗、矿山等信息方面的系统。该方向和行业密切相关,所以,这是一个经验型的发展方向。Java开发者在这方面的需求也非常大,待遇也相当不错,有三到五年工作经验的年薪在15至20万这是一个很正常的水平。
Java开发的就业方向二:Java网站建设
近几年来,网站建设业务一直呈快速上升势头,行业市场越来越大。新技术的应用将促使企业网站建设更具魅力。Java编程语言也将使网站结构更紧密,访问更流畅,更能适应新的要求。特别是像大企业更偏向于使用Java技术。
Java开发的就业方向三:Android开发Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。Android在国内的市场份额愈来愈额高。最近几年发展非常快速,但人才积累却没有跟上,优秀的Android开发工程师仍然存在不小的缺口。Android应用的主要开发语言就是Java,所以选择这个方向还是蛮不错的。
Java开发的就业方向四:Java游戏开发
Java本身就可以用来编写游戏脚本,目前也有例如beanshellgroovy等脚本语言可以方便的无缝的和Java语言进行交互,这些都极大的方便了Java游戏编程。
B. 安卓websocket内部实现了心跳了吗
socket编程,具体包括13中核心技术。 J2EE的核心API与组件 J2EE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持,下面对J2EE中的13种技术规范进行简单的描述(限于篇幅,这里只能进行简单的描述): 1. JDBC(Java Database Connectivity): JDBC API为访问不同的数据库提供了一种统一的途径,象ODBC一样,JDBC对开发者屏蔽了一些细节问题,另外,JDCB对数据库的访问也具有平台无关性。 2. JNDI(Java Name and Directory Interface): JNDI API被用于执行名字和目录服务。它提供了一致的模型来存取和操作企业级的资源如DNS和LDAP,本地文件系统,或应用服务器中的对象。 3. EJB(Enterprise JavaBean): J2EE技术之所以赢得媒体广泛重视的原因之一就是EJB。它们提供了一个框架来开发和实施分布式商务逻辑,由此很显着地简化了具有可伸缩性和高度复杂的企业级应用的开发。EJB规范定义了EJB组件在何时如何与它们的容器进行交互作用。容器负责提供公用的服务,例如目录服务、事务管理、安全性、资源缓冲池以及容错性。但这里值得注意的是,EJB并不是实现J2EE的唯一途径。正是由于J2EE的开放性,使得有的厂商能够以一种和EJB平行的方式来达到同样的目的。 4. RMI(Remote Method Invoke): 正如其名字所表示的那样,RMI协议调用远程对象上方法。它使用了序列化方式在客户端和服务器端传递数据。RMI是一种被EJB使用的更底层的协议。 5. Java IDL/CORBA: 在Java IDL的支持下,开发人员可以将Java和CORBA集成在一起。他们可以创建Java对象并使之可在CORBA ORB中, 或者他们还可以创建Java类并作为和其它ORB一起的CORBA对象的客户。后一种方法提供了另外一种途径,通过它Java可以被用于将你的新的应用和旧的系统相集成。 6. JSP(Java Server Pages): JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端所请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。 7. Java Servlet: Servlet是一种小型的Java程序,它扩展了Web服务器的功能。作为一种服务器端的应用,当被请求时开始执行,这和CGI Perl脚本很相似。Servlet提供的功能大多与JSP类似,不过实现的方式不同。JSP通常是大多数HTML代码中嵌入少量的Java代码,而servlets全部由Java写成并且生成HTML。 8. XML(Extensible Markup Language): XML是一种可以用来定义其它标记语言的语言。它被用来在不同的商务过程中共享数据。 XML的发展和Java是相互独立的,但是,它和Java具有的相同目标正是平台独立性。通过将Java和XML的组合,您可以得到一个完美的具有平台独立性的解决方案。 9. JMS(Java Message Service): MS是用于和面向消息的中间件相互通信的应用程序接口(API)。它既支持点对点的域,有支持发布/订阅(publish/subscribe)类型的域,并且提供对下列类型的支持:经认可的消息传递,事务型消息的传递,一致性消息和具有持久性的订阅者支持。JMS还提供了另 一种方式来对您的应用与旧的后台系统相集成。 10. JTA(Java Transaction Architecture): JTA定义了一种标准的API,应用系统由此可以访问各种事务监控。 11. JTS(Java Transaction Service): JTS是CORBA OTS事务监控的基本的实现。JTS规定了事务管理器的实现方式。该事务管理器是在高层支持Java Transaction API (JTA)规范,并且在较底层实现OMG OTS specification的Java映像。JTS事务管理器为应用服务器、资源管理器、独立的应用以及通信资源管理器提供了事务服务。 12. JavaMail: JavaMail是用于存取邮件服务器的API,它提供了一套邮件服务器的抽象类。不仅支持SMTP服务器,也支持IMAP服务器。 13. JAF(JavaBeans Activation Framework): JavaMail利用JAF来处理MIME编码的邮件附件。MIME的字节流可以被转换成Java对象,或者转换自Java对象。大多数应用都可以不需要直接使用JAF。 第一个阶段(java基础阶段) 1.java语法 2.面向对象 3.常用的api 4.界面编程 5.多线程 6.文件io 7.java网络编程.. 看看 张孝祥老师的 java视频 (不过张孝 祥老师普通话不是很好,而且语速很慢,不过技术是不用说的啦!感谢张老师的无私奉献了,呵呵) 第二个阶段 (数据库阶段) 1.oracle 2.mysql 3.sql server 目前中国软件公司用的最多的三大主流数据库是sql server,mysql ,oracle .目前看来oracle数据库越来越流行了。一般情况下PHP对应MySQL数据库;ASP对应SQL数据库;JSP对应ORACLE数据库。所以大家会经常看 到市场上JAVA培训都是用的ORACLE数据库,其实你学会了ORACLE数据库,再去学习MySQL、SQL数 据库,你会觉得有很多相似的之处,学起来也容易上手了。oracle我推荐 韩顺平老师 oracle视频 (韩老师授课很有趣,特适合基础不太好的人。讲课有一套) 第三个阶段 (web开发阶段) 1.html 2.css 3.javascript 这三个部分是进行web开发的必须技术.一定要好好学习.不过我当时没有发现有讲的特别好的。好像很多老师都讲框架和后台,界面这块不多,所以就没有什么好推荐的了,大家可以 在网上找找看看,<<别具光芒>> 这本书讲的挺好,不过不太适合初学者,可以看看孙鑫老师视频的《HTML语言速成》。 第四个阶段 (j2ee 中级部分) 1.servlet 2.jsp 3.mvc 这个阶段是接近企业的需求了,所以学习起来,难度偏大,如果前面没有学习扎实,会比较麻烦,我就是这样的,前面没有吃透,就学习j2ee 中级,搞得我消化不良。所以小弟我中心的告诫大家,把前面的学好,再学习第四个阶段,这里的mvc思想不太好理解,是学习的重点。同时要学习tomcat/jboss/wl 这些服务器所以,你可能感到要学习的东西一下多了很多,其实我就在这里动摇过,有那么一段时间,又想放弃了。可是一想到 房东那种不屑的表情,我就想,一定要好好学习,混出个人样来。我家是农村的,回去就是种地,当公务员我没有关系,再说会老家我学习的专业也用不上,要不就是当个网管什么的,不说了,反正当时心情很复杂吧。这个阶段我推荐 韩顺平老师 servlet视频 jsp视频 (这里也特别谢谢韩顺平老师,我是比较喜欢他讲课的风格,因为我当时基础不好,所以不敢看讲的太理论的课。) 第五个阶段 (j2ee 高级部分) 1.struts 2.hibernate 3.spring 学习完Servlet、JSP然后再去学习框架Struts、Hibernate、Spring等最前沿的最流行的网络编程必备的软件技能。 推荐的参考书籍是美河图书提供《Servlet与JSP核心编程》 框架的基础就是Servlet、JSP。首先大家应该学习的是Struts框架,典型的MVC模型。推荐学习视频是 张小静的Struts视频。(网上有孙鑫的视频嘛,主要就是讲的Struts、Hibernate、Spring这三个框架,但是这个好像是偷录的效果不好,听起来比较吃力,衔接的不好) 推荐书籍孙卫琴编着《精通Struts基于MVC的Java.Web设计与开发》 然后就是Hibernate框架,推荐李兴华老师的Hibernate视频, 参考书籍孙卫琴 《精通Java对象持久化技术详解》 最后关于Spring框架的视频,在网上你可以搜索到很多,但是系统讲解的真的没有发现,本着对大家负责的态度,不敢乱推荐,大家到网上搜一下,也许现在有了也可能。 学完上述三个阶段的内容,就在看看xml,ajax,ejb这些知识!尤其是的Ajax用得非常火,我们公司就用,ajax的框架流行的是(jquery,dw),我们公司用的是jquery.这里提一 下,学习Ajax之前一定要有JavaScript的基础,推荐视频张孝祥JavaScript网页开发,这套视频有相应 的配套书籍《JavaScript网页开发》
C. android怎样不打开系统浏览器实现了发送邮件
下载javamail的java包,加入到你项目的库中。
2.修改你的邮箱设置,这里以163邮箱为例。打开设置,开启客户端授权码,记住这个授权码,然后打开POP3/SMTP服务和IMAP/SMTP服务。
输入相应的代码(私我给你发)
在使用该库前先简单介绍一下 Email for Android 2.3.2 中四个核心的类和相关的方法。
EmailConfig 类
setAccount( ):设置发信人的邮箱(必写)
setPassword( ) :设置发信人的邮箱密码或授权码(必写)
setSmtpHost( ):设置SMTP服务器地址(发送邮件时必写)
setSmtpPort( ):设置SMTP服务器端口(发送邮件时必写)
setPopHost( ):设置POP服务器地址(接收邮件时必写)
setPopPort( ):设置POP服务器端口(接收邮件时必写)
setImapHost:设置IMAP服务器地址(接收邮件时必写)
setImapPort:设置IMAP服务器端口(接收邮件时必写)
setTo( ):设置收信人邮箱(必写)
setCc( ):设置抄送人
setBcc( ):设置密送人
setNickname( ):设置发信人昵称
setSubject( ):设置邮件主题(必写)
setText( ):设置文本型的邮件内容(必写,但 setText( ) 和 setContent( ) 只能二选一)
setContent( ):设置HTML型的邮件内容(同上)
sendAsyn( ):异步发送邮件(必写)
popReceiveAsyn( ):使用POP3协议异步接收邮件
imapReceiveAsyn( ):使用IMAP协议异步接收邮件
connectServer( ):检查邮件服务器配
EmailSendClient 类
EmailReceiveClient 类
EmailExamine 类
D. 有谁写android邮箱客户端不 请教 我用javamail写了但是凡是涉及到外部jar都无法 运行报错
我这里用的全是外部jar啊 没有报错的啊
楼主具体什么情况?
E. Android,JavaMail出错是什么原因
我原换客户端用GMAIL用邮件 或者其邮件客户端rom毛病造软件故障 希望所帮助
-
F. 怎么使用javamail-android
Javamail-Android配置步骤:
(1)下载Android版本JavaMail包,additional.jar、mail.jar和activation.jar,下载地址:
http://download.csdn.net/detail/suiyuansanren/5299466
(2)在项目与src同一目录级别下,新建文件夹lib,将下载的3个jar包放入该文件夹
(3)右键->Properties->Java Build Path->Libraries,选择Add External JARs,找到项目下lib目录的3个jar包
注意:
(1)下面的三个类文件必须在同一个包中;
(2)不要使用你刚刚注册过的邮箱在程序中发邮件,如果你的163邮箱是刚注册不久,那你就不要使用“smtp.163.com”。因为你发不出去。刚注册的邮箱是不会给你这种权限的,也就是你不能通过验证。要使用你经常用的邮箱,而且时间比较长的;
(3)mailInfo.setMailServerHost("smtp.163.com");与mailInfo.setFromAddress("[email protected]");这两句话中,邮箱所在的“域”必须相同。即如果你使用163smtp服务器,那么发送邮件地址就必须用163的邮箱,如果不一致的话,是不会发送成功的;
G. 利用javamail实现安卓发邮件,transport.connect( , , ) 连接失败,邮件发不出去
连接出错,android不允许在主线程中有网络连接操作,看看你的发邮件过程是不是在主线程中进行的,如果是,那就会导致连接时出错,解决方法是新建一个线程来完成发邮件的过程,新建线程的时候要注意新建线程的方法,新建线程的方法不恰当也不能解决问题,希望对你有帮助
H. Android中我为什么发不了邮件
Android中我为什么发不了邮件???我手机里明明有邮件客户端的,可我为什么不能调用它发送邮件???相信这是很多人会问的问题,手机里有Email客户端,可是偏偏在自己的应用里调用不了,抑或是不知道怎么调用,还有的是一直认为自己写对了,可是偏偏不能调用,无奈之下只能却网上找段代码粘贴上,ok,可以了。。可是你知道别人的代码为什么可以?你知道调用Email是怎么工作的吗?如果你又像给多人发邮件,还想发送附件,怎么做?又迷糊了吧?所以需要搞懂原理才能一通百通,举一反三,而这就是这篇博文要写的,也是你可以在这篇博文中学到的。
在这里你可以学到:
什么是Intent和Intent Fileter
如何发送Email
如何发送特定的标题和内容的Emil
如何发送给多人
如何抄送和密送
如何发送附件
一:什么是Intent和Intent Fileter
关于这个详细介绍请参考 :
Android系列教程之十:Intents and Intent Filters(一)
Android系列教程之十一:Intents and Intent Filters(二)
Android系列教程之十二:Intents and Intent Filters(三)
二:如何发送Email
通过上面就会知道Android应用之间的通信是通过Intent这个东西,如果手机中有实现了你想要功能的应用那么你就不用麻烦去实现一个拉。直接使用就可以,比如这里的发送邮件。
我们新建一个工程SendEmail,基于Android1.6实现。然后定义布局文件和代码如下:
Xml代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<Button
android:id="@+id/send_btn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Send Action"
/>
</LinearLayout>
Java代码
/** 发送邮件测试界面
* @author 飞雪无情 个人博客:http://flysnow.iteye.com/
* @since 2011-7-19
*/
public class SendEmailActivity extends Activity implements View.OnClickListener{
private Button mSendBtn;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mSendBtn=(Button)findViewById(R.id.send_btn);
mSendBtn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch(v.getId()){
case R.id.send_btn:
startSendEmailIntent();
break;
}
}
private void startSendEmailIntent(){
Intent data=new Intent(Intent.ACTION_SENDTO);
data.setData(Uri.parse("mailto:[email protected]"));
data.putExtra(Intent.EXTRA_SUBJECT, "这是标题");
data.putExtra(Intent.EXTRA_TEXT, "这是内容");
startActivity(data);
}
}
这是我们运行应用,点击按钮就会看到如下效果:
三:分析发送代码
主要的发送代码如下:
Java代码
Intent data=new Intent(Intent.ACTION_SENDTO);
data.setData(Uri.parse("mailto:[email protected]"));
data.putExtra(Intent.EXTRA_SUBJECT, "这是标题");
data.putExtra(Intent.EXTRA_TEXT, "这是内容");
startActivity(data);
首先构造一个Action为SENDTO的Action
其次创建一个Uri,他是一个mailto的邮件链接,也就是接收地址.
再通过Intent.EXTRA_SUBJECT和Intent.EXTRA_TEXT传递标题和文本的数据,记住,一定要使用这些常量,这是标准,否则Email客户端不认识,那样你传递的标题和文本就不起作用了。
然后就是startActivity进行打开,系统会根据Intent自动匹配找到能处理这个intent的应用,如图列表,有很多个,我们这里选择网易掌上邮,就打开了一个邮件发送界面,如我们所愿,邮件地址、标题和内容都在了,很成功.
intent中的数据传递是以Extra的方式进行put后传递的,然后在使用的时候getter取出使用。
四:发送给多人以及抄送和密送
发送给多人以及抄送和密送都很简单,查找Intent类中的Extra常量,发送有这么三个常量:Intent.EXTRA_EMAIL,Intent.EXTRA_CC,Intent.EXTRA_BCC。这三个分别用于传递“接受人地址列表”、“抄送人地址列表”和“密送人地址列表”,传递的都是String[]类型的Email地址,如果数组中有多个地址,就可以发送给多人。发送的函数修改如下,我们看下效果:
Java代码
private void startSendEmailIntent(){
Intent data=new Intent(Intent.ACTION_SENDTO);
data.setData(Uri.parse("mailto:[email protected]"));
data.putExtra(Intent.EXTRA_EMAIL, new String[]{"[email protected]","[email protected]"});
data.putExtra(Intent.EXTRA_CC, new String[]{"[email protected]"});
data.putExtra(Intent.EXTRA_BCC, new String[]{"[email protected]"});
data.putExtra(Intent.EXTRA_SUBJECT, "这是标题");
data.putExtra(Intent.EXTRA_TEXT, "这是内容");
startActivity(data);
}
五,发送附件
Email'客户端的发送Activity提供了两个Intent Filter,一个用于发送普通邮件,一个用户发送带有附件的邮件。区分很很容易的,发送普通邮件的那个Intent Filter配置的Action SENDTO,而带有附件的邮件则是SEND,所以是2个不一样,但是哪些比如附加“标题”,“内容”,“抄送”,“发送多人”等等还是通用的。布局文件新增一个按钮,用于发送带有附件的邮件,Activity代码也做修改。
Xml代码
<Button
android:id="@+id/send_to_btn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="SendTo Action"/>
Java代码
/* * 发送邮件测试界面
* @author 飞雪无情 个人博客:http://flysnow.iteye.com/
* @since 2011-7-19
*/
public class SendEmailActivity extends Activity implements View.OnClickListener{
private Button mSendBtn;
private Button mSendToBtn;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mSendBtn=(Button)findViewById(R.id.send_btn);
mSendToBtn=(Button)findViewById(R.id.send_to_btn);
mSendBtn.setOnClickListener(this);
mSendToBtn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch(v.getId()){
case R.id.send_btn:
startSendEmailIntent();
break;
case R.id.send_to_btn:
startSendToEmailIntent();
break;
}
}
private void startSendEmailIntent(){
Intent data=new Intent(Intent.ACTION_SENDTO);
data.setData(Uri.parse("mailto:[email protected]"));
data.putExtra(Intent.EXTRA_EMAIL, new String[]{"[email protected]","[email protected]"});
data.putExtra(Intent.EXTRA_CC, new String[]{"[email protected]"});
data.putExtra(Intent.EXTRA_BCC, new String[]{"[email protected]"});
data.putExtra(Intent.EXTRA_SUBJECT, "这是标题");
data.putExtra(Intent.EXTRA_TEXT, "这是内容");
startActivity(data);
}
private void startSendToEmailIntent(){
Intent data=new Intent(Intent.ACTION_SEND);
data.putExtra(Intent.EXTRA_EMAIL, new String[]{"[email protected]"});
data.putExtra(Intent.EXTRA_SUBJECT, "这是标题");
data.putExtra(Intent.EXTRA_TEXT, "这是内容");
data.putExtra(Intent.EXTRA_STREAM, Uri.parse(""));
data.setType("text/plain");
startActivity(data);
}
}
运行应用,我们看到效果图里最小面的附件标识,说明已经可以发送附件了.
I. 求教!Android 用javaMail发送邮件时总是出错
网易邮箱默认不开启客户端收发,你要去网页版邮箱设定才可以,会给你个随机生成的密码,这个密码用来imap, pop3, smtp
J. Android中利用javamail发送邮件,模拟器运行正常,但是手机上无反应
用手机调试一下,把LOG发出来看看