java web 项目大作业

项目涵盖了从网页设计到动态交互及数据库连接的全过程。首先进行了页面设计,包括静态网页的Html、Css和Javascript实现。接着,利用Jsp创建动态网页,实现用户交互,如筛选功能。数据库采用Mysql,通过JavaBean和Servlet进行连接。虽然没有使用框架,但实现了用户登录、注册、讨论发布、商品筛选和对比等功能。
摘要由CSDN通过智能技术生成

项目历程

        1.对整个网页进行页面设计 Axure mockitt

        2.静态网页 Html Css Javascript 

        3.动态网页 与用户的交互窗口 Jsp

        4.创建数据库并且连接数据库 Mysql Navicat Javabean Servlet eclipse

目录

项目历程

第一阶段  网页设计

需求分析

系统功能结构图

业务实体的属性和操作

第二部分 静态网页设计

筛选区 科普区 讨论区 商品参数区

第三部分 动态网页

动态网页主要实现的与服务器互动

筛选区互动功能核心代码段

jsp处理提交的表单

建立数据库数据表

第四部分 实现所有与数据库连接的功能

建立数据库并与数据库连接

实现所有需要数据库连接的功能

总结部分 

整个过程中由于能力的原因我们并没有使用什么框架  太菜了实在是   这里放个链接 是整个项目的文件 

项目目录


 


第一阶段  网页设计

需求分析

  • 市面上的电脑品类众多,类型复杂,小白在选购电脑时很难做到让电脑的各项指标都符合心意。同时跨平台选购很难做到多个笔记本电脑的性能的对比,基于此我们开发本网站,为选购电脑的新手小白指路。
  • 系统功能结构图

  •  

 注:实际情况中 由于不可抗力我们的后台只做出了一个数据管理

业务实体的属性和操作

用户 个人信息;  收藏; 删除评论讨论 发布; 点赞; 回复; 举报
用户浏览操作流 搜索; 筛选; 对比; 查看评论管理员管理操作流 发帖监督; 数据监控; 上新推送; 网站维护


第二部分 静态网页设计

静态网页部分一共有8个页面  常见的BootStrap Jquery组件

  1. 首页  后序重新改过一遍(这里先不放)  使用轮播图
  2. 登录注册页面   
  3. 科普区
  4. 讨论区
  5. 筛选区
  6. 对比商品页面
  7. 商品详细参数页面
  8. 管理员页面

 这里是四个功能区的图放在上面

筛选区 科普区 讨论区 商品参数区

 

 


第三部分 动态网页

  • 动态网页主要实现的与服务器互动

    • 登陆注册后的提交验证表单
    • 点击筛选完成后提交表单

 

  • 提交form表单 action forword等动作
  • 筛选区互动功能核心代码段

<div id="wrap">
		<section id="section">
			<ul id="type">
				
				<form action="done.jsp" >
				
			品牌:
			<div class="RadioStyle">
			
			    <input type="radio" name="brand" value="惠普" id="b1"><label for="b1">惠普</label>
			    <input type="radio" name="brand" value="联想" id="b2"><label for="b2">联想</label>
				<input type="radio" name="brand" value="华为" id="b3"><label for="b3">华为</label>
				<input type="radio" name="brand" value="戴尔" id="b4"><label for="b4">戴尔</label>
				<input type="radio" name="brand" value="华硕" id="b5"><label for="b5">华硕</label>
				<input type="radio" name="brand" value="机械师" id="b6"><label for="b6">机械师</label>
			</div>
			
			<div class="clear"></div>
			
			尺寸:<br>
			<div class="RadioStyle">
			    <input type="radio" name="size" value=11 id="sg1"><label for="sg1">11</label>
			    <input type="radio" name="size"value=14.5 id="sg2"><label for="sg2">14.5</label>
			    <input type="radio" name="size" value=15.6 id="sg3"><label for="sg3">15.6</label>
			    <input type="radio" name="size" value=16 id="sg4"><label for="sg4">16</label>
			
			</div>
			<div class="clear"></div>
			价格:<br>
			
			<div class="RadioStyle">
			    <input type="radio" name="price" value="3000" id="p1"><label for="p1">3000</label>
			    <input type="radio" name="price" value="3000-4000" id="p2"><label for="p2">3000-4000</label>
			    <input type="radio" name="price" value="4000-8000" id="p3"><label for="p3">4000-8000</label>
			    <input type="radio" name="price" value="10000+" id="p4"><label for="p4">10000+</label>
			
			</div>
			<input type ="submit" class="btn btn-default" style="text-align:right" class="btn btn-white btn-sm"style='color:#FFFFFF;' value="筛选完成"/>
				</form>
				
</ul>
</section>
</div>
  • jsp处理提交的表单


	
