SSM基础框架搭建
SSM(Spring + SpringMVC + MyBatis)三个开源框架的简称,是WEB项目开发的不二之选,是码农进阶全栈工程师心路历程上的驿站。大公司开源框架和算法制定标准规范引领行业趋势,小公司拿来主义面向业务敏捷开发快速迭代在夹缝中艰难生存。SSM框架完美的符合了当下的这种行业现状,对于底层是如何实现的开发人员完全不必关注,踏踏实实梳理好业务逻辑,做好质量把控年底KPI基本问题就不大了。
Spring是一个轻量级IoC及AOP容器框架,配置又多又细,SpringBoot简化了大量通用且不常用的配置项,使构建一个微服务变得超简单;SpringMVC是目前最优秀的MVC框架,注解用得好事半功倍;MyBatis用于数据持久化,MyBatisPlus增强版内置分页功能简化开发流程自动化代码生成,唯一要做的事情就剩下写写SQL了。
无私的分享从这里开始: git clone git@gitee.com:gonglibin/kirin.git
kirin/src/main/java/com/kirin/web/server/KrnApplication.java
1行@SpringBootApplication表示该对象为当前应用的启动类;
2行@ImportResource表示引入配置文件资源读取解析及加载;
8行启动,就这么简单~~~
kirin/src/main/java/com/kirin/web/server/ KrnMvcConfig.java
KrnMvcConfig类继承自WebMvcConfigurerAdapter抽象类(该类实现了WebMvcConfigurer接口方法为空并交给子类去实现);
1行@Configuration表示希望Spring将该类作为配置项资源;
6行实现静态资源处理;
11行向资源中添加拦截器;
kirin/src/main/java/com/kirin/web/server/ KrnInterceptor.java
KrnInterceptor类继承自HandlerInterceptor接口,接口定义了三个方法,分别对应在不同的阶段启动拦截事件,详情见注释,preHandle方法为演示,当HTTP请求不为GET时返回报错信息。
kirin/src/main/java/com/kirin/api/controller/KrnStatisticAdownerController.java
1行@RestController (@ResponseBody + @Controller),表示将返回结果按照response的type直接写到HTTP的response body中去,且该类是一个控制器;
2行@RequestMapping表示将请求路径映射到的类上;
5行注入KrnStatisticAdownerService资源;
8行@RequestMapping表示将多级路径映射到该类的具体方法上;
kirin/src/main/java/com/kirin/dao/entity/StatisticAdowner.java
1行表示该类映射自哪张表,并将表结构映射成对象的成员变量;
6行@TableId为主键;
11行@TableField("sad_viewAccount")为表字段名;
需要说明的一点是数据表到类声明的自动化生成最好遵循一定的命名规则否则后果很严重;
kirin/src/main/java/com/kirin/dao/service/KrnStatisticAdownerService.java
自定义KrnStatisticAdownerService接口继承自IService接口,其中定义了大量常用的增删改查的方法,基本涵盖了常用的数据库操作,自定义接口中的方法在控制器中被当作资源注入并调用。
kirin/src/main/java/com/kirin/dao/ impl/KrnStatisticAdownerServiceImpl.java
KrnStatisticAdownerServiceImpl类是KrnStatisticAdownerService接口的实现对象,它同时继承自ServiceImpl类,该类是IService接口中方法的具体实现。
4行注入KrnStatisticAdownerMapper资源;
7行覆盖KrnStatisticAdownerService接口中的方法;
kirin/src/main/java/com/kirin/dao/ mapper/KrnStatisticAdownerMapper.java
2行调用具体实现,建议在XML配置中书写SQL,好维护好管理逻辑清晰方便编辑修改;
kirin/src/main/resources/xml/StatisticAdowner.xml
select块部分是需要开发者实现的,把调试好的SQL复制到这里就OK了。
SSM框架设计的异常出色,使用起来异常便利,不过坑很多,踩一个少一个,都踩遍了工作起来就会变得很轻松,但是也会很乏味,剩下的事情全是面对不断的需求变更、业务调整和功能扩展,在日复一日的重复中慢慢老去~~~

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
C#与JAVA线程间同步实现比较
C#与JAVA二者是对标下的产物,无论设计思想还是语法格式都非常相似,相恨相杀一路走来各自拥有一群拥趸,思想理念都传承自面向对象的C++,不过要说血缘关系还是C#更近一些,保留了比较多的C++的影子让人多了几分熟悉的味道,IDE上VS也比MyEclipse用户体验好很多,不用idea去比明显偏心眼VS,好吧你说对了。 C#和C++都提供了良好完备的线程间同步机制,C#保留了更多的C++烙印,JAVA则干练的多让开发者省心不少。过去在面向过程的编程思路上,锁的操作基本都是基于语句的,锁的范围从加锁开始到解锁终止,代码编写的过程中各种小心锁区间的逻辑处理,一个异常就可能导致万劫不复的死锁。C#和JAVA把更多面向底层的锁操作封装起来,通过赋予对象实例一个修饰词的方法,极大的简化了步骤,当然也可以对语句块加锁,省略了显式的繁琐操作。 C# JAVA C++ 获取 Monitor.Enter(object); Monitor.TryEnter(object); 休眠 Monitor.Wait(object); final void wait(); pthread_cond_wait(_cond...
- 下一篇
Go语言学习重点
近年来多核化和集群化正在成为了互联网时代发展的典型特征,Go语言的设计者们宣称对C、C++、java、C#、Delphi,乃至于PHP、Python、Perl、Ruby等语言感到深深的沮丧,他们要创造一门新的编程语言来满足分布式和并行计算的要求,事实也证明现在国内许多互联网公司在编写大并发高效处理的服务业务首选Go作为开发语言。对于C、C++、java和C#开发工程师来说,学习Go会非常轻松,特别是抓住下面的知识点,上手是分分钟的事情。 并发编程模型分为两个流派:共享内存流派和消息传递流派,gotoutine和channel构成go语言的基础,虽然go语言支持共享内存,但还是忘记它吧,只有channel才能把gotoutine的性能发挥到极致; go语言是强制统一代码风格的编程语言,首字母大写的变量、函数和方法等同于公有属性为包外可见,否则为对象私有包外不可见,变量函数命名规则主流有骆驼命名法(JAVA和C#)和下划线法(C),强烈建议骆驼法,左花括号必须位于行尾否则编译不给过,如果不能改变就不要吐槽go的编码风格; go语言支持函数多返回值,如:f, err := os.Open(f...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8编译安装MySQL8.0.19