博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaWeb 项目开发中的技术总结
阅读量:5774 次
发布时间:2019-06-18

本文共 1610 字,大约阅读时间需要 5 分钟。

 前言:

   在项目开发过程中的一点点指导思想

1、环境准备

  • win系统
  • Eclipse 开发平台
  • maven 
  • tomcat
  • Mysql 数据库,mysql5.6
  • 操作数据库的jar 包
    •   JDBC 连接数据库的jar,mysql-connector-java-xxx.jar
    •   DbUtils 操作数据库jar包,基于 JDBC的封装
    •   数据源jar,可以有c3p0、dbcp
  • 日志文件,log4j
  • 前台编写jquery需要的js
  • 编写前台使用的公用样式 bootstrap

2、需求

创建一个表,对该表进行增删改查

3、数据库创建

create database XXX;

create table XXX ();

4、详细设计

  1. 数据库操作方法的封装  
    使用数据源来获取连接和释放连接
    将基本的CRUD方法封装,以供子类继承或者调用
  2. 实体类,实体的数据库操作
  3. 实现业务逻辑的servlet
    在web.xml 中配置出servlet 对应的路径,我们本来的一个做法是 在doGet 或者 doPost中将路径拦截,然后用 拦截路径得到的methodName 来调用对应的方法。缺点:每增加一个方法,除了在servlet中要配置一条路径外,dopost中也得将路径加进去
    现在有个方法,如果路径与对应的方法名取值相同,可以采用映射
    //1 获取servlet路径 诸如:/add.do        String servletPath=req.getServletPath().substring(1);        //去除/和.do得到类似于add这样字符串        String methodName=servletPath.substring(0,servletPath.length()-3);        //System.out.println(methodName);        try {            //利用反射获取获取methodName对应的方法            Method method = getClass().getDeclaredMethod(methodName, HttpServletRequest.class,HttpServletResponse.class);            //利用反射获取方法            method.invoke(this, req,resp);        } catch (Exception e) {            //出错时候响应出来            resp.sendRedirect("error.jsp");        }

      对于request、response 的编码问题

    在servlet 中跳转页面,我们需要将后台的对象在传回前台,可以用 request.setAttribute(name,value);
    request.getRequestDispatcher(forwordPath).forward(request,response);
  4. 新添加
    新添加的信息有哪些需要验证错误,比如name是否被占用,电话号的格式,email的格式之类,若验证通过,则将表单封装为一个实体对象,然后操作save数据库,成功则重定向到 success.jsp 页面,失败则提示错误信息,并保留在当前页面
  5. 修改
    获取请求参数id,根据id 得到实体对象,重定向到 修改页面
    验证参数通过后,将传过来的表单参数作为一个信息对象,调用操作数据库的修改方法,成功则跳转到查询页面
    判断一个值唯一,可以用old 和 new 两个参数作为对比,如果新旧不相同,则在数据库中其是否存在
  6. 删除
    获取id的值,执行提示是否删除,调用Dao的删除方法,删除成功跳转删除(批量删除?)

 

转载地址:http://xvaux.baihongyu.com/

你可能感兴趣的文章
BeanShell变量和方法的作用域
查看>>
LINUX下防恶意扫描软件PortSentry
查看>>
由数据库对sql的执行说JDBC的Statement和PreparedStatement
查看>>
springmvc+swagger2
查看>>
软件评测-信息安全-应用安全-资源控制-用户登录限制(上)
查看>>
cacti集成
查看>>
Android中的Cursor
查看>>
我的友情链接
查看>>
Java Web Application 自架构 一 注解化配置
查看>>
如何 debug Proxy.pac文件
查看>>
Python 学习笔记 - 面向对象(特殊成员)
查看>>
Kubernetes 1.11 手动安装并启用ipvs
查看>>
Puppet 配置管理工具安装
查看>>
Bug多,也别乱来,别被Bug主导了开发
查看>>
sed 替换基础使用
查看>>
高性能的MySQL(5)创建高性能的索引一B-Tree索引
查看>>
附件3:eclipse memory analyze使用教程
查看>>
oracle备份与恢复--rman
查看>>
Postfix邮件发送和接收实验
查看>>
图片变形的抗锯齿处理方法
查看>>