221旅游网

编译器:IntelliJ IDEA 2018.3.5

数据库管理系统:mysql

服务器:tomcat9

数据库可视化界面:sqlyog

代码管理工具:svn

项目管理工具:maven

(2)新建maven项目

221旅游网

并在pom.xml配置文件中导入基本的依赖,后续在使用的过程中导入其他的依赖。

(3)添加项目到svn

在服务器端新建一个仓库,并将IDEA中新建的项目进行提交

221旅游网

 (4)配置spring

annotation.xml:扫描注解,只扫描service层的注解,dao层由mybatis管理,controller层由springmvc管理

jdbc.xml:读取jdbc的配置文件的数据,获取dataSource

jdbc.properties:jdbc的配置文件

property.xml:读取jdbc配置,这样配置的好处是list中可以配置多个配置文件的读取

transation.xml:配置事务、开启事务注解

mybatis.xml:扫描dao层的注解、获取sessionFactory

application-context.xml:引入以上关于spring的配置文件

(5)springmvc

springmvc-back.xml:扫描controller层的包、视图解析器(后台)、配置springmvc支持上传图片

springmvc-front.xml:扫描controller层的包、视图解析器(前台)

web.xml:配置springmvc的前端控制器、引入spring的核心配置文件、spring的监听器、处理中文乱码的过滤器

 

二、后台

1、景点分类信息

(1)显示全部类别

  显示全部的分类信息实际上是一个带有条件的分页查询,条件为类别的名称,分页的参数为起始行和每一页的大小。

  在dao层需要执行一个带有条件的分页查询获取符合条件的分类的信息,还需要获取分类的总记录数将获取到的数据作为service层pagination的参数,pagination还需要页号、每页数作为参数

  在service层pagination获取到以上三个参数后就创建成功了,然后将查询到的分类数据写入到pagination对象中。

在controller层会将页面提交的条件:页号和分类的名称封装到分类对象里面作为参数传递到service层,并获取到pagination对象,将路径和参数作为pagination的参数

  页面中直接遍历pagination,进行分页显示;遍历pagination里面的list(分类信息),将分类信息显示在页面上

(2)图片上传

  配置springmvc支持上传图片

  搭建图片服务器,也就是说需要一台专门存储上传的图片的服务器:https://www.cnblogs.com/zhai1997/p/13337064.html,在服务器的webapp目录下创建文件夹作为图片存储的根目录

  图片的上传采用的是Jersey(需要导包),利用该框架上传图片需要该图片的完整路径

  由于需要避免图片的重名,采用当前时间加随机数拼接的方式来生成图片名称,将名称与获取到的扩展名、服务器地址和存储图片的目录进行拼接即可得到图片的完整路径

  在页面的input标签内将name属性定义为pic,controller层获取到该属性,可以根据pic获取图片的后缀

  提交图片是用的jQuery Form插件,它是一个优秀的Ajax表单插件,可以非常容易地、无侵入地升级HTML表单以支持Ajax。将图片提交到controller后,通过回调函数获取到图片的全路径和图片在服务器内部的地址(改地址将被存储到数据库),将图片的全路径赋给src属性进行图片的显示,图片在服务器的地址写在隐藏域。

(3)添加景区分类

  在controller层获取到表单数据,最终执行insert语句将数据持久化到数据库。然后重定向到分类显示页面显示分类信息

(4)删除一个分类

  删除的时候需要携带被删除的分类的id(用于确定分类并删除),分类的名称(运用jq获取到输入框中分类的名称)两个参数。将参数传递到controller层,分类名在重定向之后会重新显示到页面上,id则最终被传递到dao层根据id删除分类

(5)删除多个分类

  要先实现多选的复选框,保证一次可以选中多个要删除的分类信息

  删除的时候用到提交图片是用的jQuery Form插件,要确保要删除的元素在form表单内部。在提交的时候被选中的复选框的值(值是分类的id)将被提交到controller,并将分类的名称作为参数携带到controller层,分类名不为空的时候要进行回显,将被选中的分类的id作为参数最终传递到dao层,在dao层采用foreach标签取出数组中的数据

(6)修改

分为两步:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyzxjz.html