计算机专业毕业实习报告Word文档格式.docx
- 文档编号:22217988
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:21
- 大小:88.38KB
计算机专业毕业实习报告Word文档格式.docx
《计算机专业毕业实习报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《计算机专业毕业实习报告Word文档格式.docx(21页珍藏版)》请在冰豆网上搜索。
实习单位
意见并盖章
(院内实习由系签署)
考核等级
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服务能够正常启动,项目才可以正常运行。
它是功能丰富的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.实习内容
需求分析:
系统功能需求根据用户对象的不同分为普通会员功能的需求和管理员对功能的需求两部分。
●普通会员对功能的需求:
新用户注册
取回密码
在线发送消息
修改个人基本信息
离开聊天室
●管理员对功能的需求:
用户管理
浏览所有用户信息
查找用户
用户权限分配
删除不合法用户
踢人
5.1数据逻辑设计
图1聊天室系统数据表关系图
5.2数据表结构
表1chat表
表头
类型
长度
是否允许为空
是否主键
描述
ID
bigint
20
否
是
用户编号
ChatRoom
varchar
50
聊天室
ChatFrom
聊天信息发送人
ChatTo
聊天信息接收人
ChatTime
datetime
-
信息发送时间
ChatAction
聊天表情
ChatContent
200
聊天信息内容
Secret
tinyint
1
悄悄话
表2users表
UserName
用户名
UserPassword
密码
LoginTime
登录时间
UserSign
个性签名
表3userlist表
DenyRoom
封禁的聊天室
DenyTime
封禁的时间
数据库连接类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
//这个类继承自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)
stmt=dbConn.createStatement();
stmt.executeUpdate(strSql);
stmt.close();
returntrue;
this.errNum=-1;
this.errDesc=ex.toString();
returnfalse;
}
//执行sql查询语句
publicResultSetexeSqlQuery(StringstrSql)
rs=stmt.executeQuery(strSql);
this.errNum=-1;
this.errDesc=ex.toString();
rs=null;
returnrs;
}
//取得错误号码
publicintgetErrNum()
returnerrNum;
//取得错误信息
returnerrDesc;
判断用户登录信息是否完整功能docheck()
//判断用户信息是否填写完整
functiondocheck()
if(form1.UserName.value=="
)
{
alert("
请填写您的用户名!
returnfalse;
}
elseif(form1.UserPassword.value=="
请填写您的密码密码!
elseif(form1.UserPassword.value!
=form1.CUserPassword.value)
两次密码不一致"
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("
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'
Ex.exeSql(strSql);
//用户名存在但是密码错误的情况
if(str_UserPpareTo(str_UserPassword1)!
=0)
{
isLogin=false;
}
else
strSql="
Ex.exeSql(strSql);
else
//用户名不存在,添加新用户到数据库
strSql="
insertintousers(UserName,UserPassword,LoginTime)values('
'
)"
Ex.exeSql(strSql);
if(!
isLogin)
%>
<
h1align="
center"
>
您的输入的用户名或者密码有误,请重新输入<
/h1>
踢人功能
//获得被封ID和被封的房间
Stringstr_ID=request.getParameter("
Stringstr_ChatRoom=request.getParameter("
ChatRoom"
//获得当前时间
longl_DenyTime=NowDate.getTime();
//把被封人时间保存到数据库
updateuserlistsetDenyTime='
+l_DenyTime+"
DenyRoom='
+str_ChatRoom+"
whereID='
+str_ID+"
Ex.exeSql(strSql);
//获得被封的用户名
strSql="
selectUserNamefromuserlistwhereID='
rs.next();
Stringstr_UserName=rs.getString("
rs.close();
//显示被封人信息
退出功能
//获取要退出的用户信息
Stringstr_ChatRoom=(String)session.getAttribute("
Stringstr_UserName=(String)session.getAttribute("
session.invalidate();
//从用户列表中删除用户名
deleteuserlistwhereUserNamelike'
//在聊天室中显示该用户的离开信息
Stringstr_NowDate=NowDate.toLocaleString();
insertintochat(ChatRoom,ChatFrom,ChatTo,ChatTime,ChatAction,ChatContent,Secret)values('
all'
+str_NowDate+"
依依不舍地'
各位,我先走了,后会有期!
0'
&
nbsp;
<
%=str_UserName%>
&
您已经从&
<
fontcolor="
#FF0000"
%
if(str_ChatRpareTo("
xiuxian"
)==0)
out.print("
休闲娱乐"
elseif(str_ChatRpareTo("
yuanfen"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机专业 毕业 实习 报告