实验报告脱利锋Word格式文档下载.docx
- 文档编号:15360561
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:40
- 大小:1.46MB
实验报告脱利锋Word格式文档下载.docx
《实验报告脱利锋Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《实验报告脱利锋Word格式文档下载.docx(40页珍藏版)》请在冰豆网上搜索。
熟练掌握jdk的环境变量配置及检测。
熟练掌握MyEclipse、sublime等开发工具的使用。
数量掌握MySQL、Oracle数据库的配置连接及使用。
学习及使用基本页面语言HTML、JavaScript、jsp、Ajax的应用开发。
学习及使用SSH的struts2的基本原理及实际应用。
学习jquery、propertype的流行框架的使用。
学习Java语言的web开发操作。
学习JDBC、hibernate等数据库开发原理及使用。
学习servlet的原理及开发应用。
学习简单SQL语句的开发应用。
学习及使用MVC开发模式。
二、实验环境
MyEclipse+JDBC+MySQL+tomcat
所用实验开发工具截图如下:
1.MyEclipse配置截图:
2.MySQL数据库连接:
3.连接到数据库表单:
4.Tomcat与MyEclipse的配置:
三、实验内容与实验要求
1.实验内容:
通过对Java语言的了解,及web前端开发语言的学习及使用,在遵循MVC设计模式的基础上设计模拟购物网站,该网站主要实现了用户登录、注册、购物车、主界面、订单的创建等具体功能。
该网站遵循MVC架构应用。
即模型层、视图层、控制层。
基于struts2实现。
主要实现功能模块有:
用户管理、产品浏览、购物车即表单创建。
模型层主要依靠action类实现,视图层基于HTML、JSP、Ajax等技术实现。
控制层由web.xml和struts.xml配置,实现相应的action配对,实现转发,返回页面结果。
2.实验要求:
通过该网站的创建,达到深入了解学习Javaweb开发流程、JDBC及oracle、MySQL数据库技术的应用,深入了解学习SSH的基本原理及开发流程。
本实验基于struts2开发,深入学习struts2的基本工作原理,并对此servlet学习struts控制转发的优缺点。
对MVC设计模式加以熟悉及应用。
为以后的工作学习打下夯实的基础。
3.需求分析:
实现用户登录、注册,模拟查找图书商品、查看分类、购买、订单创建的功能。
设计模式遵循MVC架构,基于struts2完成,JDBC连接数据库,所用数据库为MySQL,模拟服务器配置为tomcat。
4.功能框架:
5.数据库E-R模型图:
6.实验项目截图:
四、实验过程与分析
1.注册模块
部分实现代码:
(1)实体类user的实现(dao层):
publicclassUserimplementsSerializable{
privateIntegerid;
privateStringemail;
privateStringnickname;
privateStringpassword;
privateIntegeruserIntegral;
privatebooleanemailVeriy;
privateStringemailVeriyCode;
privatelonglastLoginTime;
privateStringlastLoginIp;
publicUser(){}
publicUser(Integerid,Stringemail,Stringnickname,Stringpassword,IntegeruserIntegral,booleanemailVeriy,StringemailVeriyCode,longlastLoginTime,StringlastLoginIp){
this.id=id;
this.email=email;
this.nickname=nickname;
this.password=password;
this.userIntegral=userIntegral;
this.emailVeriy=emailVeriy;
this.emailVeriyCode=emailVeriyCode;
this.lastLoginTime=lastLoginTime;
this.lastLoginIp=lastLoginIp;
}
publicIntegergetId(){returnid;
}
publicvoidsetId(Integerid){this.id=id;
publicStringgetEmail(){returnemail;
publicvoidsetEmail(Stringemail){this.email=email;
publicStringgetNickname(){returnnickname;
publicvoidsetNickname(Stringnickname){this.nickname=nickname;
publicStringgetPassword(){returnpassword;
publicvoidsetPassword(Stringpassword){this.password=password;
publicIntegergetUserIntegral(){returnuserIntegral;
publicvoidsetUserIntegral(IntegeruserIntegral){
publicbooleanisEmailVeriy(){returnemailVeriy;
publicvoidsetEmailVeriy(booleanemailVeriy){
publicStringgetEmailVeriyCode(){
returnemailVeriyCode;
publicvoidsetEmailVeriyCode(StringemailVeriyCode){
publiclonggetLastLoginTime(){
returnlastLoginTime;
publicvoidsetLastLoginTime(longlastLoginTime){
publicStringgetLastLoginIp(){
returnlastLoginIp;
publicvoidsetLastLoginIp(StringlastLoginIp){
由于struts2将通过get、set方法从页面获取及展示数据,具体实体类均与user实体类如出一辙,因此后续实体类不再做展示。
(2)用户注册的业务层实现代码如下:
packagecom.struts.dang.services.impl;
importjavax.servlet.http.HttpSession;
importorg.apache.struts2.ServletActionContext;
importcom.struts.dang.dao.UserDao;
importcom.struts.dang.dao.UserDaoImpl;
importcom.struts.dang.entity.User;
importcom.struts.dang.services.UserService;
importcom.struts.dang.utils.Constant;
importcom.struts.dang.utils.EmailUtil;
importcom.struts.dang.utils.MD5Utils;
importcom.struts.dang.utils.VerifyCodeUtils;
publicclassUserServiceImplimplementsUserService{
publicvoidregister(Useruser,Stringip){
UserDaouserDao=newUserDaoImpl();
try{
Stringmd5Pwd=MD5Utils.md5(user.getPassword());
user.setPassword(md5Pwd);
user.setUserIntegral(Constant.NORMAL_LEVEL);
booleanflag=user.isEmailVeriy()?
true:
false;
user.setEmailVeriy(flag);
user.setLastLoginTime(System.currentTimeMillis());
user.setLastLoginIp(ip);
Stringuuid=VerifyCodeUtils.generateCode();
user.setEmailVeriyCode(uuid);
userDao.save(user);
Stringcode=uuid;
EmailUtil.send(user.getEmail(),code);
HttpSessionsession=ServletActionContext.
getRequest().getSession();
session.setAttribute("
emailVeriyCode"
user.getEmailVeriyCode());
user"
user);
}catch(Exceptione){
e.printStackTrace();
}
(3)action控制转发层实现代码:
publicclassRegisterActionextendsBasicAction{
privateUseruser;
publicStringregister(){
return"
success"
;
publicStringexecute(){
UserServiceservice=newUserServiceImpl();
Stringip=httpRequest.getRemoteAddr();
service.register(user,ip);
return"
}catch(Exceptione){
e.printStackTrace();
return
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 报告 脱利锋