<%
	javaSqlite sql=new javaSqlite();
	ArrayList<Commodity> array=new  ArrayList<Commodity>();
	ArrayList<Commodity> list=new  ArrayList<Commodity>();
	array=sql.getArrayListComm();

	String brand=request.getParameter("brand");
	String size=request.getParameter("size");
	String price=request.getParameter("price");
	//String ram=request.getParameter("ram");
	
	 int i=0;
	 for (;i<array.size();i++) {
		 	Commodity c=null;
		 	c=array.get(i);
			String b=c.getCommodityBrand().toString().strip();
			//String s=c.getCommoditySize().toString();

			
		 	if (b.equals(brand)){// && s.equals(size)){
		 	//& c.getCommoditySize().equals(size)&& c.getCommodityRAM().equals(ram)
			list.add(c);

	 }};
	// out.println("你的选择有 1.brand :"+brand+"2尺寸:"+size+"3价格"+price+"\n");
	 out.println("得到数据"+list.size()+"条");
%>
	<form  action="../Vs/vs.jsp" method="post">
			<select id="select1" name="select1"> 
	      <option>--请选择--</option>
<%	 for (int j=0;j<list.size();j++){
	  Commodity c=list.get(j); 
%>	  		<option value=<%=array.indexOf(c) %> ><%=c.getCommodityName().toString() %></option>
<% }%>
		</select>




			<select id="select2"name="select2"> 
	      <option>--请选择--</option>
<%	 for (int j=0;j<list.size();j++){
	  Commodity c=list.get(j); 
%>	  		<option value=<%=array.indexOf(c) %> ><%=c.getCommodityName().toString() %></option>
<% }%>
		</select>
		<input type ="submit" class="btn btn-default" style="text-align:right" class="btn btn-white btn-sm"style='color:#FFFFFF;' value="开始对比"/>
		</form>



<%	 

	 for (int j=0;j<list.size();j++){
		  Commodity c=list.get(j);
		  

%>
<div class="container">
        <div class="row clearfix">
            <div class="col-md-4 column">
                <img alt="100x140" src="img/<%=c.getCommodityPicture() %>" width="300" height="300"/>
                <div class="computer">
                <br>
            	<br>
                    <div class="btn-group">
                    	<div id="neon-btn">
		  

		</div>
                        
                        <a href="../Vs/商品详情.jsp?id=<%=array.indexOf(c)%>"> <button class="btn one">商品详情</button></a>
                        </a>
                        &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp 
        
                        <aod1>
                            <aodd>
                                <div>
                                    
                                    <button class="btn two"><%=c.getCommodityName().toString()%></button>
                                </div>
                            </aodd>
                        </aod1>
                        
                    </div>
                </div>
            </div>
            <br>
          <br><br>
          <br>
<%
if (j<list.size()-1){
		j++; 
		c=list.get(j);

%>
            <div class="col-md-4 column">
                <img alt="140x140" src="img/<%=c.getCommodityPicture()%>" width="300" height="300" />
                <div class="computer">
                <br>
            	<br>
                    <div class="btn-group">
                         <a href="../Vs/商品详情.jsp?id=<%=array.indexOf(c)%>"> <button class="btn one">商品详情</button></a>
                        &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp
                            <aodd>
                                <div>
                                    
                                   <button class="btn two"><%=c.getCommodityName().toString()%></button>
                                </div>
                            </aodd>
                        </aod1>
                    </div>
                </div>
            </div>
<%
}
if (j<list.size()-1){
	j++;
c=list.get(j);

%>
            <div class="col-md-4 column">
                <img alt="140x140" src="img/<%=c.getCommodityPicture() %>" width="300" height="300" />
                <div class="computer">
                <br>
            	<br>
                    <div class="btn-group">
                        <a href="../Vs/商品详情.jsp?id=<%=array.indexOf(c)%>"> <button class="btn one">商品详情</button></a>
                        &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp
                        <aod1>
                            <aodd>
                                <div>
                                     
                                    <button class="btn two"><%=c.getCommodityName().toString()%></button>
                                </div>
                            </aodd>
                        </aod1>                        
                    </div>
                </div>
            </div>
            <div>
            <br>
            <br>
            </div>
</div>
</div>

<%
}
		 }
%>


  • 建立数据库数据表

 

 

 


第四部分 实现所有与数据库连接的功能

建立数据库并与数据库连接

这里的与数据库连接 大多是用JavaBean 组件 jdbc jar包和navicat连接的

@@有部分直接写,有部分用Javabean  比较乱也没有统一

实现所有需要数据库连接的功能

        登陆注册

        用户发布讨论

 

  1.         用户收藏商品

 

  1.         用户筛选和对比商品

  1.         管理员审核帖子

 


总结部分 

