计算机专业毕业实习报告.docx

上传人:b****8 文档编号:9081866 上传时间:2023-02-03 格式:DOCX 页数:21 大小:88.38KB
下载 相关 举报
计算机专业毕业实习报告.docx_第1页
第1页 / 共21页
计算机专业毕业实习报告.docx_第2页
第2页 / 共21页
计算机专业毕业实习报告.docx_第3页
第3页 / 共21页
计算机专业毕业实习报告.docx_第4页
第4页 / 共21页
计算机专业毕业实习报告.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

计算机专业毕业实习报告.docx

《计算机专业毕业实习报告.docx》由会员分享,可在线阅读,更多相关《计算机专业毕业实习报告.docx(21页珍藏版)》请在冰豆网上搜索。

计算机专业毕业实习报告.docx

计算机专业毕业实习报告

实习报告

实习性质:

顶岗实习

学生姓名:

彭杨科

专业班级:

计算机网络工程132班

指导教师:

陈顺立、张坤、刘方涛

实习时间:

2016年2月29日-2016年5月13日

实习地点:

普软件科技有限公司

重庆工程职业技术学院

学生姓名

专业班级

指导教师

彭杨科

计算机网络132班

刘方涛、张坤、陈顺立

实习时间

2016年2月29日-2016年5月13日

实习地点

普软件科技有限公司

实习名称

顶岗实习

自我总结

实习是每一个大学生必须拥有的一段经历,它使我们在实践中了解社会、在实践中巩固知识;实习又是对每一位大学毕业生专业知识的一种检验,它让我们学到了很多在课堂上根本学不到的知识。

既开阔了视野,又增长了见识,为我们以后进一步走向社会打下坚实的基础,也是我们走向工作岗位的第一步。

此次的实习我学习了弱电工程上的一系列东西,例如如何做工程预算,如何安装调试各种设备,如何管理好一个工程项目等。

在做这些事情的时候,一开始十分的紧张也很胆怯,因为第一次做这些,怕做得不好导致影响全部的工程进度;但是在后来的工作过程中,通过我的不断积累与不断的探索和询问,绝大多数的工程问题我都能够应付自如。

除了工程方面的东西,我还去了公司的售后服务部以及IT外包事业部。

都学习到了不错的社会经验,以及工作经历。

我相信通过的努力我会学到更多,做得更好。

指导教师

意见

实习单位

意见并盖章

(院内实习由系签署)

考核等级

1.前言

作为还没有踏入社会的大学生,面对自己未来的生活与工作,我们心中是有很多疑问的,我们特别需要到真正的工作环境中去感受一下自己几年后会所从事的工作。

因此在刚开学的两周时间里,学校为我们安排了生产实习,主要是让我们较深层次接触社会,运用所学的专业知识认识企业实践活动,了解企业运行环境,认识企业管理业务流程,为将来走上工作岗位打下基础。

2.实习目的

  1、加强和巩固理论知识,发现问题并运用所学知识分析问题和解决问题的能力。

  2、锻炼自己的实习工作能力,适应社会能力和自我管理的能力。

  3、了解实习单位的计算机技术的应用情况、需求情况和发展方向及前景。

4、亲身参与项目的实际完成工作,了解计算机专业软件开发的具体流程。

5、通过实习来认识了解自己,发现不足,提前做好自己的职业规划。

3.实习单位简介

杰普软件科技有限公司(BriupTechnology,Inc.)是一家专注于高端IT培训、软件外包、研发咨询的高新技术企业。

公司核心成员由海外留学人员和来自Sybase、亚信、Sun等国际大公司的资深技术人员组成,在电信、金融、电子商务等方面有着丰富的专业开发、管理和培训经验。

公司全面致力于开展以面向外企、电信、金融等行业为主的中高级软件人才培训及人才外包业务。

公司经过多年运营,先后为浦东软件园、徐汇软件园、漕河泾软件园、天地软件园、南京雨花软件园等提供数千名软件开发人员,同时成为全国首家专业软件外包园区---龙软园区最为紧密的合作伙伴,为园区专业提供软件外包人才。

上海紧缺人才办公室指定的高端IT培训基地2007年度获得“促进上海信息化建设奖”2007年度、2008年度最受网友推崇的IT培训品牌百家高校指定的专业实习孵化基地首家与“211工程”大学联合培养软件工程硕士的培训机构首家提出“优质就业”理念的IT培训机构国内首家面向大学生提供免费JAVA集训的IT公司。

公司业务:

IT培训:

A)DPS人才培训项目:

高级JAVA软件开发实训/职业规划及入职培训。

B)企业培训项目:

企业客户定制开发课程/软件开发/项目管理

软件外包:

提供软件开发服务和人力资源外包服务。

研发咨询:

提供专业的研发管理咨询服务

公司文化:

诚信、专业、和谐、创新

公司资质:

公司成立于2006年,注册资金100万人民币,是上海市人事局许可的高级人才培训中心。

同时也是上海市紧缺人才办公室培训基地。

 

