JAVA开发:分享一些SpringMvc+Ibatis+spring的框架使用心得
近期不在做.net的项目,而是使用java作为开发语言,就想着要用springmvc开发了,由于前些年也用过struts1/2+hibernate/ibatis+spring开发过项目,因此是有些底子的。从网上看了些springmvc的介绍后,自己做了个demo。
这个demo会分几篇来介绍,今天先来说说最基础的框架搭建和数据交互、事务处理问题,接下来会整合easyui、bootstrap这些框架并展示分页、验证等效果,使这个demo更具实用性。
好了,下面开始进入正题,我们先创建个新项目,结构如下图:
文件结构已经说明了,那么我们就来讲讲配置的问题,关于实体类、DAO层和service层的创建,不在解释,贴图如下:
实体层:
DAO层:
Ibatis配置文件层:
Service层:
注意,此处使用到了注解功能,可以参考网上的解释。
接下来,我们说说controller层:
这个基类是为了封装一些常用操作的方法。
controller层:
注意,控制层尽量避免业务代码,为了使结构看起来尽可能的清晰。
我使用的数据库是Mysql,下面便是建表的sql语句:
数据库建好后,我们需要在项目中连接,配置如下:
jdbc配置文件:
接下来是比较重要的配置文件:
这两个配置文件我给出的注释比较详细。
之前在配置事务时,就遇到过无效的问题,究其原因就就在于:
springmvc的配置中,扫描controller但不要扫描service,
spring的配置中,不扫描controller。
因其加载顺序问题,会导致service的事务无效。
另外,还有web.xml配置:
前端页面就是form表单提交数据到controller层,在执行业务处理。列表页也是从controller层数据到数据后进行展示。
好了,今天就简单说到这里,下面附上两张前台页面的简单效果图:
好了,今天就说到这里吧,下次,我会整合easyui框架,再和大家分享,欢迎有兴趣的人加入交流。
这个demo的源码我也提供出来,可以自行修改优化,也可私下Q我交流共同进步
http://files.cnblogs.com/qq-602904354/springmvcDemo1.rar
http://files.cnblogs.com/qq-602904354/springmvcDemo1-lib.rar
http://files.cnblogs.com/qq-602904354/springmvcDemo1-lib2.rar
JAVA开发:分享一些SpringMvc+Ibatis+spring的框架使用心得的更多相关文章
- Java知识总结---整合SpringMVC+Mybatis+Spring(二)
在如今的Java Web开发过程中,各种各样框架层出不穷.在工作中,框架的使用也越来越频繁. 今天介绍一下如今比較流行的SpringMVC.Mybatis和Spring框架.学习一下怎样在项目中使用它 ...
- java开发两年,连Spring的依赖注入的方式都搞不清楚,你工作可能有点悬!
Spring依赖注入 常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的 ...
- Java开发学习(二十二)----Spring事务属性、事务传播行为
一.事务配置 上面这些属性都可以在@Transactional注解的参数上进行设置. readOnly:true只读事务,false读写事务,增删改要设为false,查询设为true. timeout ...
- 《阿里巴巴Java开发手册1.4.0》阅读总结与心得(五)
笔者作为一名有数年工作经验的Java程序员,仔细研读了这份手册,觉得其是一份不可多得的好材料.阿里巴巴在发布时所说,“阿里巴巴集团推出的<阿里巴巴Java开发手册(正式版)>是阿里巴巴近万 ...
- 《阿里巴巴Java开发手册1.4.0》阅读总结与心得(一)
前言 下面是阿里对<阿里巴巴 Java 开发手册>(下称<手册>)的介绍: 凝聚了阿里集团很多同学的知识智慧和经验,这些经验甚至是用血淋淋的故障换来的,希望前车之鉴,后车之师, ...
- Spring cloud 框架 --- Eureka 心得
spring boot 1.5.9.RELEASE spring cloud Dalston.SR1 1.前言 (1)接触了spring cloud 框架 ,首先要知道Eureka是什 ...
- Java开发工程师(Web方向) - 04.Spring框架 - 第1章.Spring概述
第1章.Spring概述 Spring概述 The Spring Framework is a lightweight solution and a potential one-stop-shop f ...
- Java开发工程师(Web方向) - 04.Spring框架 - 第2章.IoC容器
第2章.IoC容器 IoC容器概述 abstract: 介绍IoC和bean的用处和使用 IoC容器处于整个Spring框架中比较核心的位置:Core Container: Beans, Core, ...
- java开发两年,连Spring中bean的装配都不知道?你怎么涨薪啊
Spring 1.1.1.1 创建一个bean package com.zt.spring; public class MyBean { private String userName; privat ...
随机推荐
- Listener 监听器
Listener的定义与作用 监听器Listener就是在application,session,request三个对象创建.销毁或者往其中添加修改删除属性时自动执行代码的功能组件. Listener ...
- 文件频繁IO能有多大的差别
测试文件写同样大小的文件,单次记录较小和单次记录较大能有多大的性能差别. 最终写入同样大小的文件,小记录需要写入10w次,大记录需要写入1w次,看下最终的性能报告
- MFC拆分窗口及它们之间的数据交换(转)
转自:http://blog.csdn.net/nuptboyzhb/article/details/7455471 源代码:http://download.csdn.net/detail/nuptb ...
- DotNetZip封装类
DotnetZip是一个开源类库,支持.NET的任何语言,可很方便的创建,读取,和更新zip文件.而且还可以使用在.NETCompact Framework中. 下载地址在这里: http://d ...
- Oracle-11g 从表空间删除数据文件
从表空间删除数据文件前提条件 如果欲从表空间中删除数据文件,那么该数据文件必须为空,否则将报出"ORA-03262: the file is non-empty"的错误. 从表 ...
- Codeforces Round #332 (Div. 2) B. Spongebob and Joke 水题
B. Spongebob and Joke Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/599 ...
- 为joomla加入下拉菜单的方法
用 Joomla! 建站的大多数站长都须要在站点前台使用下拉菜单(dropdown menu),或者叫弹出菜单(slide menu),由于这样能够在有限的页面空间上公布很多其它的导航菜单,而且能够进 ...
- PACPerformance
https://github.com/kickfjq/android_packages_apps_PACPerformance
- web app页面要求
代码: <meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum- ...
- ios开发——实用技术篇Swift篇&视频
视频 // MARK: - 播放视频 /*----- 播放视频 ------*/ func moviePlayerPreloadFinish(notification:NSNotification) ...