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 ...
随机推荐
- dll开发中遇到的问题
刚碰到个问题,我的一个项目中引用了一个dll,这个dll又引用了另一个dll,我把这俩个都放在bin文件夹下,但是会报错,说第二个dll找不到.把它放到系统文件夹system32下就没事了. 但是遇到 ...
- ajax 传参 乱码问题
http://blog.csdn.net/yiyuhanmeng/article/details/7548505 开发一直用firfox网页,调试什么的都很方便.所以遇到了浏览器之间的兼容问题.url ...
- I/O流的学习
一.I/O流 1.判定是输入还是输出我们应该站在程序的立场: 2.判断传输的是字节还是字符,从而决定管道的大小,字节传递是根本,可以传递所有的数据类型,字符传递专门用来传递文本数据,字节主要用来传递二 ...
- Flex “跑马灯”效果(自定义“跑马灯”控件)
自定义类(BroadCastMarquee.as): package marquee { import flash.events.MouseEvent; import flash.events.Tim ...
- PostgreSQL的 initdb 源代码分析之十六
继续分析 setup_description(); 展开后: 就是要把 share/postgres.description 文件的内容读入到 pg_description 和 pg_shdescri ...
- iOS UIButton EdgeInsets
说一下系统的button,image 和 title的位置关系 默认image 和 title的位置关系: 随便画了草图,有点丑,不过不妨碍理解: 第一种:在button上只设置文字,这个时候,but ...
- [ALGO-3] K好数
算法训练 K好数 时间限制:1.0s 内存限制:256.0MB 问题描写叙述 假设一个自然数N的K进制表示中随意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数.求L位K进制数中K好数 ...
- Base64 图片转换工具
以前在写asp的后台的时候,有一个上传功能是必须的,那时候进行的图片预览(未上传前)其实就是获取本地的图片路径来显示图片,但是随着HTML5的出现,可以把图片通过编码来实现预览. 在雅虎的36条速度优 ...
- androisd wifi
http://blog.csdn.net/yunjinwang/article/details/11968837 http://blog.csdn.net/yunjinwang/article/det ...
- C加密解密
/********************************************************* * des.h * 用户使用des算法头文件 * **************** ...