Excel不相邻列如何打印在一起-英雄云拓展知识分享
141
2023-10-25
【摘要】 本书摘自《Java+EE应用开发实践教程》一书中第4章,第2节,由涂祥著。
实验十三
三、实验步骤
实验将整合 Spring、Spring MVC和 MyBatis框架开发Web 数据库访问应用。将使 用Spring MVC框架实现Web 项目的整体开发;通过 Spring AOP实现项目的日志管 理;运用Spring MVC的拦截器编程实现用户登陆验证;通过MyBatis框架实现数据持久 层的操作;通过Ajax实现页面输入验证;通过 Spring AOP+ Log4j2 编程实现日志操作;通 过SiteMesh框架实现网页布局和修饰。实验中所有文件的完整代码收录在附录中。
1.新建一个 Web 工程,搭建开发环境。
(1)下载工程需要的相关开发包。通过互联网分别获取支持这3个框架的相关开发 包。之前的实验已说明获取相应开发包的方式,这里不再赘述。本实验需要的开发包见 表13-1。
(2)在Eclipse中,新建一个Web 工程 pl3,在工程中导入之前准备好的开发jar包 到项目的 WEB-INF/lib 目录下。
2.创建数据库,并根据数据表抽象实体类。之后,这里创建的实体类和数据表将通 过MyBatis 框架构建ORM (对象关系映射)。
(1)这里采用之前实验所使用的 edu db 数据库,将使用其中的表 edu user 和 表edu stu,其创建过程不再赘述。
(2)根据数据表创建实体类。新建 cn.hbmy.p13.entity包,在包中创建 Student 和 User类,分别对应表 edu user和表 edu stu。在实验八中使用 Eclipse的 MyBatis 插件 实现了根据配置文件自动生成实体类,这里通过自定义完成实体类的创建。
3.通过Spring MVC框架实现流程控制逻辑、业务逻辑和数据访问逻辑的分离,通 过MyBatis 框架实现 DAO 数据访问,同时在业务层使用 MyBatis 的分页插件 PageHelper实现分页查询。
(1)通过MyBatis 框架创建DAO 数据访问层。新建 cn.hbmy. p13.mapper包,在 包中创建 StudentMapper 接口和 UserMapper 接口,分别用于封装不同数据对象的所有 原子操作。继续在该包下新建 StudentMapper.xml 和 UserMapper. xml 映射文件, Mapper 映射文件是对接口的具体实现,是 MyBatis 框架的核心内容。在映射文件中通底层访问逻辑,关于 MyBatis框架的配置将在后面详述。这种方式与 Struts实验中的 DAO 层的实现方式不同,需要读者认真体会。
(2)创建 Service 业务逻辑层。新建 cn. hbmy. p13.service 包,在包中创建 IStudentService 接口和IUserService 接口,以及StudentService和 UserService 这2个相 应的接口实现类。 Service层和 Struts实验中意义相同,都是用于封装业务逻辑,然后在 业务逻辑 Service 中调用DAO 层,从而实现了业务逻辑和数据访问逻辑的解耦。
注意,在Service层使用分页插件,实现分页查询的业务逻辑。要使用该插件需要导 入插件工具包,实验中使用的是 pagehelper-5.1.3.jar 和 pager—taglib.jar。然后在分 页查询的方法中使用工具包中封装的Pagelnfo类,帮助完成分页查询功能。
(3)创建 Controller 控制层。新建 cn.hbmy. pl3. controller 包,在包中创建 IndexController、UserController和 StudentController等3个控制器。分别用于处理访 问页面的请求、访问用户操作的请求和访问学生信息操作的请求。由于本工程中将所
有JSP 页面放置于WEB-INF 目录下,因此希望通过 IndexController控制器来控制对JSP页面的访问;通过 UserController控制器响应对用户操作的请求,比如登录、注册、 修改用户密码等;通过 StudentController控制器响应对学生信息操作的请求,比如“增 删改查”等操作请求。并且,在UserController和 StudentController中,实现了对前端基 于Ajax的访问请求处理,对于这些请求通过返回Json对象数据给予前端响应。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~