湖南信息科学职业学院电子信息学院.pptx

上传人:知****量 文档编号:17444831 上传时间:2022-05-24 格式:PPTX 页数:42 大小:1.08MB
返回 下载 相关 举报
湖南信息科学职业学院电子信息学院.pptx_第1页
第1页 / 共42页
湖南信息科学职业学院电子信息学院.pptx_第2页
第2页 / 共42页
点击查看更多>>
资源描述

《湖南信息科学职业学院电子信息学院.pptx》由会员分享,可在线阅读,更多相关《湖南信息科学职业学院电子信息学院.pptx(42页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、1教学目标教学目标2v 了解软件工程的基本开发流程了解软件工程的基本开发流程v 了解项目基本功能需求了解项目基本功能需求v 学会分析需求学会分析需求v 尝试编写需求说明书尝试编写需求说明书3v 本项目是一个土地管理信息系统,要求实现的补偿标准本项目是一个土地管理信息系统,要求实现的补偿标准列表显示和新增功能。如图所示:列表显示和新增功能。如图所示:45v 角色:是与系统交互的人或事,所谓角色:是与系统交互的人或事,所谓“系统交互系统交互”指的指的是角色向系统发送信息,从系统中接收消息或是在系统中是角色向系统发送信息,从系统中接收消息或是在系统中交换信息,只要使用使用用例与系统相互交流的任何人或

2、交换信息,只要使用使用用例与系统相互交流的任何人或事都是角色。比如,某人使用系统中提供的用例,则该人事都是角色。比如,某人使用系统中提供的用例,则该人就是角色。就是角色。v 用例:用例是包括变量在内的一组动作序列的描述,系用例:用例是包括变量在内的一组动作序列的描述,系统执行这些动作,并产生传递特定参与者的价值的可观察统执行这些动作,并产生传递特定参与者的价值的可观察结果,其实用例就是参与者想要系统做的事情。结果,其实用例就是参与者想要系统做的事情。6789v1 1、任务介绍、任务介绍v2 2、任务分析、任务分析v3 3、任务实施、任务实施101、任务介绍、任务介绍112、任务分析、任务分析1

3、23、任务实施、任务实施133、任务实施、任务实施1415 三、编码实现三、编码实现16使用使用MyEclipseMyEclipse创建一个创建一个webweb项目,生成以下主要目录结构:项目,生成以下主要目录结构:-src-src (存放(存放javajava源代码目录)源代码目录)-WebRoot-WebRoot(WebWeb根目录)根目录)-WEB-INF-WEB-INF-web.xml-web.xml编辑编辑WEB-INF/web.xmlWEB-INF/web.xml定义应用程序入口:定义应用程序入口:因为本题需要实现列表和删除内容的功能,所以为其定义两因为本题需要实现列表和删除内容的

4、功能,所以为其定义两个个ServletServlet:ApproveListServlet:审批信息的列表显示;:审批信息的列表显示;ApproveDeleteServlet:审批信息信息的删除。:审批信息信息的删除。 并建立相应映射:并建立相应映射:17 ApproveListServlet com.servlet.ApproveListServlet ApproveListServlet /servlet/ApproveListServlet ApproveDeleteServlet com.servlet.ApproveDeleteServlet ApproveDeleteServlet

5、 /servlet/ApproveDeleteServlet 18在在src下建立下建立servlet目录存放控制层代码,新建目录存放控制层代码,新建ApproveListServlet.java和和ApproveDeleteServlet.java文件分别对应文件分别对应ApproveListServlet和和ApproveDeleteServlet这两个这两个Servlet。ApproveListServlet.javapublic class ApproveListServlet extends HttpServlet private ApproveService ApproveServ

6、ice;/声明业务逻声明业务逻辑层实例辑层实例19/处理处理HTTP GET请求请求public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException this.doPost(request, response);/POST和和GET方法提交都统一处理方法提交都统一处理/处理处理HTTP POST请求请求public void doPost(HttpServletRequest request, HttpServletResponse re

7、sponse) throws ServletException, IOException / 此处是实现列表显示代码此处是实现列表显示代码20根据规范,根据规范,Servlet必须继承必须继承javax.servlet.http.HttpServlet或实现或实现javax.servlet.Servlet接口,以上实现接口,以上实现doGet和和doPost方法,对请求进行处理。方法,对请求进行处理。控制层的作用就是获取数据和数据进行处理,再交给表控制层的作用就是获取数据和数据进行处理,再交给表示层,把数据展现出来。数据处理部分放在后面再来实示层,把数据展现出来。数据处理部分放在后面再来实现。

8、现。 ApproveDeleteServlet.java代码基本和代码基本和ApproveListServlet.java相同。相同。21根据数据库设计和面向对象设计,现总结了根据数据库设计和面向对象设计,现总结了Approve这个实这个实体对象来表示行政区划信息。用简单体对象来表示行政区划信息。用简单Java对象表示,建立对象表示,建立Approve.java存放在存放在src下的下的entity目录下,代码如下所示:目录下,代码如下所示:public class Approve private String mi_guid;/主键主键IDprivate String proj_guid;

