zoukankan      html  css  js  c++  java
  • 实战项目一

    第1章    项目简介

    1.1     功能演示

    1.2     软件开发流程(了解)

    1.3     创建数据仓库,建立3个表结构

    用户表(uid,username,password,birthday,state,code)

    分类表(cid,cname)

    商品表(pid,pname,pdesc,market_price,shop_price,...cid)

    单独看分类表和用户表没有任何关系

    分类表和商品表有一个对应关系:

      在商品表上的 cid列上设置了一个外键,参照了分类表上的cid

    第2章    通用Servlet的编写

    数据增删改查: 需要用5个Servlet

    通过Servlet

    目的:减少Servlet数量

    原理:

       从客户端向服务端发起请求,每次都要传递额外的键值对的数据method=””,

       服务端获取到method对应的内容之后,通过判断不同的内容调用不同的功能

    从客户端向服务端发起请求,调用功能方式:

     1_通过表单向服务端发起请求

     2_通过链接向服务端发起请求

     3_Ajax向服务端发起请求

    2.1     版本1:

    *_new DynamicWebProject(BaseServlet)

    *_项目下建立index.html

    <body>

    <form action="/BaseServlet/ServletDemo01?method=addStu" method="post">

         用户<input type="text" name="username"/><br/>

         <button>提交</button>

    </form>

    <br/>

    <a href="/BaseServlet/ServletDemo01?method=delStu">删除学生</a><br/>

    <button onclick="fn()">按钮</button>

    <script>

    function fn(){

         $.post("/BaseServlet/ServletDemo01",{"method":"checkStu","user":"tom"},function(data){

              alert(data);

         });

    }

    </script>

    </body>

    *_在项目下建立cn.itcast.servlet___>ServletDemo

     代码详见BaseServletsrccnitcastservletServletDemo01.java

    弊端:如果模块下功能较多,if(){}else{}语句过多

    2.2     版本2

    理解BaseServlet执行流程

    抽取工具类BaseServlet

    第3章    搭建项目环境

    1_创建DynamicWebProject(store_v5)

    2_创建各个包结构

    cn.itcast.store.web.servlet

    cn.itcast.store.web.fitler

    cn.itcast.store.web.base

    Cn.itcast.store.service

    cn.itcast.store.service.serviceImp

    Cn.itcast.store.dao

    cn.itcast.store.dao.daoImp

    cn.itcast.store.domain

    Cn.itcast.store.utils

    3_导入JAR包

    4_导入工具类 

       UUIDUtil  CookUtil

    5_导入配置文件

      C3P0配置文件,修改参数(dbname,user,pass)

      JDBCUtils:设置main方法,打印方法getConnection()返回值

    6_导入编码过滤器(EncodingFilter)

      对过滤器中的request上的3个方法进行增强

      req.getParameterValues();  req.getParameterMap(); req.getParameter();

      手动对过滤器进行配置

    7_导入BaseServlet  ,不需要配置

    8_导入JSP页面

    9_创建了用户模块相关程序

      UserSerlvet UserService UserServiceImp  UserDao UserDaoImp User

    第4章    实现用户注册功能

    开发约定

    为了项目管理方便,不会从客户端直接发起请求到JSP页面.

    先请求到Servlet,在由Servlet转发到JSP页面.

    4.1     页面路径跳转

    1_ /jsp/index.jsp  修改连接

      <a href="${pageContext.request.contextPath}/UserServlet?method=registUI">注册</a>

    2_UserServlet__>registUI

      return “/jsp/regist.jsp”;

    4.2     注册功能原理分析

    4.3     开发步骤约定(普通MVC功能)

    1_准备工作(表单属性设置,链接拼接,Ajax编写)

      准备工作实现完毕之后,可以从客户端向服务端发起请求

    2_Servlet

      明确要实现的功能,中文注释,代码

    3_service_dao

    4_jsp页面

    PS:为了方便断点调试,eclise===>window==>preferences===>java===>debug

    4.4     步骤实现

    1_准备工作   /jsp/regist.jsp

      设置表单各种属性 action method

    2_UserServlet__>userRegist

    接收表单参数

    调用业务层注册功能

    注册成功,向用户邮箱发送信息,跳转到提示页面

    注册失败,跳转到提示页面

    3_依次实现service,dao

    4_ /jsp/info.jsp获取提示信息

    第5章    电子邮箱

    5.1     概念:

    *_邮件服务器:

      公司服务器上安装软件,管理各个邮箱账户中的邮件 接收/发送

    *_电子邮箱:

       各个账户在服务器上开辟一段空间

    *_邮件协议:  发送SMTP  接收:pop3/pop/imap

       作用:约定了邮件在网络中传输格式

    *_搭建邮件服务器

      获取到eyoumailserversetup.exe ,安装即可

  • 相关阅读:
    C#中的扩展方法详解
    MVC Razor模板引擎 @RenderBody、@RenderPage、@RenderSection及Html.RenderPartial、Html.RenderAction
    @html.ActionLink的几种参数格式
    MVC session过期如何处理跳转
    LINQ to SQL和Entity Framework对比与关联
    ASP.Net 更新页面输出缓存的几种方法
    asp.net缓存
    ASP.NET应用程序与页面生命周期
    两种图片延迟加载的方法总结jquery.scrollLoading.js与jquery.lazyload.js
    测试入门知识
  • 原文地址:https://www.cnblogs.com/honghong75042/p/9600855.html
Copyright © 2011-2022 走看看