4.实习任务

基于B/S架构下的网络聊天室系统。

4.1相关技术简介

B/S结构

B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。

这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。

客户机上只要安装一个浏览器,如NetscapeNavigator或InternetExplorer,服务器安装SQLServer、Oracle、MYSQL等数据库。

浏览器通过WebServer同数据库进行数据交互。

MySQL

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。

由于MySQL是开放源代码的,因此任何人都可以在GeneralPublicLicense的许可下下载并根据个性化的需要对其进行修改。

MySQL因为其速度、可靠性和适应性而备受关注。

大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。

MySQL这个名字,起源不是很明确。

一个比较有影响的说法是,基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQLAB创始人之一的MontyWidenius的女儿也叫My。

这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。

MySQL的海豚标志的名字叫“sakila”,它是由MySQLAB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。

获胜的名字是由来自非洲斯威士兰的开源软件开发者AmbroseTwebaze提供。

根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的Arusha的一个小镇的名字。

MySQL,虽然功能未必很强大,但因为它的开源、广泛传播,导致很多人都了解到这个数据库。

它的历史也富有传奇性。

2.4.2MyEclipse

MyEclipse,是在eclipse基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、JavaEE以及移动应用的开发。

MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持相当不错。

MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。

MyEclipse打开,新建项目,保证mysql和tomcat服务能够正常启动,项目才可以正常运行。

MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。

它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。

MyEclipse是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。

MyEclipse可以支持JavaServlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库链接工具等多项功能。

可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属eclipse开发工具。

5.实习内容

基于B/S架构下的网络聊天室系统。

需求分析:

系统功能需求根据用户对象的不同分为普通会员功能的需求和管理员对功能的需求两部分。

●普通会员对功能的需求:

新用户注册

取回密码

在线发送消息

修改个人基本信息

离开聊天室

●管理员对功能的需求:

用户管理

浏览所有用户信息

查找用户

用户权限分配

删除不合法用户

踢人

5.1数据逻辑设计

 

 

图1聊天室系统数据表关系图

 

5.2数据表结构

表1chat表

表头

类型

长度

是否允许为空

是否主键

描述

ID

bigint

20

用户编号

ChatRoom

varchar

50

聊天室

ChatFrom

varchar

50

聊天信息发送人

ChatTo

varchar

50

聊天信息接收人

ChatTime

datetime

-

信息发送时间

ChatAction

varchar

50

聊天表情

ChatContent

varchar

200

聊天信息内容

Secret

tinyint

1

悄悄话

 

表2users表

表头

类型

长度

是否允许为空

是否主键

描述

ID

bigint

20

用户编号

UserName

varchar

50

用户名

UserPassword

varchar

50

密码

LoginTime

bigint

20

登录时间

UserSign

varchar

50

个性签名

表3userlist表

表头

类型

长度

是否允许为空

是否主键

描述

ID

bigint

20

用户编号

ChatRoom

varchar

50

聊天室

UserName

varchar

50

用户名

ChatTime

bigint

20

信息发送时间

DenyRoom

varchar

50

封禁的聊天室

DenyTime

bigint

20

封禁的时间

数据库连接类Open_DB.java

5.3.数据库建立

packagechat;

importjava.sql.*;

publicclassOpen_DB