整个过程中由于能力的原因我们并没有使用什么框架  太菜了实在是   这里放个链接 是整个项目的文件 链接:https://pan.baidu.com/s/1Xif7qJ3FKRhTkhyEHWsMMQ 
提取码:nn2u

项目目录

 

  • 7
    点赞
  • 98
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
1. 总体介绍 本次项目主要以本学期所学内容为基础,采用servlet+jsp+jdbc的技术以及mvc模式进行项目开发,本次开发的内容主要以实现CRUD核心功能为主的教务管理系统,分为学生端和教师端,前端采用jquery进行数据传输以及处理,bootstap写界面。 2. 技术架构 运行环境:tomcat9+mysql5+maven3.8+jdk8 前端技术:jquery 用以数据处理以及前端验证以及生成验证码等等 Bootstrap 前端界面处理 后端技术:servelt+jsp maven进行jar包和第三方库管理 采用jspsmart进行文件的操作处理 数据库:mysql5 基于MVC的分层思想及采用jsp+servelt技术的B/S结构的应用系统,系统主要开发语言为JAVA,JSP。数据库要求使用MySQL8.0,应用服务器选用Tomcat服务器 3. 功能介绍 系统能够提供用户有好的界面 系统具有良好的允许效率 系统具有良好的扩充性,灵活性 系统管理操作简单易懂 3.1 总体结构 3.2 模块详情 学生模块: 注册: 1. 用户点击注册,进行注册; 2. 用户输入注册信息; 3. 校验数据:如果用户名重复或者两次密码校验不合格或者密码规格不符合,则提示错误信息; 4. 若信息无错误,提示注册成功,跳转到登录页。 登录: 1. 用户进入系统未进行登录则自行跳转登录页面; 2. 点击忘记密码可进行密码找回; 3. 提交信息进行校验,查看用户名密码是否为空以及是否符合格式,随后在后台进行校验,合格则进行登录跳转到用户界面; 4. 若登录信息不正确,则提示登录错误信息。 查看成绩: 1. 点击查看成绩,打印成绩列表; 2. 支持到处成绩单为pdf格式。 导出成绩: 1. 点击到处按钮; 2. 系统自动处理并到处成pdf。 个人信息管理: 1. 选择上传头像 2. 修改个人信息:按需填写个人信息,随后进行保存则覆盖修改以往的个人信息。 退出登录: 1. 点击退出登录,自动退出到首页并删除本地和服务器缓存。 教师模块: 注册: 1用户点击注册,进行注册; 2用户输入注册信息; 3校验数据:如果用户名重复或者两次密码校验不合格或者密码规格不符合,则提示错误信息; 4若信息无错误,提示注册成功,跳转到登录页。 登录: 1用户进入系统未进行登录则自行跳转登录页面; 2点击忘记密码可进行密码找回; 3提交信息进行校验,查看用户名密码是否为空以及是否符合格式,随后在后台进行校验,合格则进行登录跳转到用户界面; 4若登录信息不正确,则提示登录错误信息。 个人信息管理: 1选择上传头像 2修改个人信息:按需填写个人信息,随后进行保存则覆盖修改以往的个人信息。 学生管理: 1. 点击添加学生,填写学生信息进行添加; 2. 修改学生信息,点击修改,按需填写要修改的学生信息,进行保存覆盖修改; 3. 点击删除学生数据,提示是否删除,确定则删除,取消则不删除; 4. 查看成绩,点击查看学生成绩,单独列出学生成绩列表; 成绩管理: 1. 点击成绩管理,列出所有学生成绩; 2. 点击修改,勾选需要修改的学生,按需填写修改信息,保存覆盖修改学生信息。 退出登录: 1点击退出登录,自动退出到首页并删除本地和服务器缓存。 4. 页面设计 静态jsp页面和jquery和bootstrap 5. 数据库设计 权限对照表: 表名: role 名称 类型 长度 允许空值 是否主键 注释 uid 整型 11 否 是 权限等级 utype 字符 255 否 否 用户等级名称 分数表: 表名: score 名称 类型 长度 允许空值 是否主键 注释 id 整型 200 否 是 学号 dat 字符 255 否 否 课程1分数 Android 字符 255 否 否 课程2分数 Jsp 字符 255 是 否 课程3分数 学生表: 表名: student 名称 类型 长度 允许空值 是否主键 注释 id 整型 59 否 是 学号 password 字符 255 否 否 登陆密码 Name 字符 255 否 否 学生姓名 Sex 字符 255 是 否 性别 School_date 字符 255 是 否 入学时间 Major 字符 255 是 否 专业 email 字符 255 是 否 邮箱 教师表: 表名: student 名称 类型 长度 允许空值 是否主键 注释 id 整型 59 否 是 教师工号 password 字符 255 否 否 登陆密码 Name 字符 255 否 否 教师姓名 Sex 字符 255 是 否 性别 email 字符 255 是 否 邮箱
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值