【JavaWeb项目实现】+【常用框架】(待整理)

1. 开发必备工具:

1. Maven 

    Maven 核心功能就是合理叙述项目间的依赖关系,通过pom.xml配置jar包信息。一般使用三种方式:本地仓库、第三方仓库、中央仓库。

2. Svn/git

2. SSM:  Spring + SpringMVC + MyBatis

1、Spring是一个开源的Java/ Java EE全功能栈应用程序框架。轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。可通过AOP和log4j实现自定义日志系统。

①、基于JavaBeans 的采用控制反转的配置管理,使得应用程序的组建更加快捷简易。

②、一个可用于从applet到JavaEE不同运行环境的核心Bean工厂。

Spring:

 

依赖注入是一种思想,或者说是一种设计模式,在java中通过反射机制实现,与具体框架无关,依赖注入(DI)有三种方式:接口注入、Setter注入、构造方法注入。  

1. 依赖注入 是为了减少目的组件之间的 耦合度,使开发变得简单。

Spring: 基于xml文件配置

<!--配置事务管理器-->

 <Property name=”transactionManger”>

<!--配置事务属性>

   <Property name=”transactionAttributes”>

<Prosp>

声明式事务管理建立在AOP上,其本质是对方法前后进行拦截。在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚事务。

 优点:不需要通过编程的方式管理事务,只需要在配置文件中做相关的事务规则声明(或通过@Transactional注解方式将事务应用到逻辑中)。

 

3、SpringMVC:分离了控制器、模型对象、分派器以及程序对象的角色。易于其他的view框架,采用IoC便于测试。MVC作为WEB项目开发的核心环节,C(控制器)、V(视图、用户客户端)、M(模型、业务)。

  MVC的功能实现 图示:

 

 

DispatcherServlet 作为SpringMVC的前端控制器,负责接收用户请求并根据请求返回视图给用户,业务操作在service层。


4、MyBatis

MyBatis:是一个基于Java的持久层框架,支持定制化SQL、存储过程以及高级映射。避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XMl或注解来配置和映射原生信息,将接口和Java的POJOs(普通Java对象)映射成数据库中的记录。

MyBatis的功能:

 

 

5、Hibernate

Hibernate使用了Java反射机制实现透明性。

 

Hibernate鼓励使用双向一对多关联,不使用单向一对多关联。

优化Hibernate 的七大举措:

1)尽量使用many--to--one,避免使用单向one--to--many

2)灵活使用单向one--to--one

3)多对一代替一对一

4)配置对象缓存,不使用集合缓存

5)一对多使用Bag,多对一使用Set

6)继承使用显式多态HQL: from Object polymorphism=”exlicit” 避免查处所有对象

7)消除大表,使用二级缓存

 

Hibernate 中的Get和load的区别:

 1、get()采用立即加载方式,而load()采用延迟加载。

  get()方法,立即向数据库发出查询语句,而load()方法返回的是一个代理(只有id属性)只有真正使用属性时,才会执行查询。

1、如果数据库没有响应的记录,get()方法会返回null,而load()方法会抛出异常ObjectNotFoundException。

hibernate2 和 Hibernate3 的区别:

Hibernate2延迟加载实现:a)实体对象,b)集合(Collection)

Hibernate3提供了属性的延迟加载功能,只有真正使用时,才执行sql查询,节省了服务器的内存开销,从而提高了服务器的性能,它是一个基于JDBC的主流持久层框架,是一个优秀的ORM实现,它很大程度简化了DAO层的编码工作。

       


3、JavaWeb项目:

天猫商城项目梳理:

  整体的架构,springMVC的实现,三个重要的功能实现,三个主要的难点。


 



猜你喜欢

转载自blog.csdn.net/ca1m0921/article/details/80948760