JAVA从零学习(一)

本课程为本人公司内部培训课程,因个人技能、表达能力有限,如有描述错误或不清楚的地方欢迎大家指正。

本课主旨

本节课程主要目的为了解常用JAVA插件罗列,SpringMVC+Mybatis框架结构说明。如需了解开

发环境搭建

开发环境搭建此处不在赘述,有不明白的请移步:基于IDEA的JavaWeb开发环境搭建

JAVA常用插件清单(持续更新中)

JAVA是一款开源的开发语言,所以在JAVA的演化过程中,各个国家的各种大神都对JAVA青睐有佳。因这些大神的支持JAVA的第三方插件(库/JAR包)也层出不穷各式各样。在我们编写JAVA过程中也给我们带来了很大的便利,所以在做JAVA开发时适当了解一些常用的JAVA插件能大大的减少我们的开发量。下来是本人汇总的部分常用JAVA库/JAR包(持续更新,欢迎大家补充)

分类 插件名称 说明 备注
Spring org.springframework.* spring框架基础包  
权限 org.apache.shiro.* 用户身份权限公里工具 登录,请求等身份验证
通信 org.apache.cxf.* 可嵌入的Web服务组件 构建Web Service的首选类库
通信 com.sun.mail 电子邮件管理  
通信 Apache ActiveMQ 管道式1对1消息推送 类似WebService需部署ActiveMQ单独系统
通信 Motan 服务治理型框架(RPC框架) 新浪开源的一个RPC框架,可以看做是Dubbo的量身裁剪版
应用协调 ZooKeeper 分布式应用程序协调服务 配置维护、域名服务、分布式同步、组服务
日志 org.apache.logging.log4j 系统日志管理  
数据库 mysql-connector-java.5.1.7-bin MYSQL数据库操作 Tomcat/lib/文件需添加
数据库 org.mybatis.* Mybatis框架基础包  
数据库 org.hibernate.* hibernate数据库操作基础包  
工作流 org.activiti.* activiti工作流引擎基础包 支持可视化流程模版绘制
常用类型 xml-apis XML解析操作工具类  
常用类型 org.freemarker 文本替换绑定类似JSP(${}) 常用公告绑定,文件内容自动生成,需FTL格式模版支持
其他 org.apache.poi.* Microsoft Office格式档案读和写  
其他 org.apache.commons.* JAVA组建库 可重用工具类库

SpringMVC、Mybatis

  • spring MVC
    • 理解:Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。
    • 框架:通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术、Velocity、Tiles、iText和POI。Spring MVC 框架并不知道使用的视图,所以不会强迫开发者只使用 JSP 技术。Spring MVC 分离了控制器、模型对象、过滤器以及处理程序对象的角色,这种分离让它们更容易进行定制。
    • 优点:Lifecycle for overriding binding,validation,etc,易于同其它View框架(Tiles等)无缝集成,采用IOC便于测试。它是一个典型的教科书式的mvc构架,而不像struts等都是变种或者不是完全基于mvc系统的框架,对于初学者或者想了解mvc的人来说我觉得spring是最好的,它的实现就是教科书!第二它和tapestry一样是一个纯正的servlet系统,这也是它和tapestry相比struts所具有的优势。而且框架本身有代码,看起来容易理解。
  • Mybatis
    • 理解:MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation迁移到了googlecode,并且改名为MyBatis。2013年11月迁移到Github。iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)
    • 基本信息:MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。
    • 特点
      • 简单易学:本身就很小且简单。没有任何第三方依赖,最简单安装只要两个jar文件+配置几个sql映射文件易于学习,易于使用,通过文档和源代码,可以比较完全的掌握它的设计思路和实现。
      • 灵活:mybatis不会对应用程序或者数据库的现有设计强加任何影响。 sql写在xml里,便于统一管理和优化。通过sql基本上可以实现我们不使用数据访问框架可以实现的所有功能,或许更多。
      • 解除sql与程序代码的耦合:通过提供DAL层,将业务逻辑和数据访问逻辑分离,使系统的设计更清晰,更易维护,更易单元测试。sql和代码的分离,提高了可维护性。
      • 提供映射标签,支持对象与数据库的orm字段关系映射
      • 提供对象关系映射标签,支持对象关系组建维护
      • 提供xml标签,支持编写动态sql。
    • 总体流程
      • 加载配置并初始化
        • 触发条件:加载配置文件
        • 处理过程:将SQL的配置信息加载成为一个个MappedStatement对象(包括了传入参数映射配置、执行的SQL语句、结果映射配置),存储在内存中。
      • 接收调用请求
        • 触发条件:调用Mybatis提供的API
        • 传入参数:为SQL的ID和传入参数对象
        • 处理过程:将请求传递给下层的请求处理层进行处理。
      • 处理操作请求
        • 触发条件:API接口层传递请求过来
        • 传入参数:为SQL的ID和传入参数对象
        • 处理过程:
          • (A)根据SQL的ID查找对应的MappedStatement对象。
          • (B)根据传入参数对象解析MappedStatement对象,得到最终要执行的SQL和执行传入参数。
          • (C)获取数据库连接,根据得到的最终SQL语句和执行传入参数到数据库执行,并得到执行结果。
          • (D)根据MappedStatement对象中的结果映射配置对得到的执行结果进行转换处理,并得到最终的处理结果。
          • (E)释放连接资源。
        • 返回处理结果将最终的处理结果返回。

SpringMVC+Mybatis项目目录结构图(个人整理转载注明出处)

JAVA从零学习(一)以上就是第一节课的内容,主要是SpringMVC+Mybatis项目目录结构组成。如果图片无法查看全请点击或者直接跳转连接:https://img-blog.csdn.net/20180131141048226?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzM1Nzg4MzM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast 请大家关注下一课。

本文由Codeyi原创(包括图文)转载请注明出处