9、/申报批次编号申报批次编号private String approve_symbol;/批复文号批复文号private String approve_time;/批复时间批复时间private String submit_time;/录入时间录入时间(以下(以下setter和和getter方法省略)方法省略)3、实体类、实体类22数据库访问层包括数据库访问层包括DAO(Data Access Objects,数据,数据访问对象)和其实现类,访问对象)和其实现类,DAO是一种面向对象的界面接口,是一种面向对象的界面接口,定义了数据列表、插入、更改、删除等操作方法,这里需定义了数据列表、插入、更改

10、、删除等操作方法,这里需要对要对Approve实体类的数据访问进行封装,所以建立实体类的数据访问进行封装,所以建立ApproveDao.java文件,存放于文件,存放于src下的下的dao目录目录下,代码如下:下,代码如下: 4、数据库访问层、数据库访问层23package com.dao;import java.util.List;import com.entity.Approve;/ 审批信息操作接口审批信息操作接口public interface ApproveDao / 添加审批信息添加审批信息boolean addApprove(Approve approve);/修改审批信息修改审

11、批信息boolean updateApprove(Approve approve);/ 删除审批信息删除审批信息boolean deleteApprove(String id);/ 查询所有的审批信息查询所有的审批信息List listApprove();/ 查询审批信息查询审批信息Approve findApprove(int id);24以上定义了所需接口,还需要具体实现这些方法的类,以上定义了所需接口,还需要具体实现这些方法的类,这些类同一目录下,以这些类同一目录下,以Impl为后缀进行区分,为为后缀进行区分,为ApproveDao创建实现类创建实现类ApproveDaoImpl.jav

12、a,代码,代码如下:如下:package dao;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import entity.Approve;25public class ApproveDaoImpl implements ApproveDao public boolean addApprove(Approve ap

13、prove) return false;public boolean deleteApprove(String id) String sql = delete from T_MINISTRY_APPROVE where MI_GUID=?;Connection con = null;PreparedStatement prst = null;con = DBConnection.getConnection();try prst = con.prepareStatement(sql);prst.setString(1, id);if(prst.executeUpdate()!=0) return

14、 true; catch (SQLException e) e.printStackTrace();return false;26public Approve findApprove(int id) return null;public List listApprove() List list = new ArrayList();String sql = select * from T_MINISTRY_APPROVE;Connection con = null;PreparedStatement prst = null;ResultSet rest = null;con = DBConnec