{

//数据库用户名

StringuserName="root";

//数据库密码

StringuserPassword="123456";

//数据库的URL,包括连接数据库所使用的编码格式

Stringurl="jdbc:

mysql:

//localhost:

3306/chat?

useUnicode=true&characterEncoding=UTF8";

//定义一个连接对象

ConnectiondbConn;

//错误信息串

StringerrDesc;

publicOpen_DB()

{

//初始化操作

errDesc="";

dbConn=null;

}

//连接数据库

publicConnectiongetConn()

{

try

{

//声明所用的类包

Class.forName("com.mysql.jdbc.Driver");

//获得数据库的连接对象

dbConn=DriverManager.getConnection(url,userName,userPassword);

}

catch(Exceptionex)

{

System.out.println("数据库连接失败!

");

dbConn=null;

errDesc=ex.toString();

}

returndbConn;

}

//获取错误信息

publicStringgetErrDesc()

{

returnerrDesc;

}

}

重写数据库请求操作方法类Excute_DB.java

packagechat;

importjava.sql.*;

//这个类继承自Open_DB雷

publicclassExecute_DBextendsOpen_DB

{

//数据库连接对象

privateConnectiondbConn;

privateStatementstmt;

privateResultSetrs;

//描述错误号0=无错误,-1有错误

privateinterrNum;

//error描述错误信息

privateStringerrDesc;

//初始化操作

publicExecute_DB()

{

dbConn=super.getConn();

stmt=null;

rs=null;

errNum=0;

errDesc="";

}

//执行sql执行语句,主要是执行插入和删除的SQL语句

publicbooleanexeSql(StringstrSql)

{

try

{

stmt=dbConn.createStatement();

stmt.executeUpdate(strSql);

stmt.close();

returntrue;

}

catch(Exceptionex)

{

this.errNum=-1;

this.errDesc=ex.toString();

returnfalse;

}

}

//执行sql查询语句

publicResultSetexeSqlQuery(StringstrSql)

{

try

{

stmt=dbConn.createStatement();

rs=stmt.executeQuery(strSql);

}

catch(Exceptionex)

{

this.errNum=-1;

this.errDesc=ex.toString();

rs=null;

}

returnrs;

}

//取得错误号码

publicintgetErrNum()

{

returnerrNum;

}

//取得错误信息

publicStringgetErrDesc()

{

returnerrDesc;

}

}

判断用户登录信息是否完整功能docheck()

//判断用户信息是否填写完整

functiondocheck()

{

if(form1.UserName.value=="")

{

alert("请填写您的用户名!

");

returnfalse;

}

elseif(form1.UserPassword.value=="")

{

alert("请填写您的密码密码!

");

returnfalse;

}

elseif(form1.UserPassword.value!

=form1.CUserPassword.value)

{

alert("两次密码不一致");

returnfalse;

}

else

{

returntrue;

}

}

 

判断用户登录信息功能

//设置数据格式

request.setCharacterEncoding("gb2312");

//用户是否登录的布尔变量

booleanisLogin=true;

//以微秒值返回当前时间

java.util.DateNowDate=newjava.util.Date();

longl_LoginTime=NowDate.getTime();

//获取用户填写的登录信息

Stringstr_UserName=(String)request.getParameter("UserName");

Stringstr_UserPassword=(String)request.getParameter("UserPassword");

//查找提交的用户名是否存在

StringstrSql="select*fromuserswhereUserNamelike'"+str_UserName+"'";

ResultSetrs=Ex.exeSqlQuery(strSql);

System.out.print(rs.getMetaData().getColumnCount());

if(rs.next())

{

//用户名已经存在

inti_ID=rs.getInt("ID");

Stringstr_UserPassword1=rs.getString("UserPassword");

longl_LastTime=rs.getLong("LoginTime");

rs.close();

//登录成功后密码将被保存15天

if((l_LoginTime-l_LastTime)>15*24*3600*1000)

{

strSql="updateuserssetLoginTime='"+l_LoginTime+"',UserPassword='"+str_UserPassword+"'whereUserNamelike'"+str_UserName+"'";

Ex.exeSql(strSql);

}

else

{

//用户名存在但是密码错误的情况

if(str_UserPpareTo(str_UserPassword1)!

=0)

{

isLogin=false;

}

else

{

strSql="updateuserssetLoginTime='"+l_LoginTime+"'whereUserNamelike'"+str_UserName+"'";

Ex.exeSql(strSql);

}

}

}

else

{

//用户名不存在,添加新用户到数据库

rs.close();

strSql="insertintousers(UserName,UserPassword,LoginTime)values('"+str_UserName+"','"+str_UserPassword+"','"+l_LoginTime+"')";

Ex.exeSql(strSql);

}

if(!

isLogin)

{

%>

您的输入的用户名或者密码有误,请重新输入

踢人功能

//获得被封ID和被封的房间

Stringstr_ID=request.getParameter("ID");

Stringstr_ChatRoom=request.getParameter("ChatRoom");

//获得当前时间

java.util.DateNowDate=newjava.util.Date();

longl_DenyTime=NowDate.getTime();

//把被封人时间保存到数据库

StringstrSql="updateuserlistsetDenyTime='"+l_DenyTime+"',DenyRoom='"+str_ChatRoom+"'whereID='"+str_ID+"'";

Ex.exeSql(strSql);

//获得被封的用户名

strSql="selectUserNamefromuserlistwhereID='"+str_ID+"'";

ResultSetrs=Ex.exeSqlQuery(strSql);

rs.next();

Stringstr_UserName=rs.getString("UserName");

rs.close();

//显示被封人信息

 

退出功能

//获取要退出的用户信息

Stringstr_ChatRoom=(String)session.getAttribute("ChatRoom");

Stringstr_UserName=(String)session.getAttribute("UserName");

session.invalidate();

//从用户列表中删除用户名

StringstrSql="deleteuserlistwhereUserNamelike'"+str_UserName+"'";

Ex.exeSql(strSql);

//在聊天室中显示该用户的离开信息

java.util.DateNowDate=newjava.util.Date();

Stringstr_NowDate=NowDate.toLocaleString();

strSql="insertintochat(ChatRoom,ChatFrom,ChatTo,ChatTime,ChatAction,ChatContent,Secret)values('"+str_ChatRoom+"','"+str_UserName+"','all','"+str_NowDate+"','依依不舍地','各位,我先走了,后会有期!

','0')";

Ex.exeSql(strSql);

%>

 <%=str_UserName%> 您已经从 

<%

if(str_ChatRpareTo("xiuxian")==0)

{

out.print("休闲娱乐");

}

elseif(str_ChatRpareTo("yuanfen")==0)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1