版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验一 javaee初级编程(2 学时)1、实验目的 (1)掌握java程序运行环境的安装与配置。 (2)掌握tomcat服务器的安装及环境配置方法。 (3)掌握对myeclipse的集成开发环境的配置,为java ee程序的实验做好准备工作。 (4)掌握编写与运行jsp程序的方法。(5)掌握jsp语言的基本编程方法,了解jsp中各种元素及标签的使用。2、基本要求:(1)注意自始至终贯彻课程中所介绍程序设计风格,养成良好的编程习惯。 (2)独立完成所布置习题。 (3)为保证尽量在统一安排的上机时间内编译运行通过程序,应事先设计好程序。 (4)认真完成每次实验,并写出实验报告。3、实验内容和步骤
2、:(1)安装jdk软件包。(2)设置环境变量,包括设置java的运行路径和classpath。(3) 安装tomcat服务器,并了解服务器的文件结构。(4)安装myeclipse,学会在该环境中如何配置tomcat服务器,完成java ee项目的部署及运行。(5)建立一个项目user,在其中首先创建一个注册页面,要求在注册页面中输入用户注册信息,如果注册成功,则给出成功提示,如果注册失败,则将页面返回到注册页面,并给出错误提示。l 建立一个sqlserver数据库test,在其中建立数据表user,表中包含用户注册时所需要的各种信息字段,包括username,password,sex,age,
3、hobby等,并向其中输入几条用户信息。l 建立一个jsp 注册页面regist.jsp,n 在其中通过form表单输入注册所需要的用户名称username,用户密码userpassword,重复密码ruserpassword,用户性别usersex及年龄userage还有用复选框表示的用户爱好hobby等信息,n 输入信息之后通过点击提交按钮submit,将这些信息提交到另一个regist_user.jsp页面。l 在regist_user.jsp页面中完成数据库的验证,根据验证结果给出提示,并转到相应的处理页面。n 首先利用jdbc进行sqlserver数据库连接,再调用statement
4、执行查询语句验证用户名是否已存在于数据库中,如果已存在,则将页面重定向到regist.jsp进行重新注册,并给出错误提示;如果用户名不存在则将用户的信息利用statement保存到数据库中并返回注册成功的信息。实验二 基于java ee架构程序设计(2 学时)1、实验目的:(1)理解 java ee架构,掌握jsp,servlet和javabean的使用。(2)掌握jsp 隐含对象的使用,尤其是request,session以及application的使用(3)理解javaee中过滤器的功能及使用方法。2、基本要求:(1)注意自始至终贯彻课程中所介绍的java ee程序设计风格,养成良好的编程
5、习惯。 (2)独立完成所布置习题。 (3)为保证尽量在统一安排的上机时间内编译运行通过程序,应事先设计好程序。 (4)认真完成每次实验,并写出实验报告。3、实验内容与步骤:在项目user中建立用户登录页面,login.jsp,实现用户登录操作,然后利用隐含对象将用户的登录参数传递给servlet程序loginservlet,并同时转到loginservlet上进行登录验证,如果登录成功,转入系统欢迎页面user/welcome.jsp页面,如果登录失败则返回登录页面。(1) 定义表示用户的javabean类user,user的属性包括username,userpassword,sex,age,
6、hobby;方法包括设置username、设置password、设置sex,设置age,设置hobby,获取username、获取password、获取sex,获取age,获取hobby。(2) 创建login.jsp页面,在其中建立form表单,添加文本框和密码框控件,分别向其中输入用户名和密码,然后通过提交按钮,将它提交给后台的servlet程序的url映射名。(3) 在创建loginservlet.java,首先从request中提取客户端传递过来的参数,通过查询语句将参数和数据库进行核对,如果用户输入的用户名称和密码不正确,给出错误提示,并将页面重定向到regist.jsp,如果用户输
7、入的用户名和密码正确,进入系统欢迎页面。(4) 建立loginservlet后再到web.xml中对servlet进行部署。(5) 为user文件夹中的所有文件添加过滤器,建立过滤器userfilter.java,在该过滤器中实现只有登录用户才能访问user文件夹下的页面,如果用户未登录拒绝其访问该文件夹下的所有页面。(6) 在web.xml中对userfilter进行部署,设置激活条件。实验三 ie小型浏览器的设计与实现(2 学时)1、实验目的:(1)掌握inetadress的概念与应用(2)掌握url的概念(3)掌握url与url collection类的应用 2、基本要求:(1)注意自始
8、至终贯彻课程中所介绍程序设计风格,养成良好的编程习惯。 (2)独立完成所布置习题。 (3)为保证尽量在统一安排的上机时间内编译运行通过程序,应事先设计好程序。 (4)认真完成每次实验,并写出实验报告。3、实验内容与步骤:(1)利用java扩展包java.swing提供的jeditorpane类,来显示指定的网络资源的内容,能生成并响应超链接事件。public class browser extends jframejlabel jlabel;jtextfield jtf;jeditorpane edpl;/定义无参构造方法,对程序进行初始化public browser()super(brows
9、er);container con=getcontentpane();jlabel=new jlabel(请输入要访问的网址:);jtf=new jtextfield();jtf.addactionlistener(new myenter();jpanel panel=new jpanel();panel.setlayout(new gridlayout(2,1);panel.add(jlabel);panel.add(jtf);con.add(panel,borderlayout.north);edpl=new jeditorpane();edpl.seteditable(false);ed
10、pl.addhyperlinklistener(new myhyperlistener();con.add(new jscrollpane(edpl),borderlayout.center);setsize(600,800);setvisible(true);/ jeditorpane根据参数调用响应的页面void getpage(string site)tryedpl.setpage(site); /在edpl中显示指定网页catch(ioexception e)joptionpane.showmessagedialog(this,连接错误,错误提示,jopti onpane.error_
11、message);/处理输入网址时的回车操作class myenter implements actionlistener public void actionperformed(actionevent e)string string=jtf.gettext();getpage(string);/处理网页中的超链接class myhyperlistener implements hyperlinklistener public void hyperlinkupdate(hyperlinkevent e)if(e.geteventtype()=hyperlinkevent.eventtype.a
12、ctivated)string string=e.geturl().tostring();/获取超链接指向的地址getpage(string);/显示超链接指向的网页内容/建立主函数,对该类进行实例化public static void main(string args)browser mybrowser=new browser();mybrowser.setdefaultcloseoperation(jframe.exit_on_close);实验四 基于tcp/ip协议的单客户/服务器socket编程应用 (2 学时)1、实验目的:(1)掌握基于tcp/ip协议的流套接字的概念与应用(2)
13、掌握serversocke和socket的概念与应用(3) 掌握基于tcp/ip协议的c/s模式的编程应用2、基本要求:(1)注意自始至终贯彻课程中所介绍程序设计风格,养成良好的编程习惯。 (2)独立完成所布置习题。 (3)为保证尽量在统一安排的上机时间内编译运行通过程序,应事先设计好程序。 (4)认真完成每次实验,并写出实验报告。3、实验内容和步骤:1、建立服务器端程序本实验是基于udp协议的c/s模式的图形界面通讯程序,以可视化操作模式,实现服务器与客户端之间的通信操作。1、建立服务器端程序,利用该程序实现在客户端对指定端口进行监听,当有客户端发来连接请求时,向客户端提供服务。(1)tal
14、kserver.java,实现与客户的数据通信 :import java.io.*;import .*;public class talkserver /主函数 public static void main(string args) serversocket server; socket socket; string s; try/建立serversocket,针对指定端口进行侦听 server=new serversocket(2000); system.out.println(等待连接); socket=server.accept(); /侦听到客户端请求时,则接收请求,建立连接 sys
15、tem.out.println(连接成功); system.out.println(*); system.out.print(); /建立和socket绑定的输入输出流,在服务器与客户端之间进行通信 inputstream in=socket.getinputstream(); outputstream out=socket.getoutputstream(); datainputstream din=new datainputstream(in); dataoutputstream dout=new dataoutputstream(out); /建立从键盘进行输入的输入流 buffered
16、reader sin=new bufferedreader(new inputstreamreader(system.in); system.out.println(等待客户发送信息);/进入死循环,实现客户端与服务器之间的信息交互 while(true) system.out.println(); system.out.println(); s=din.readutf(); system.out.println(从客户端接收到的信息为+s); if(s.trim().equals(bye) break; system.out.print(请输入你要发送的信息); s=sin.readline
17、(); dout.writeutf(s); if(s.trim().equals(bye) break; /关闭相应的流和释放socket资源 din.close(); dout.close(); in.close(); out.close(); socket.close(); catch(ioexception e) system.out.println(error:+e); 2建立客户端程序(1)talkclient.java,实现与服务器的数据通信/客户端程序,用来向服务器端发出请求并进行通信import java.io.*;import .*;public class talkclie
18、nt public static void main(string args) socket socket;string s;try /针对服务器指定端口建立socket,同时对服务器指定端口发出连接请求socket=new socket(localhost,2000);system.out.println();system.out.println();system.out.println();/建立和socket绑定的输入输出流,以及从键盘读入数据的输入流inputstream in=socket.getinputstream();outputstream out=socket.getout
19、putstream();datainputstream din=new datainputstream(in);dataoutputstream dou=new dataoutputstream(out);bufferedreader sin=new bufferedreader(new inputstreamreader(system.in);/进入死循环进行服务器端和客户端的通信while(true)system.out.print(请输入您要发送的信息);s=sin.readline();dou.writeutf(s);if(s.trim().equals(bye) break;else
20、system.out.println();system.out.println();s=din.readutf();system.out.println(从服务器接收到的信息为:+s);if(s.trim().equals(bye) break;din.close();dou.close();in.close();out.close();socket.close(); catch (exception e) system.out.println(e);实验五 基于udp协议的c/s模式的socket编程应用 (2 学时)1、实验目的:(1)掌握基于udp协议的数据报套接字的概念与应用(2)掌握
21、datagramsocket和datagrampacket的概念与应用(3) 掌握基于udp协议的c/s模式的编程应用2、基本要求:(1)注意自始至终贯彻课程中所介绍程序设计风格,养成良好的编程习惯。 (2)独立完成所布置习题。 (3)为保证尽量在统一安排的上机时间内编译运行通过程序,应事先设计好程序。 (4)认真完成每次实验,并写出实验报告。3、实验内容和步骤:本实验是基于udp协议的c/s模式的图形界面通讯程序,以可视化操作模式,实现服务器与客户端之间的通信操作。1、建立服务器端程序(1)serverapp_udp.java,实现与客户的数据通信 :package talk;import
22、java.awt.*;import java.awt.event.*;import java.io.*;import .*;public class serverapp_udp extends windowadapter implements actionlistener,keylistener textfield str_send; label label; textarea msg; button send,exit; panel p1; string hostname; datagramsocket receivesocket,sendsocket; datagrampacket rec
23、eivepacket,sendpacket; public void display() frame f=new frame(在线聊天服务器); f.setsize(400,350); f.setlocation(400,400); f.setbackground(color.red); p1=new panel(); f.add(p1,south); msg=new textarea(); msg.setsize(100,250); msg.setbackground(color.white); msg.seteditable(false); f.add(msg); label=new la
24、bel(发送消息); p1.add(label); str_send=new textfield(20); p1.add(str_send); str_send.addkeylistener(this); send=new button(发送); p1.add(send); send.addactionlistener(this); exit=new button(退出); p1.add(exit); exit.addactionlistener(this); f.addwindowlistener(this); f.setvisible(true); try sendsocket=new d
25、atagramsocket(5000); catch(exception e) msg.append(e+n); /接受信息 public void receivemessage() try receivesocket=new datagramsocket(3333);while(true)byte buf=new byte500;receivepacket=new datagrampacket(buf,buf.length);receivesocket.receive(receivepacket); if(receivepacket.getlength()=0) system.out.pri
26、ntln(消息为空); continue; bytearrayinputstream bin=new bytearrayinputstream(receivepacket.getdata(); bufferedreader reader=new bufferedreader(new inputstreamreader(bin); msg.append(客户端:+reader.readline(); msg.append(n); reader.close(); bin.close(); catch (exception e) msg.append(e+n); /发送信息 public void
27、sendmessage() try string s=str_send.gettext(); str_send.settext(); msg.append(服务器:+s+n); bytearrayoutputstream out=new bytearrayoutputstream(); printstream pout=new printstream(out); pout.print(s); byte buf=out.tobytearray(); sendpacket=new datagrampacket(buf,buf.length,inetaddress.getbyname(hostnam
28、e),3001); sendsocket.send(sendpacket); buf=null; catch (exception err) msg.append(err+n); public void actionperformed(actionevent e) if(e.getsource()=send)sendmessage();if(e.getsource()=exit)system.out.println(聊天程序已经关闭,再见!n);system.exit(0);public void windowsclosing(windowevent e)system.out.println(
29、聊天程序已经关闭,再见n);system.exit(0);public void keypressed(keyevent e) if(e.getsource()=str_send)if(e.getkeychar()=keyevent.vk_enter)sendmessage();/主函数public static void main(string args)serverapp_udp app=new serverapp_udp();app.display();app.receivemessage();public void keyreleased(keyevent arg0) / todo a
30、uto-generated method stubpublic void keytyped(keyevent arg0) / todo auto-generated method stub2建立客户端程序clientapp_udp.java,实现客户端与服务之间的通信,package talk;import java.awt.*;import java.awt.event.*;import java.io.*;import .*;public class clientapp_udp extends windowadapter implements actionlistener,keyliste
31、nertextfield str_send;label label;textarea msg;button send,exit;panel p1;datagramsocket receivesocket,sendsocket;datagrampacket receivepacket,sendpacket;public void display()frame f=new frame(在线聊天客户端); f.setsize(400,350); f.setlocation(100,100); f.setbackground(color.red); p1=new panel(); f.add(p1,s
32、outh); msg=new textarea(); msg.setsize(100,250); msg.setbackground(color.white); msg.seteditable(false); f.add(msg); label=new label(发送消息); p1.add(label); str_send=new textfield(20); p1.add(str_send); str_send.addkeylistener(this); send=new button(发送); p1.add(send); send.addactionlistener(this); exi
33、t=new button(退出); p1.add(exit); exit.addactionlistener(this); f.addwindowlistener(this); f.setvisible(true); try sendsocket=new datagramsocket(3000); catch(ioexception e) msg.append(e+n); public void receivemessage()try receivesocket=new datagramsocket(3001);while(true)byte buf=new byte500;receivepa
34、cket=new datagrampacket(buf,buf.length);receivesocket.receive(receivepacket);bytearrayinputstream bin=new bytearrayinputstream(receivepacket.getdata(); bufferedreader reader=new bufferedreader(new inputstreamreader(bin); msg.append(服务器:+reader.readline(); msg.append(n); catch (exception e) msg.appen
35、d(e+n); public void sendmessage() try bytearrayoutputstream bout=new bytearrayoutputstream(); printstream pout=new printstream(bout); pout.print(str_send.gettext(); byte buf=bout.tobytearray(); sendpacket=new datagrampacket(buf,buf.length,inetaddress.getbyname(localhost),3333); sendsocket.send(sendp
36、acket); msg.append(客户端:+str_send.gettext()+n); str_send.settext(); catch (exception err) msg.append(err+n); public void actionperformed(actionevent e) if(e.getsource()=send)sendmessage();if(e.getsource()=exit)system.out.println(聊天程序已经关闭,再见!n);system.exit(0);public void windowsclosing(windowevent e)s
37、ystem.out.println(聊天程序已经关闭,再见n);system.exit(0);public void keypressed(keyevent e) if(e.getsource()=str_send)if(e.getkeychar()=keyevent.vk_enter)sendmessage();public static void main(string args) clientapp_udp client=new clientapp_udp();client.display();client.receivemessage();public void keyreleased
38、(keyevent arg0) / todo auto-generated method stubpublic void keytyped(keyevent arg0) / todo auto-generated method stub实验六 利用javamail收发电子邮件(2学时)1、实验目的:(1)掌握基于udp协议的数据报套接字的概念与应用(2)掌握datagramsocket和datagrampacket的概念与应用(3) 掌握基于udp协议的c/s模式的编程应用2、基本要求:(1)注意自始至终贯彻课程中所介绍程序设计风格,养成良好的编程习惯。 (2)独立完成所布置习题。 (3)为保
39、证尽量在统一安排的上机时间内编译运行通过程序,应事先设计好程序。 (4)认真完成每次实验,并写出实验报告。3、实验内容和步骤:本实验分成两部分,一部分是利用javamail实现发送带smtp身份认证的e-mail电子邮件,一部分利用javamail接收电子邮件。1) 建立java项目javamail,在该项目新建类au_sendmail.java,利用该类实现从wlbcmail,该邮箱密码为pm123456,向自己的个人邮箱发送一封邮件,sohu的smtp服务器地址为:,端口为25;登录sohu的smtp服务器时必须采用带身份验证的方式进行登陆。import java.util.propert
40、ies;import java.util.*;import javax.mail.address;import javax.mail.message;import javax.mail.session;import javax.mail.transport;import ernet.internetaddress;import ernet.mimemessage;import javax.mail.*;import javax.activation.*;public class au_sendmail public static void
41、 main(string args) throws exceptionstring from=wlbcmail;string to=wlbcmail;/该变量定义电子邮件接收者,如果要将邮件发送到自己的账户,就必须将此处修改为用于接收的电子邮件地址emailauthenticator auth=new emailauthenticator(wlbcmail ,pm123456);properties props =system.getproperties();props.put(mail.smtp.host, );props.put(mail.smtp.auth, true);session
42、session = session.getinstance(props,(authenticator)auth);/session.setdebug(true);mimemessage msg=new mimemessage(session); msg.setfrom(new internetaddress(from);msg.addrecipient(message.recipienttype.to, new internetaddress(to);msg.setsubject(我是主题subject);string s=我是邮件发送正文 email content;msg.settext(s);transport transport = session.gettransport(smtp);transport.connect(,25
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024上海建筑劳务分包合同
- 2024木材贸易合同范本
- 2024年国际金融服务与合作合同
- 2024个人住房抵押借款合同
- 2024年员工车辆租赁服务协议
- 2024快递员合同范本范文
- 2024年履约保证合同样本
- 2024茶叶运输合同
- (2024版)高端装备制造技术与专利共享协议
- 2024-2025版高中地理第一章区域地理环境和人类活动单元素养评价含解析中图版必修3
- CNAS-CC01:2015 管理体系认证机构要求
- 矿山规模划分标准
- 北师大版小学数学五年级上册重点练习试题(全册)
- 木兰辞(拼音打印)
- 心血管介入考试器械植入模拟试题卷
- 意愿类能愿动词偏误分析——以“要”、“想”、“敢”、“肯”为例
- 职业病防治监理实施细则
- 水轮机检修规程钟
- 变压器类产品型号注册管理办法
- 废钢渣综合利用项目建议书范文
- 柴油购销合同模板
评论
0/150
提交评论