15、tion.getConnection();27try prst = con.prepareStatement(sql);rest = prst.executeQuery();while(rest.next() Approve approve = new Approve();approve.setMi_guid(rest.getString(mi_guid);approve.setProj_guid(rest.getString(proj_guid);approve.setApprove_symbol(rest.getString(approve_symbol);approve.setAppro

16、ve_time(rest.getString(approve_time);approve.setSubmit_time(rest.getString(submit_time);list.add(approve); catch (SQLException e) e.printStackTrace();return list;public boolean updateApprove(Approve approve) return false;28以上以上DB.ConnDB.Conn这个是获取数据库连接的类,创建与这个是获取数据库连接的类,创建与srcsrc下下DBDB目录的目录的Conn.java

17、Conn.java代码如下:代码如下: 29package com.dao;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;public class DBConnection private static final String DRIVER = com.microsoft.sqlserver.jdbc.SQLServerDriver;/SQLServ

18、er驱动类驱动类private static final String URL = jdbc:sqlserver:/localhost:1433; DatabaseName=LandDB;/连接串连接串private static final String USER = sa;/用户名用户名private static final String PWD = 123456;/密码密码private static Connection con;private static PreparedStatement prst;private static ResultSet rest;30static t

19、ry Class.forName(DRIVER); /加载加载SQL Server数据库数据库JDBC驱动驱动 catch (ClassNotFoundException e) e.printStackTrace();/打印异常打印异常/获取数据库连接实例获取数据库连接实例 public static Connection getConnection() try con = DriverManager.getConnection(URL,USER,PWD);/创建连接创建连接 catch (SQLException e) e.printStackTrace();/打印异常打印异常return

20、con;/返回连接返回连接这是个典型的单例模式,确保任何时候只有一个实例。这是个典型的单例模式,确保任何时候只有一个实例。31/关闭连接关闭连接public static void close() try if(rest!=null) rest.close();if(prst!=null) prst.close();if(con!=null) con.close(); catch (SQLException e) e.printStackTrace();/打印异常打印异常32本例,使用Service类作为业务逻辑层,该层将控制层和数据库访问层分隔,降低耦合。和数据库访问层一样,使用接口对方法进

21、行封装,接口类文件为: ApproveService.java代码如下:package service;import java.util.List;import entity.Approve;/审批信息服务接口public interface ApproveService / 添加审批信息boolean addApprove(Approve approve);/ 修改审批信息boolean updateApprove(Approve approve);/ 删除审批信息boolean deleteApprove(String id);/查询所有的审批信息List listApprove();/查

22、询审批信息Approve findApprove(int id);五、实现业务逻辑五、实现业务逻辑33以上定义了所需接口,还需要具体实现这些方法的类,这些类同一目录以上定义了所需接口,还需要具体实现这些方法的类,这些类同一目录下,以下,以Impl为后缀进行区分,为为后缀进行区分,为ApproveService创建实现类创建实现类ApproveServiceImpl.java,代码如下:,代码如下:/ 审批信息服务实现类审批信息服务实现类public class ApproveServiceImpl implements ApproveService private ApproveDao can

23、tonDao;public ApproveServiceImpl() cantonDao = new ApproveDaoImpl();34public boolean addApprove(Approve approve) return false;public boolean deleteApprove(String id) return cantonDao.deleteApprove(id);public Approve findApprove(int id) return null;public List listApprove() return cantonDao.listAppro

24、ve();public boolean updateApprove(Approve approve) return false;35回到控制层,现在可以通过业务逻辑层的回到控制层,现在可以通过业务逻辑层的Service类来实现列表显示和类来实现列表显示和添加项目的功能。添加项目的功能。1. 列表列表在在ApproveListServlet类的类的doPost 方法里加入以下代码:方法里加入以下代码:response.setContentType(text/html);PrintWriter out = response.getWriter();cantonService = new Appro

25、veServiceImpl();List list = cantonService.listApprove();request.setAttribute(list, list);request.getRequestDispatcher(./listApprove.jsp).forward(request, response);out.flush();out.close();5 5、控制层、控制层 362. 删除项目删除项目在在ApproveDeleteServlet.类的类的doPost 方法里加入以下代码:方法里加入以下代码:response.setContentType(text/html

26、);PrintWriter out = response.getWriter();String id = request.getParameter(id);System.out.println(id);cantonService = new ApproveServiceImpl();if(cantonService.deleteApprove(id) request.getRequestDispatcher(ApproveListServlet).forward(request, response); else System.out.println(fail);request.getReque

27、stDispatcher(./error.html).forward(request, response);out.flush();out.close();37为了对页面编码进行统一处理,将所有请求和回应页面都设成为了对页面编码进行统一处理,将所有请求和回应页面都设成GB2312编码,需在编码,需在WEB-INF/web.xml定义一个过滤器,所有请求上来都先经过过定义一个过滤器,所有请求上来都先经过过滤器处理:滤器处理: filter com.filter.CharSetFilter filter /* 6、过滤器过滤器38在在src下建立下建立filter目录存放过滤器代码,新建目录存放过

28、滤器代码,新建CharSetFilter.java,代码如下:,代码如下:/字符编码过滤器字符编码过滤器public class CharSetFilter implements Filterpublic void init(FilterConfig config) throws ServletException /执行执行Filterpublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException requ

29、est.setCharacterEncoding(gb2312);response.setCharacterEncoding(gb2312);chain.doFilter(request,response); /释放释放public void destroy() 39表现层表现层v 使用使用jspjsp作为表现层,存放于作为表现层,存放于WebRootWebRoot目录下目录下, ,v listApprovelistApprove.jsp.jsp用于电子审批信息的列表显示。用于电子审批信息的列表显示。407 7、部署及测试、部署及测试(一)、配置(一)、配置Tomcat服务及服务及JDK (二

30、)、(二)、 配置配置JDBC 连接数据库连接数据库1、下载JDBC驱动程序,把它解压到C:Program Files目录下。2、环境变量配置: 变量名:classpath(先前已有的,加在后面,用分号隔开) 变量值:C:Program FilesMicrosoft JDBC Driver 4.0 for SQL Serversqljdbc_4.0enusqljdbc4.jar3、把sqljdbc4.jar文件复制到C:Tomcat6.0lib目录4、启动SQLServer2005,设置用sa登录。启动,选中,把TCPIP设置为启动,端口号设为1433,然后重启数据库服务器。 5、拷贝C:Pr

31、ogram FilesMicrosoft JDBC Driver 4.0 for SQL Serversqljdbc_4.0enuauthx86目录下的文件sqljdbc_auth.dll到C:WINDOWSsystem32目录下(三)、附加数据库文件(三)、附加数据库文件411、测试方案及计划2、设计测试用例3、测试执行4、BUG记录5、测试总结报告(四)、测试(四)、测试42四、小结四、小结 本章主要介绍了电子审批管理系统中行政区划信息的本章主要介绍了电子审批管理系统中行政区划信息的列表显示及添加功能。整个软件实现是从实体类设计、数列表显示及添加功能。整个软件实现是从实体类设计、数据库访问层、业务逻辑层、控制层、表现层来实现的。另据库访问层、业务逻辑层、控制层、表现层来实现的。另外为了实现页面统一编码,在此加入了过滤器的功能。最外为了实现页面统一编码,在此加入了过滤器的功能。最后还简单地介绍了系统的部署配置及测试过程。后还简单地介绍了系统的部署配置及测试过程。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作计划

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com